live-forum/server/webapi/LiveForum/LiveForum.IService/Messages/IMessagesService.cs
2026-03-24 11:27:37 +08:00

81 lines
2.7 KiB
C#

using LiveForum.Code.Base;
using LiveForum.Model.Dto.Messages;
namespace LiveForum.IService.Messages
{
/// <summary>
/// 消息服务接口
/// </summary>
public interface IMessagesService
{
/// <summary>
/// 获取消息列表
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
Task<BaseResponse<GetMessagesRespDto>> GetMessages(GetMessagesReq request);
/// <summary>
/// 获取系统通知列表
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
Task<BaseResponse<GetSystemNotificationsRespDto>> GetSystemNotifications(GetSystemNotificationsReq request);
/// <summary>
/// 标记消息为已读
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
Task<BaseResponse<ReadMessageRespDto>> ReadMessage(ReadMessageReq request);
/// <summary>
/// 批量标记消息为已读
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
Task<BaseResponse<ReadBatchMessagesRespDto>> ReadBatchMessages(ReadBatchMessagesReq request);
/// <summary>
/// 全部标记为已读
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
Task<BaseResponse<ReadAllMessagesRespDto>> ReadAllMessages(ReadAllMessagesReq request);
/// <summary>
/// 删除消息
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
Task<BaseResponseBool> DeleteMessage(DeleteMessageReq request);
/// <summary>
/// 获取未读消息数量
/// </summary>
/// <returns></returns>
Task<BaseResponse<UnreadCountRespDto>> GetUnreadCount();
/// <summary>
/// 获取评论回复消息列表
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
Task<BaseResponse<GetCommentRepliesMessagesRespDto>> GetCommentRepliesMessages(GetCommentRepliesMessagesReq request);
/// <summary>
/// 获取点赞消息列表
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
Task<BaseResponse<GetLikesMessagesRespDto>> GetLikesMessages(GetLikesMessagesReq request);
/// <summary>
/// 参与活动
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
Task<BaseResponse<ParticipateActivityResp>> ParticipateActivity(ParticipateActivityReq request);
}
}