/* * This file is part of laurelin/api * Copyright (C) 2023 Jonni Liljamo * * 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::actions; #[derive(Serialize, Queryable)] pub(crate) struct Action { pub id: Uuid, pub created_at: NaiveDateTime, pub updated_at: NaiveDateTime, pub game_data_id: Uuid, pub invoker: Uuid, pub data: serde_json::Value, pub timestamp: NaiveDateTime, } #[derive(Deserialize, Insertable)] #[diesel(table_name=actions)] pub(crate) struct InsertableAction { pub game_data_id: Uuid, pub invoker: Uuid, pub data: serde_json::Value, pub timestamp: NaiveDateTime, }