示例#1
0
        public ICommandResult Handle(AlterarUsuarioCommand command)
        {
            //Fail Fast Validation
            command.Validate();
            if (command.Invalid)
            {
                return(new GenericCommandResult(false, _msgError, command.Notifications));
            }

            var usuario = _usuario_repository.ObterPorId(command.IdUsuario);

            usuario.AtivarDesativar(command.Ativo);

            _usuario_repository.Atualizar(usuario);

            //Busca a claim informada no request
            var claim = _claims_repository.ObterPorNomeValor("PerfilAcesso", command.Perfil);

            var claimUsuario = _usuario_claims_repository.ObterClaimsUsuario(usuario.IdFirebase).FirstOrDefault();

            _usuario_claims_repository.Remover(claimUsuario);

            //Vincular a claim ao usuario
            _usuario_claims_repository.Criar(new UsuarioClaims
            {
                UsuarioId = usuario.Id,
                ClaimId   = claim.Id
            });

            //Retorna o resultado
            return(new GenericCommandResult(true, "Usuario alterado com Sucesso!", null));
        }
示例#2
0
 public void Remover(int id)
 {
     _usuarioClaimsRepository.Remover(id);
 }