Skip to content

Commit 36509d1

Browse files
author
zhixiong.zhu
committed
feat: move insert_access_token fn to admin_access_token_provider.rs
1 parent d03d0e3 commit 36509d1

File tree

2 files changed

+13
-12
lines changed

2 files changed

+13
-12
lines changed

src/controller/backend/index.rs

Lines changed: 2 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -46,17 +46,6 @@ fn passwd_hash(p: &str, s: &str) -> String {
4646
format!("{:x}", md5::compute((without_salt_hash + s).as_str()))
4747
}
4848

49-
fn insert_access_token(access_token: &str, admin_id: i32, connection: &MysqlDatabase) -> bool {
50-
let record = InsertableAdminAccessToken {
51-
admin_id: admin_id,
52-
access_token: access_token,
53-
};
54-
let result = diesel::insert_into(admin_access_token::table)
55-
.values(&record)
56-
.execute(&connection.0);
57-
true
58-
}
59-
6049
#[post("/admin/login", format = "application/json", data = "<admin_login>")]
6150
pub fn login(admin_login: Json<AdminLogin>, connection: MysqlDatabase) -> Result<Json<BaseResponse<AdminToken>>, Error> {
6251
let admin_record = admin_provider::get_by_name(&admin_login.name, &connection);
@@ -68,7 +57,8 @@ pub fn login(admin_login: Json<AdminLogin>, connection: MysqlDatabase) -> Result
6857
.sample_iter(&Alphanumeric)
6958
.take(32)
7059
.collect();
71-
insert_access_token(&rand_string, admin_record.id, &connection);
60+
admin_access_token_provider::insert_access_token(&rand_string, admin_record.id, &connection);
61+
let last_id = last_insert_id(&connection);
7262
let admin_token = AdminToken {
7363
token: rand_string,
7464
};

src/provider/admin_access_token_provider.rs

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,14 @@ pub fn get(id: i32, connection: MysqlDatabase) -> QueryResult<AdminAccessToken>
1212
pub fn get_by_access_token(access_token: &str, connection: MysqlDatabase) -> QueryResult<AdminAccessToken> {
1313
admin_access_token::table.filter(admin_access_token::dsl::access_token.eq(access_token)).first(&(connection.0))
1414
}
15+
16+
pub fn insert_access_token(access_token: &str, admin_id: i32, connection: &MysqlDatabase) -> bool {
17+
let record = InsertableAdminAccessToken {
18+
admin_id: admin_id,
19+
access_token: access_token,
20+
};
21+
let result = diesel::insert_into(admin_access_token::table)
22+
.values(&record)
23+
.execute(&connection.0);
24+
true
25+
}

0 commit comments

Comments
 (0)