Files
appks/models/conversations/conversation_participants.rs
T
2026-06-07 11:30:56 +08:00

23 lines
721 B
Rust

use crate::models::common::{ParticipantType, Role, Status};
use chrono::{DateTime, Utc};
use serde::{Deserialize, Serialize};
use uuid::Uuid;
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, sqlx::FromRow)]
pub struct ConversationParticipant {
pub id: Uuid,
pub conversation_id: Uuid,
pub user_id: Option<Uuid>,
pub agent_id: Option<Uuid>,
pub role: Role,
pub participant_type: ParticipantType,
pub status: Status,
pub muted: bool,
pub last_read_message_id: Option<Uuid>,
pub last_read_at: Option<DateTime<Utc>>,
pub joined_at: Option<DateTime<Utc>>,
pub left_at: Option<DateTime<Utc>>,
pub created_at: DateTime<Utc>,
pub updated_at: DateTime<Utc>,
}