This commit is contained in:
2026-02-21 10:39:52 +01:00
parent f7c975a3f0
commit 66c1fe0025
38 changed files with 1543 additions and 616 deletions

View File

@@ -0,0 +1,40 @@
use crate::models::message;
use sea_orm::Set;
use serde::{Deserialize, Serialize};
use uuid::Uuid;
#[derive(Debug, Serialize)]
pub struct MessageResponse {
pub id: Uuid,
pub channel_id: Uuid,
pub author_id: Uuid,
pub content: String,
}
impl From<message::Model> for MessageResponse {
fn from(model: message::Model) -> Self {
Self {
id: model.id,
channel_id: model.channel_id,
author_id: model.user_id,
content: model.content,
}
}
}
#[derive(Debug, Deserialize)]
pub struct CreateMessageRequest {
pub channel_id: Uuid,
pub content: String,
}
impl From<CreateMessageRequest> for message::ActiveModel {
fn from(request: CreateMessageRequest) -> Self {
Self {
channel_id: Set(request.channel_id),
user_id: Set(Uuid::new_v4()),
content: Set(request.content),
..Default::default()
}
}
}