/// <summary> /// Adds a user to a group. /// User connects to the group at the next session. /// </summary> /// <param name="pUsername">Client's username</param> public void AddUser(string pUsername) { if (!GroupMembers.Contains(pUsername.ToLower())) { GroupMembers.Add(pUsername.ToLower()); } }
public Task Add(string connectionId, string groupName) { if (!GroupMembers.ContainsKey(groupName)) { GroupMembers.Add(groupName, new List <string>()); } GroupMembers[groupName].Add(connectionId); return(Groups.Add(connectionId, groupName)); }
// ╔════╤════════════════════════════════════════════════════════╗ // ║ 4d │ M E T H O D S ( P U B L I C ) ║ // ╟────┴────────────────────────────────────────────────────────╢ // ║ N O N - S T A T I C & S T A T I C ║ // ╚═════════════════════════════════════════════════════════════╝ #region ═╣ M E T H O D S ( P U B L I C ) ╠═ /// <summary> /// Adds a already connected user to the group. /// The user reconnects at the next session. /// </summary> /// <param name="pUser">Client</param> public void AddUser(NetComUser pUser) { if (!OnlineMembers.Contains(pUser)) { OnlineMembers.Add(pUser); } if (!GroupMembers.Contains(pUser.Username.ToLower())) { GroupMembers.Add(pUser.Username.ToLower()); } }
public void AddUser(User user) { AssertionConcern.AssertArgumentNotNull(user, "User must not be null."); AssertionConcern.AssertArgumentEquals(TenantId, user.TenantId, "Wrong tenant for this group."); AssertionConcern.AssertArgumentTrue(user.IsEnabled, "User is not enabled."); if (GroupMembers.Add(user.ToGroupMember()) && (!IsInternalGroup)) { DomainEventPublisher .Instance .Publish(new GroupUserAdded( TenantId, Name, user.Username)); } }
public void AddGroup(Group group, GroupMemberService groupMemberService) { AssertionConcern.AssertArgumentNotNull(group, "Group must not be null."); AssertionConcern.AssertArgumentEquals(TenantId, group.TenantId, "Wrong tenant for this group."); AssertionConcern.AssertArgumentFalse(groupMemberService.IsMemberGroup(group, ToGroupMember()), "Group recurrsion."); if (GroupMembers.Add(group.ToGroupMember()) && (!IsInternalGroup)) { DomainEventPublisher .Instance .Publish(new GroupGroupAdded( TenantId, Name, group.Name)); } }
/// <summary> /// 加载群成员数据 /// </summary> private void LoadGroupMeberData() { if (_groupInfoViewModel != null && _groupInfoViewModel.Members.Count > 0) { var groupMembers = _groupInfoViewModel.Members; GroupMembers.Clear(); var admin = groupMembers.FirstOrDefault(c => c.roleLevel == (int)GlobalVariable.GroupRoleLevel.GroupOwner); var groupAdminId = (admin == null ? "" : admin.userId); foreach (var groupMember in groupMembers.Select(groupUser => new GroupMemberViewModel(groupUser, groupAdminId, _groupInfoViewModel.GroupInfo.groupId, null, ""))) { if (admin?.userId == groupMember.Member.userId) { GroupMembers.Insert(0, groupMember); } else { GroupMembers.Add(groupMember); } } IsShowMembers = true; } }
public async Task <bool> AddUser() { var bookUser = await _userService.SelectUserWithInfoByUsernameAsync(Username); if (bookUser is null) { return(false); } if (!GroupMembers.Contains(bookUser)) { GroupMembers.Add(bookUser); if (GroupMembers.Count > 2 && !string.IsNullOrEmpty(GroupName)) { EnabledCreateGroup = true; } Username = string.Empty; return(true); } return(false); }
public CreateGroupViewModel(IUserService userService, IConversationService conversationService) { _userService = userService; _conversationService = conversationService; GroupMembers.Add(DataContainer.User); }
public void AddMember(Person person) => GroupMembers.Add(person);