use crate::models::common::{DeliveryChannel, Provider, Status}; use chrono::{DateTime, Utc}; use serde::{Deserialize, Serialize}; use uuid::Uuid; #[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, sqlx::FromRow, utoipa::ToSchema)] pub struct NotificationDelivery { pub id: Uuid, pub notification_id: Uuid, pub user_id: Uuid, pub channel: DeliveryChannel, pub destination: Option, pub status: Status, pub provider: Option, pub provider_message_id: Option, pub attempts: i32, pub last_error: Option, pub scheduled_at: Option>, pub sent_at: Option>, pub delivered_at: Option>, pub failed_at: Option>, pub created_at: DateTime, pub updated_at: DateTime, }