summaryrefslogtreecommitdiff
path: root/rust/schist_backend/src/routes/category.rs
blob: 1f07452e06cce392267de1b97cca36c9d958d04a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use schist_core::{
    models::category::Category,
    queries::categories::get_all_categories as get_all_categories_query,
};
use rocket::get;
use rocket::http::Status;
use rocket::serde::json::Json;

use crate::databases::UserDataDb;

#[get("/category")]
pub async fn get_all_categories(user_data_db: UserDataDb) -> Result<Json<Vec<Category>>, Status> {
    user_data_db
        .run(get_all_categories_query)
        .await
        .map(Json)
        .map_err(|_| Status { code: 500 })
}