/*
* This file is part of laurelin/api
* Copyright (C) 2023 Jonni Liljamo <jonni@liljamo.com>
*
* Licensed under GPL-3.0-only.
* See LICENSE for licensing information.
*/
use chrono::NaiveDateTime;
use diesel::{Insertable, Queryable};
use serde::{Deserialize, Serialize};
use uuid::Uuid;
use crate::schema::users;
#[derive(Serialize, Queryable)]
pub(crate) struct User {
pub id: Uuid,
pub created_at: NaiveDateTime,
pub updated_at: NaiveDateTime,
pub username: String,
pub email: String,
#[allow(dead_code)]
#[serde(skip_serializing)]
pub password: String,
}
#[derive(Deserialize, Insertable)]
#[diesel(table_name=users)]
pub(crate) struct InsertableUser {
pub username: String,
pub email: String,
pub password: String,
}