using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using GxPress.Request.App.IM;
namespace GxPress.Service.Implement.GroupChatUser
{
public partial class GroupChatUserService
{
///
/// 添加群用户
///
///
///
public async Task InsertAsync(InsertGroupChatUsersRequest request)
{
return await AddUsers(request);
}
///
/// 添加群用户
///
///
///
public async Task AddUsers(InsertGroupChatUsersRequest request)
{
var groupChat = await _groupChatRepository.GetGroupChatByImIdAsync(request.GroupChatImId);
var users = await _groupChatUserRepository.FindGroupChatUserByImId(groupChat.GroupChatImId);
var userInts = new List();
if (request.UserIds.Count == 0)
return true;
foreach (var item in request.UserIds.Distinct())
{
if (!users.Any(n => n.UserId == item))
{
userInts.Add(item);
}
}
request.UserIds = userInts;
return await _imService.InsertGroupChatUsersAsync(request);
}
}
}