public async Task <IActionResult> AlterarSenha(SenhaCriarDto senhaDto) { ViewBag.UsuarioId = senhaDto.Id; senhaDto.Validate(); if (senhaDto.Invalid) { TempData["Notificacao"] = new BadRequestDto(senhaDto.Notifications, TipoNotificacao.Warning); return(View(senhaDto)); } await _usuarioService.CriarSenha(senhaDto); if (_usuarioService.Invalid) { TempData["Notificacao"] = new BadRequestDto(_usuarioService.Notifications, TipoNotificacao.Warning); return(View(senhaDto)); } TempData["Notificacao"] = new BadRequestDto(new List <Notification>() { new Notification("AlterarSenha", "Senha alterada com sucesso.") }, TipoNotificacao.Success); ViewBag.Controller = "Agendamentos"; return(View("_Confirmacao")); }
public async Task CriarSenha(SenhaCriarDto senhaDto) { var usuario = await _usuarioRepository.ObterAsync(senhaDto.Id); if (usuario == null) { AddNotification("AlterarSenha", MensagemValidacao.Usuario.NaoExiste); return; } AddNotifications(new Contract() .AreNotEquals(senhaDto.SenhaNova, usuario.Matricula, "AlterarSenha", MensagemValidacao.Usuario.SenhaNaoPodeSerMatricula, StringComparison.OrdinalIgnoreCase) .AreEquals(senhaDto.SenhaAtual, usuario.Senha, "AlterarSenha", MensagemValidacao.Usuario.SenhaDiferente, StringComparison.OrdinalIgnoreCase) ); if (Invalid) { return; } usuario.AlterarSenha(senhaDto.SenhaNova); await _usuarioRepository.EditarAsync(usuario); }