algohub_server/models/
category.rs

1use crate::models::UserRecordId;
2use serde::{Deserialize, Serialize};
3use surrealdb::sql::Thing;
4
5#[derive(Debug, Clone, Serialize, Deserialize)]
6pub struct Category {
7    pub id: Option<Thing>,
8    pub owner: Thing,
9    pub name: String,
10
11    pub created_at: chrono::NaiveDateTime,
12    pub updated_at: chrono::NaiveDateTime,
13}
14
15#[derive(Debug, Clone, Serialize, Deserialize)]
16#[serde(crate = "rocket::serde")]
17pub struct CategoryData<'c> {
18    pub name: &'c str,
19    pub owner: UserRecordId,
20}
21
22#[derive(Serialize, Deserialize)]
23#[serde(crate = "rocket::serde")]
24pub struct CreateCategory<'r> {
25    pub id: &'r str,
26    pub token: &'r str,
27
28    pub data: CategoryData<'r>,
29}
30
31#[derive(Serialize, Deserialize)]
32pub struct ListCategories {
33    pub owner: UserRecordId,
34}