Blame view

netcore/src/Modularity/Message/NCC.Message.Interfaces/IMessageService.cs 3.88 KB
de2bd2f9   “wangming”   项目初始化
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
  using NCC.Message.Entitys;
  using System.Collections.Generic;
  using System.Threading.Tasks;
  
  namespace NCC.Message.Interfaces.Message
  {
      /// <summary>
      /// 系统消息
      ///  本:V1.20.15
      ///  权:Wesleyhttps://www.NCCsoft.com
      ///  者:NCC开发平台组
      ///  期:2022-03-16 
      /// </summary>
      public interface IMessageService
      {
          /// <summary>
          /// 列表
          /// </summary>
          /// <param name="type">类型(1:公告,2im消息)</param>
          /// <returns></returns>
          Task<List<MessageEntity>> GetList(int type);
  
          /// <summary>
          /// 信息
          /// </summary>
          /// <param name="id">主键值</param>
          /// <returns></returns>
          Task<MessageEntity> GetInfo(string id);
  
          /// <summary>
          /// 默认公告(app)
          /// </summary>
          /// <returns></returns>
          public string GetInfoDefaultNotice();
  
          /// <summary>
          /// 默认消息(app)
          /// </summary>
          /// <param name="userId"></param>
          /// <returns></returns>
          public string GetInfoDefaultMessage(string userId);
  
          /// <summary>
          /// 删除
          /// </summary>
          /// <param name="entity">实体对象</param>
          Task<int> Delete(MessageEntity entity);
  
          /// <summary>
          /// 创建
          /// </summary>
          /// <param name="entity">实体对象</param>
          Task<int> Create(MessageEntity entity);
  
          /// <summary>
          /// 创建
          /// </summary>
          /// <param name="entity">实体对象</param>
          /// <param name="receiveEntityList">收件用户</param>
          Task<int> Create(MessageEntity entity, List<MessageReceiveEntity> receiveEntityList);
  
          /// <summary>
          /// 更新
          /// </summary>
          /// <param name="entity">实体对象</param>
          Task<int> Update(MessageEntity entity);
  
          /// <summary>
          /// 更新
          /// </summary>
          /// <param name="entity">实体对象</param>
          /// <param name="receiveEntityList">收件用户</param>
          Task<int> Update(MessageEntity entity, List<MessageReceiveEntity> receiveEntityList);
  
          /// <summary>
          /// 消息已读(单条)
          /// </summary>
          /// <param name="userId">当前用户</param>
          /// <param name="messageId">消息主键</param>
          Task MessageRead(string userId, string messageId);
  
          /// <summary>
          /// 消息已读(全部)
          /// </summary>
          /// <param name="userId">当前用户</param>
          Task MessageRead(string userId);
  
          /// <summary>
          /// 删除记录
          /// </summary>
          /// <param name="userId">当前用户</param>
          /// <param name="messageIds">消息Id</param>
          Task<int> DeleteRecord(string userId, List<string> messageIds);
  
          /// <summary>
          /// 获取未读数量(含 通知公告、系统消息)
          /// </summary>
          /// <param name="userId">用户主键</param>
          /// <returns></returns>
          Task<int> GetUnreadCount(string userId);
  
          /// <summary>
          /// 获取公告未读数量
          /// </summary>
          /// <param name="userId">用户主键</param>
          /// <returns></returns>
          int GetUnreadNoticeCount(string userId);
  
          /// <summary>
          /// 获取消息未读数量
          /// </summary>
          /// <param name="userId">用户主键</param>
          /// <returns></returns>
          int GetUnreadMessageCount(string userId);
  
          /// <summary>
          /// 消息发送
          /// </summary>
          /// <param name="toUserIds"></param>
          /// <param name="title"></param>
          /// <param name="bodyText"></param>
          /// <returns></returns>
          Task SentMessage(List<string> toUserIds, string title, string bodyText = null);
      }
  }