private void AddRoleToUser(ResponseRoleClass obj) { if (obj == null) { return; } TransactionService.AddRoleToUser(new Transaction(new ServerLib.JTypes.Client.RequestUserRoleAddClass() { RoleID = obj.ID, UserID = SelectedUserClass.ID, Token = DataStorage.Instance.Login.Token }, new Action(() => { Application.Current.Dispatcher.Invoke(() => { UserUnusedRoles.Remove(obj); UserUsedRoles.Add(obj); Notify("UserUnusedRoles"); Notify("UserUsedRoles"); AddRoleToUserButtonEnable = UserUnusedRoles.Count > 0; Notify("AddRoleToUserButtonEnable"); RemoveRoleToUserButtonEnable = UserUsedRoles.Count > 0; Notify("RemoveRoleToUserButtonEnable"); }); }), new Action(() => { })));; }
private void UpdateRoles() { UserUsedRoles.Clear(); foreach (ResponseUserRoleClass userRoleClass in DataStorage.Instance.UsersRolesList) { if (SelectedUserClass != null && userRoleClass.UserID == SelectedUserClass.ID) { UserUsedRoles.Add(DataStorage.Instance.RoleList.Find(x => x.ID == userRoleClass.RoleID)); Notify("UserUsedRoles"); } } UserUnusedRoles = new ObservableCollection <ResponseRoleClass>(DataStorage.Instance.RoleList.Except(UserUsedRoles)); Notify("UserUnusedRoles"); Notify("SelectedUserClass"); AddRoleToUserButtonEnable = UserUnusedRoles.Count > 0; Notify("AddRoleToUserButtonEnable"); RemoveRoleToUserButtonEnable = UserUsedRoles.Count > 0; Notify("RemoveRoleToUserButtonEnable"); }