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