//using Microsoft.AspNetCore.SignalR;
//namespace Admin.NET.Core.Service;
/////
///// 消息发送服务
/////
//[ApiDescriptionSettings(Name = "Message", Order = 100)]
//[Route("api")]
//public class SendMessageService : ISendMessageService, IDynamicApiController, ITransient
//{
// private readonly ISysCacheService _sysCacheService;
// private readonly IHubContext _chatHubContext;
// public SendMessageService(ISysCacheService sysCacheService,
// IHubContext chatHubContext)
// {
// _sysCacheService = sysCacheService;
// _chatHubContext = chatHubContext;
// }
// ///
// /// 发送消息给所有人
// ///
// /// 发送标题
// /// 发送内容
// /// 消息类型
// ///
// [HttpGet("sysMessage/allUser")]
// public async Task SendMessageToAllUser(string title, string message, MessageTypeEnum type)
// {
// await _chatHubContext.Clients.All.ReceiveMessage(new { Title = title, Message = message, Messagetype = type });
// }
// ///
// /// 发送消息给除了发送人的其他人
// ///
// /// 发送标题
// /// 发送内容
// /// 发送人
// /// 消息类型
// ///
// [HttpGet("sysMessage/otherUser")]
// public async Task SendMessageToOtherUser(string title, string message, MessageTypeEnum type, long userId)
// {
// var onlineuserlist = await _sysCacheService.GetAsync>(CommonConst.CACHE_KEY_ONLINE_USER);
// var user = onlineuserlist.Where(x => x.UserId == userId).ToList();
// if (user != null)
// {
// await _chatHubContext.Clients.AllExcept(user[0].ConnectionId).ReceiveMessage(new { title = title, message = message, messagetype = type });
// }
// }
// ///
// /// 发送消息给某个人
// ///
// /// 发送标题
// /// 发送内容
// /// 接收人
// /// 消息类型
// ///
// [HttpGet("sysMessage/user")]
// public async Task SendMessageToUser(string title, string message, MessageTypeEnum type, long userId)
// {
// var onlineuserlist = await _sysCacheService.GetAsync>(CommonConst.CACHE_KEY_ONLINE_USER);
// var user = onlineuserlist.Where(x => x.UserId == userId).ToList();
// if (user != null)
// {
// foreach (var item in user)
// {
// await _chatHubContext.Clients.Client(item.ConnectionId).ReceiveMessage(new { title = title, message = message, messagetype = type });
// }
// }
// }
// ///
// /// 发送消息给某些人
// ///
// /// 发送标题
// /// 发送内容
// /// 接收人列表
// /// 消息类型
// ///
// [HttpGet("sysMessage/users")]
// public async Task SendMessageToUsers(string title, string message, MessageTypeEnum type, List userId)
// {
// var onlineuserlist = await _sysCacheService.GetAsync>(CommonConst.CACHE_KEY_ONLINE_USER);
// var userlist = new List();
// foreach (var item in onlineuserlist)
// {
// if (userId.Contains(item.UserId))
// userlist.Add(item.ConnectionId);
// }
// await _chatHubContext.Clients.Clients(userlist).ReceiveMessage(new { Title = title, Message = message, Messagetype = type });
// }
//}