using NCC.Message.Entitys;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace NCC.Message.Interfaces.Message
{
///
/// 系统消息
/// 版 本:V1.20.15
/// 版 权:Wesley(https://www.NCCsoft.com)
/// 作 者:NCC开发平台组
/// 日 期:2022-03-16
///
public interface IMessageService
{
///
/// 列表
///
/// 类型(1:公告,2:im消息)
///
Task> GetList(int type);
///
/// 信息
///
/// 主键值
///
Task GetInfo(string id);
///
/// 默认公告(app)
///
///
public string GetInfoDefaultNotice();
///
/// 默认消息(app)
///
///
///
public string GetInfoDefaultMessage(string userId);
///
/// 删除
///
/// 实体对象
Task Delete(MessageEntity entity);
///
/// 创建
///
/// 实体对象
Task Create(MessageEntity entity);
///
/// 创建
///
/// 实体对象
/// 收件用户
Task Create(MessageEntity entity, List receiveEntityList);
///
/// 更新
///
/// 实体对象
Task Update(MessageEntity entity);
///
/// 更新
///
/// 实体对象
/// 收件用户
Task Update(MessageEntity entity, List receiveEntityList);
///
/// 消息已读(单条)
///
/// 当前用户
/// 消息主键
Task MessageRead(string userId, string messageId);
///
/// 消息已读(全部)
///
/// 当前用户
Task MessageRead(string userId);
///
/// 删除记录
///
/// 当前用户
/// 消息Id
Task DeleteRecord(string userId, List messageIds);
///
/// 获取未读数量(含 通知公告、系统消息)
///
/// 用户主键
///
Task GetUnreadCount(string userId);
///
/// 获取公告未读数量
///
/// 用户主键
///
int GetUnreadNoticeCount(string userId);
///
/// 获取消息未读数量
///
/// 用户主键
///
int GetUnreadMessageCount(string userId);
///
/// 消息发送
///
///
///
///
///
Task SentMessage(List toUserIds, string title, string bodyText = null);
}
}