public async Task <bool> Handle(UpdateRoleUserCommand request, CancellationToken cancellationToken) { var role = await _roleRepository.GetRoleByIdIncludeUsersAsync(request.Id); role.Users.RemoveAll(x => !request.UserIds.Contains(x.Id)); var userRoles = request.UserIds .Where(userId => !role.Users.Select(userRole => userRole.Id).Contains(userId)) .Select(ur => new User() { Id = request.Id }).ToList(); if (userRoles.Any()) { role.Users.AddRange(userRoles); } if (await Commit()) { var key = GirvsEntityCacheDefaults <Role> .ByIdCacheKey.Create(role.Id.ToString()); _bus.RaiseEvent(new RemoveCacheEvent(key), cancellationToken); _bus.RaiseEvent(new RemoveCacheListEvent(GirvsEntityCacheDefaults <Role> .ListCacheKey.Create()), cancellationToken); } return(true); }
public UsersViewModel() { addRoleUserCommand = new AddRoleUserCommand(this); updateRoleUserCommand = new UpdateRoleUserCommand(this); // atrybuty uzytkowników. UsersAttributes allowedAttributes = UsersAttributes.Administrator | UsersAttributes.Recepcjonista | UsersAttributes.Terapeuta; int tempTypeUser = 5; //allowedAttributes = allowedAttributes | tempTypeUser; //UsersAttributes usersAttributesInstance = (UsersAttributes)tempTypeUser; //Console.WriteLine("Attibutes - " + usersAttributesInstance); // sprawdzenie czy użytkownik ma prawa Administratora - (UsersAttributes)1 sprawdza czy jest w prawach Administrator (1) //if (UsersAttributes.Administrator == (UsersAttributes)1) //{ // Console.WriteLine("User - " + UsersAttributes.Administrator); // string ua = UsersAttributes.Administrator.ToString(); // Console.WriteLine("User string - " + ua); //} usersList = new ObservableCollection <UserModel> { new UserModel { IDUser = "******", NameUser = "******", PasswordUser = "******", TypeUser = "******", FirstNameUser = "******", LastNameUser = "******" }, new UserModel { IDUser = "******", NameUser = "******", PasswordUser = "******", TypeUser = "******", FirstNameUser = "******", LastNameUser = "******" } }; DataGrid_Loaded(); }
public async Task <ICommandResult> Handle(UpdateRoleUserCommand command) { //validar command command.Validate(); if (command.Invalid) { return(new GenericCommandResult(false, "Ops, algo errado aconteceu!", command.Notifications)); } //GetUser var user = await _repository.GetUser(command.Id, command.Email); if (user == null) { return(new GenericCommandResult(false, "Usuário não encontrado", null)); } //Validar Role AddNotification("Handle.Role", "Não é possível atualizar o role ainda"); if (Invalid) { return(new GenericCommandResult(false, "Ops, algo errado aconteceu!", Notifications)); } user.UpdateRole(command.Role); _ = _repository.Update(user); user.Password.HidePassword(); //Retorna valores return(new GenericCommandResult(true, "Role atualizado", new { user })); }
public Task <ICommandResult> PutRole([FromBody] UpdateRoleUserCommand command) { command.Id = Guid.Parse(User.FindFirst(ClaimTypes.Sid)?.Value); command.Email = User.FindFirst(ClaimTypes.NameIdentifier)?.Value; var result = _handler.Handle(command); return(result); }