diff --git a/src/domain/chat_room.rs b/src/domain/chat_room.rs index e76dc84..46c0f52 100644 --- a/src/domain/chat_room.rs +++ b/src/domain/chat_room.rs @@ -12,3 +12,9 @@ pub struct ChatRoom { #[serde(rename = "lastUpdated")] pub last_updated: DateTime, } + +impl ChatRoom { + pub fn new(title: String, owner_id: u32) -> Self { + Self { id: 0, title, owner_id, time_created: Utc::now(), last_updated: Utc::now() } + } +} \ No newline at end of file diff --git a/src/domain/chat_user.rs b/src/domain/chat_user.rs new file mode 100644 index 0000000..3e9e6ec --- /dev/null +++ b/src/domain/chat_user.rs @@ -0,0 +1,9 @@ +use serde::{Deserialize, Serialize}; +use chrono::{DateTime, Utc}; + +#[derive(Debug, Serialize, Deserialize, Clone, PartialEq, Eq, PartialOrd, Ord, Default)] +pub struct ChatUser { + pub chat_room_id: u32, + pub user_id: u32, + pub time_joined: DateTime, +} \ No newline at end of file diff --git a/src/domain/mod.rs b/src/domain/mod.rs index fd060f5..effbc4f 100644 --- a/src/domain/mod.rs +++ b/src/domain/mod.rs @@ -1,3 +1,4 @@ pub mod chat_message; pub mod chat_message_update; -pub mod chat_room; \ No newline at end of file +pub mod chat_room; +pub mod chat_user; \ No newline at end of file diff --git a/src/lib.rs b/src/lib.rs index ae4439e..39113e4 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1 +1,2 @@ -pub mod domain; \ No newline at end of file +pub mod domain; +pub mod dto; \ No newline at end of file