Esempio n. 1
0
 public IActionResult ResetPassword([FromBody] ResetUsuarioRequest resetUsuarioRequest)
 {
     using (var context = new ClubVanContext())
     {
         using (var dbContextTransaction = context.Database.BeginTransaction())
         {
             try
             {
                 var response = this.usuarioBusiness.RedefinirSenhaUsuario(resetUsuarioRequest);
                 dbContextTransaction.Commit();
                 return(base.Ok(response));
             }
             catch (System.Exception e)
             {
                 dbContextTransaction.Rollback();
                 this.logger.LogInformation($"Erro:{e.Message}");
                 return(base.BadRequest(e));
             }
         }
     }
 }
        public ResetUsuarioResponse RedefinirSenhaUsuario(ResetUsuarioRequest resetUsuarioRequest)
        {
            var usuario = this.usuarioDao.FindByEmail(resetUsuarioRequest.Email);

            if (usuario == null)
            {
                throw new Exception("O usuario informado não existe");
            }
            else
            {
                var senha = GerarSenha();

                usuario.Senha = this.CalculaHash(senha);

                this.usuarioDao.Atualizar(usuario);

                this.EnviarEmail(senha, resetUsuarioRequest.Email);

                return(new ResetUsuarioResponse(usuario.Id));
            }
        }