From 833cac68c1bbf7dd6680d07406495d57a2706acc Mon Sep 17 00:00:00 2001 From: Tolmachev Igor Date: Wed, 24 Sep 2025 11:59:48 +0300 Subject: Move Account model into a separate module --- src/routers/account.rs | 49 ++++++------------------------------------------- 1 file changed, 6 insertions(+), 43 deletions(-) (limited to 'src/routers') diff --git a/src/routers/account.rs b/src/routers/account.rs index 4aaa56a..bb1cde5 100644 --- a/src/routers/account.rs +++ b/src/routers/account.rs @@ -13,23 +13,11 @@ use crate::{ ApiResult, AppState, ClientError, GlobalResponses, JwtClaims, ServerError, SuccessResponse, create_jwt, create_password, extract::{ApiJson, Auth}, + models::Account, tags::ACCOUNT, validate_password, }; -#[derive(Serialize, ToSchema)] -#[schema(description = "Account information")] -struct Account { - #[schema(examples(1))] - id: i64, - #[schema(examples("john_doe", "ivanov_ivan"))] - username: String, - #[schema(examples("John", "Иван"))] - first_name: String, - #[schema(examples("Doe", "Иванов"))] - last_name: String, -} - #[derive(Serialize, ToSchema)] #[schema(description = "Authorization token information")] struct Token { @@ -120,12 +108,7 @@ struct DeleteUserRequest { security(("auth" = [])), )] async fn me(Auth(user): Auth) -> ApiResult { - return Ok(SuccessResponse::ok(Account { - id: user.id, - username: user.username, - first_name: user.first_name, - last_name: user.last_name, - })); + return Ok(SuccessResponse::ok(user.into())); } #[utoipa::path( @@ -170,12 +153,7 @@ async fn register( .insert(&state.db) .await?; - Ok(SuccessResponse::ok(Account { - id: user.id, - username: user.username, - first_name: user.first_name, - last_name: user.last_name, - })) + Ok(SuccessResponse::ok(user.into())) } #[utoipa::path( @@ -250,12 +228,7 @@ async fn change_password( active_user.password_issue_date = Set(Utc::now().naive_utc()); let user = active_user.update(&state.db).await?; - Ok(SuccessResponse::ok(Account { - id: user.id, - username: user.username, - first_name: user.first_name, - last_name: user.last_name, - })) + Ok(SuccessResponse::ok(user.into())) } #[utoipa::path( @@ -295,12 +268,7 @@ async fn change_username( active_user.username = Set(req.new_username); let user = active_user.update(&state.db).await?; - Ok(SuccessResponse::ok(Account { - id: user.id, - username: user.username, - first_name: user.first_name, - last_name: user.last_name, - })) + Ok(SuccessResponse::ok(user.into())) } #[utoipa::path( @@ -368,12 +336,7 @@ async fn delete( user.clone().delete(&state.db).await?; - Ok(SuccessResponse::ok(Account { - id: user.id, - username: user.username, - first_name: user.first_name, - last_name: user.last_name, - })) + Ok(SuccessResponse::ok(user.into())) } pub fn router() -> OpenApiRouter { -- cgit v1.2.3