38 lines
836 B
Rust
38 lines
836 B
Rust
use chrono::prelude::*;
|
|
use diesel::prelude::*;
|
|
use uuidv7::Uuid;
|
|
|
|
use crate::db::schema;
|
|
|
|
#[derive(Identifiable, Queryable, Debug)]
|
|
#[diesel(table_name = schema::users)]
|
|
pub struct User {
|
|
pub id: Uuid,
|
|
pub name: String,
|
|
pub created_at: DateTime<Utc>,
|
|
pub updated_at: Option<DateTime<Utc>>,
|
|
}
|
|
|
|
#[derive(Insertable, Debug)]
|
|
#[diesel(table_name = schema::users)]
|
|
pub struct NewUser<'a> {
|
|
pub name: &'a str,
|
|
}
|
|
|
|
#[derive(Identifiable, Queryable, Debug)]
|
|
#[diesel(table_name = schema::repositories)]
|
|
pub struct Repository {
|
|
pub id: Uuid,
|
|
pub user_id: Uuid,
|
|
pub name: String,
|
|
pub created_at: DateTime<Utc>,
|
|
pub updated_at: Option<DateTime<Utc>>,
|
|
}
|
|
|
|
#[derive(Insertable, Debug)]
|
|
#[diesel(table_name = schema::repositories)]
|
|
pub struct NewRepository<'a> {
|
|
pub user_id: Uuid,
|
|
pub name: &'a str,
|
|
}
|