namespace CampusErrand.Models.Dtos;
///
/// 未读消息数响应
///
public class UnreadCountResponse
{
/// 系统消息未读数
public int SystemUnread { get; set; }
/// 订单通知未读数
public int OrderNotificationUnread { get; set; }
/// 总未读数
public int TotalUnread { get; set; }
}
///
/// 系统消息列表项响应
///
public class SystemMessageResponse
{
public int Id { get; set; }
public string Title { get; set; } = string.Empty;
/// 正文(截断至 3 行约 100 字)
public string ContentPreview { get; set; } = string.Empty;
public string? ThumbnailUrl { get; set; }
public DateTime CreatedAt { get; set; }
public bool IsRead { get; set; }
}
///
/// 系统消息详情响应
///
public class SystemMessageDetailResponse
{
public int Id { get; set; }
public string Title { get; set; } = string.Empty;
public string Content { get; set; } = string.Empty;
public string? ThumbnailUrl { get; set; }
public DateTime CreatedAt { get; set; }
}
///
/// 订单通知列表项响应
///
public class OrderNotificationResponse
{
public int Id { get; set; }
public string OrderNo { get; set; } = string.Empty;
public string OrderType { get; set; } = string.Empty;
public string Title { get; set; } = string.Empty;
public string ItemName { get; set; } = string.Empty;
public string Status { get; set; } = string.Empty;
public DateTime CreatedAt { get; set; }
}
///
/// 发布系统通知请求
///
public class CreateNotificationRequest
{
public string Title { get; set; } = string.Empty;
public string Content { get; set; } = string.Empty;
public string? ThumbnailUrl { get; set; }
/// 目标类型:All, OrderUser, RunnerUser, Specific
public string TargetType { get; set; } = "All";
/// 指定用户 ID 列表(TargetType=Specific 时使用)
public List? TargetUserIds { get; set; }
}