diff options
| author | Joe Carstairs <me@joeac.net> | 2024-11-17 09:23:28 +0000 |
|---|---|---|
| committer | Joe Carstairs <me@joeac.net> | 2024-11-17 09:23:28 +0000 |
| commit | 1ae19eb3315c40e3f9062592c27fa76c11cf626c (patch) | |
| tree | 09d9ce380795971f4b50e1d4b0ca3c57c9e1db1a /backend/app/src/routes/account.rs | |
| parent | 1a494937021561595d0fb29e26fb707aef9e55de (diff) | |
Renames workspace folder
Diffstat (limited to 'backend/app/src/routes/account.rs')
| -rw-r--r-- | backend/app/src/routes/account.rs | 50 |
1 files changed, 0 insertions, 50 deletions
diff --git a/backend/app/src/routes/account.rs b/backend/app/src/routes/account.rs deleted file mode 100644 index 96f1f38..0000000 --- a/backend/app/src/routes/account.rs +++ /dev/null @@ -1,50 +0,0 @@ -use budgeting_app_core::{ - models::account::Account, - queries::accounts::{get_all_accounts as get_all_accounts_query, insert_accounts}, -}; -use rocket::http::Status; -use rocket::serde::json::Json; -use rocket::{get, post, Responder}; - -use crate::databases::UserDataDb; - -#[get("/account")] -pub async fn get_all_accounts(user_data_db: UserDataDb) -> Result<Json<Vec<Account>>, (Status, String)> { - user_data_db - .run(get_all_accounts_query) - .await - .map(Json) - .map_err(|err| (Status::InternalServerError, err.to_string())) -} - -#[derive(Responder)] -pub enum CreateAccountResponder { - #[response(status = 500, content_type = "text")] - InternalServerError(String), - - #[response(status = 202, content_type = "json")] - Created(Json<Account>), - - #[response(status = 400, content_type = "text")] - BadRequest(String), -} - -#[post("/account", data = "<account>", format = "json")] -pub async fn create_account( - account: Json<Account>, - user_data_db: UserDataDb, -) -> CreateAccountResponder { - let account = account.into_inner(); - let accounts_vec = vec![account.clone()]; - - let num_rows_inserted = user_data_db - .run(move |connection| insert_accounts(&accounts_vec, connection)) - .await; - - match num_rows_inserted { - Ok(_) => CreateAccountResponder::Created(Json(account)), - Err(err) => CreateAccountResponder::InternalServerError(format!( - "Error creating account: {err}" - )), - } -} |
