public async Task <IActionResult> Put([FromBody] AtualizarCoordenadorRequest request)
        {
            AppResponse resposta = await _usuarioServico.AtualizarCoordenador(request);

            if (resposta.Sucesso)
            {
                return(Ok(resposta));
            }

            return(BadRequest(resposta));
        }
Exemplo n.º 2
0
        public async Task <AppResponse> AtualizarCoordenador(AtualizarCoordenadorRequest request)
        {
            Coordenador coordenador = await _uow.Usuarios.ObterCoordenador(request.Id);

            if (coordenador == null)
            {
                return(new AppResponse(false, "Coordenador não encontrado."));
            }

            if (string.IsNullOrEmpty(request.Senha))
            {
                coordenador.Usuario.AdicionarErro("Informe a nova senha.");
            }

            if (string.IsNullOrEmpty(request.SenhaAntiga))
            {
                coordenador.Usuario.AdicionarErro("Informe a senha antiga.");
            }

            if (!coordenador.Usuario.TaValido())
            {
                return(new AppResponse(false, ERRO_BASE, coordenador.Usuario.ObterErros()));
            }

            coordenador.Atualizar(request);
            await _uow.CommitAsync();

            IdentityResult result = await _userManager.ChangePasswordAsync(coordenador.Usuario, request.SenhaAntiga, request.Senha);

            if (!result.Succeeded)
            {
                return(new AppResponse(MSG_ERRO_PWD_COORDENADOR, false, IdentityHelper.ObterErros(result)));
            }

            return(new AppResponse(true, MSG_UPDATE_SUCESSO, new CoordenadorDTO(coordenador)));
        }
Exemplo n.º 3
0
 public void Atualizar(AtualizarCoordenadorRequest request)
 {
     this.Usuario.Nome     = request.Nome;
     this.Usuario.Email    = request.Email;
     this.Usuario.UserName = request.UserName;
 }