public ActionResult MeusDados(ModeloDeEdicaoDeUsuario modelo) { var retorno = this._servicoDeGestaoDeUsuarios.EditarMeusDados(modelo, User.Logado()); this.AdicionarMensagemDeSucesso(retorno); return(RedirectToAction(nameof(MeusDados))); }
public string EditarMeusDados(ModeloDeEdicaoDeUsuario modelo, UsuarioLogado usuario) { try { var usuarioParaAlterar = this._servicoExternoDePersistencia.RepositorioDeUsuarios.BuscarPorId(usuario.Id); if (usuarioParaAlterar.Login.Valor != modelo.Email) { var usuarioComMesmoLogin = this._servicoExternoDePersistencia.RepositorioDeUsuarios.PegarAtivoPorLogin(modelo.Email); if (usuarioComMesmoLogin != null) { throw new ExcecaoDeAplicacao("Já existe um usuário com o mesmo login"); } } var batalhao = this._servicoExternoDePersistencia.RepositorioDeBatalhoes.PegarPorId(modelo.Batalhao); usuarioParaAlterar.AlterarMeusDados(modelo.Nome, modelo.Email, modelo.Ddd, modelo.Telefone, batalhao, modelo.Matricula); this._servicoExternoDePersistencia.Persistir(); return("Meus dados alterado com sucesso."); } catch (Exception ex) { throw new ExcecaoDeAplicacao(ex.Message); } }
public ActionResult AlterarSenhaRenovacao(ModeloDeEdicaoDeUsuario modelo) { var retorno = this._servicoDeGestaoDeUsuarios.AlterarSenhaRenovacao(modelo); this.AdicionarMensagemDeSucesso(retorno); return(RedirectToAction(nameof(Index), "Login")); }
public string AlterarSenhaRenovacao(ModeloDeEdicaoDeUsuario modelo) { if (modelo.Senha != modelo.RepetirSenha) { throw new ExcecaoDeAplicacao("As senhas são diferentes."); } var usuarioParaAlterar = this._servicoExternoDePersistencia.RepositorioDeUsuarios.BuscarPorId(modelo.Id); var senha = new Senha(modelo.Senha, _servicoDeGeracaoDeHashSha.GerarHash); usuarioParaAlterar.AlterarSenha(senha); this._servicoExternoDePersistencia.Persistir(); return("Senha alterada com sucesso."); }
public ActionResult EditarPerfil(ModeloDeEdicaoDeUsuario modelo) { if (User.EhInterno() && User.EhUsuario()) { return(UsuarioSemPermissao()); } var retorno = this._servicoDeGestaoDeUsuarios.AlterarPerfilDoUsuario(modelo, User.Logado()); modelo.Batalhoes = ListaDeItensDeDominio.DaClasseComOpcaoPadrao <Batalhao>(nameof(Batalhao.Sigla), nameof(Batalhao.Id), () => this._servicoDeGestaoDeBatalhoes.RetonarTodosOsBatalhoesAtivos()); this.AdicionarMensagemDeSucesso(retorno); return(RedirectToAction(nameof(Index))); }
public string AlterarDadosDoUsuario(ModeloDeEdicaoDeUsuario modelo, UsuarioLogado usuario) { try { var batalhao = this._servicoExternoDePersistencia.RepositorioDeBatalhoes.PegarPorId(modelo.Batalhao); var usuarioParaAlterar = this._servicoExternoDePersistencia.RepositorioDeUsuarios.BuscarPorId(modelo.Id); usuarioParaAlterar.AlterarDados(modelo.Nome, modelo.Email, modelo.Ativo, modelo.PerfilDeUsuario, batalhao, modelo.Matricula); this._servicoExternoDePersistencia.Persistir(); return("Usuário alterado com sucesso."); } catch (Exception ex) { throw new ExcecaoDeAplicacao(ex.Message); } }
public Tuple <string, bool> AlterarSenha(ModeloDeEdicaoDeUsuario modelo, UsuarioLogado usuario) { if (modelo.Senha != modelo.RepetirSenha) { throw new ExcecaoDeAplicacao("As senhas são diferentes."); } var verificaUsuario = usuario.Id == modelo.Id ? true : false; var usuarioParaAlterar = this._servicoExternoDePersistencia.RepositorioDeUsuarios.BuscarPorId(modelo.Id); var senha = new Senha(modelo.Senha, _servicoDeGeracaoDeHashSha.GerarHash); usuarioParaAlterar.AlterarSenha(senha); this._servicoExternoDePersistencia.Persistir(); return(new Tuple <string, bool>("Senha alterada com sucesso.", verificaUsuario)); }
public string AlterarPerfilDoUsuario(ModeloDeEdicaoDeUsuario modelo, UsuarioLogado usuario) { try { var usuarioBanco = this._servicoExternoDePersistencia.RepositorioDeUsuarios.BuscarPorId(usuario.Id); var usuarioParaAlterar = this._servicoExternoDePersistencia.RepositorioDeUsuarios.BuscarPorId(modelo.Id); usuarioParaAlterar.AlterarPerfil(modelo.PerfilDeUsuario, usuarioBanco.Id); this._servicoExternoDePersistencia.Persistir(); return("Usuário alterado com sucesso."); } catch (Exception ex) { throw new ExcecaoDeAplicacao(ex.Message); } }
public ActionResult AlterarSenha(ModeloDeEdicaoDeUsuario modelo) { if (User.EhInterno() && User.EhUsuario()) { return(UsuarioSemPermissao()); } var retorno = this._servicoDeGestaoDeUsuarios.AlterarSenha(modelo, User.Logado()); this.AdicionarMensagemDeSucesso(retorno.Item1); if (retorno.Item2) { return(RedirectToAction(nameof(MeusDados))); } else { return(RedirectToAction(nameof(Editar), new { id = modelo.Id })); } }
public ModeloDeEdicaoDeUsuario ValidarTokenRetornarUsuario(string token) { var tokenDescriptografado = this._servicoDeCriptografia.Decriptar(token); var tokenDividido = tokenDescriptografado.Split(new char[] { '#', '#' }, StringSplitOptions.RemoveEmptyEntries); if (tokenDividido.Length != 2) { throw new ExcecaoDeAplicacao("Token inválido"); } var usuario = this._servicoExternoDePersistencia.RepositorioDeUsuarios.PegarAtivoPorLogin(tokenDividido[0]); if (usuario == null) { return(new ModeloDeEdicaoDeUsuario()); throw new ExcecaoDeAplicacao("Usuário não encontrado."); } var modelo = new ModeloDeEdicaoDeUsuario(usuario); return(modelo); }