public UsuarioRespost CadastraUsuario(UsuarioRequest UsuarioValue) { if (UsuarioValue.IdUsuario != Guid.Empty) { return(EditaUsuario(UsuarioValue.IdUsuario, UsuarioValue)); } DadosSessao StatusSessao = DefRepositorioUsuario.StatusSessao(UsuarioValue.IdSessao, this.DBContext); if (StatusSessao == null) { return new UsuarioRespost() { IdSessao = Guid.Empty } } ; Usuario UsuarioAdiciona = (Usuario)UsuarioValue; UsuarioAdiciona.InstituicaoID = StatusSessao.Usuario.InstituicaoID; UsuarioAdiciona.VerificaSenha = true; UsuarioRespost Retorn = new UsuarioRespost() { IdSessao = UsuarioValue.IdSessao }; UsuarioAdiciona.ExecuteValidationRoutine(); if (UsuarioAdiciona.ItsValid && (UsuarioValue.Senha.Equals(UsuarioValue.ReSenha))) { MapUsuario UsuarioSalvo = (MapUsuario)UsuarioAdiciona; DBContext.Usuarios.Add(UsuarioSalvo); DBContext.SaveChanges(); Retorn.Menssagem = MensagensEntidades.UsuarioSalvo; Retorn.IdCadasto = UsuarioSalvo.Id; Retorn.DefineSucess(); } else { Retorn.ErrorMessage = String.Format(MensagensEntidades.ErroAoRealizarOperacao, Operacaoes.CadastroUsuario); Retorn.Alertas = UsuarioAdiciona.Notifications; Retorn.DefineErro(); } return(Retorn); }
public UsuarioRespost EditaUsuario(Guid IdUsuario, UsuarioRequest Usuario) { DadosSessao StatusSessao = DefRepositorioUsuario.StatusSessao(Usuario.IdSessao, this.DBContext); if (StatusSessao == null) { return new UsuarioRespost() { IdSessao = Guid.Empty } } ; MapUsuario BaseUsuario = DBContext.Usuarios.Find(IdUsuario); if (BaseUsuario == null) { return(null); } Usuario UC = (Usuario)Usuario; UsuarioRespost retorno = new UsuarioRespost() { }; //se a senha for igual o id do usuario não sera editada a senha UC.VerificaSenha = !(Usuario.Senha.ToUpper().Equals(IdUsuario.ToString().ToUpper())); UC.ExecuteValidationRoutine(); if (UC.ItsValid) { #region Edita Usuario if (!BaseUsuario.Nome.Equals(UC.Nome)) { BaseUsuario.Nome = UC.Nome; } if (!BaseUsuario.Email.Equals(UC.Email)) { BaseUsuario.Email = UC.Email; } if (BaseUsuario.Ativo != UC.Ativo) { BaseUsuario.Ativo = UC.Ativo; } if (!UC.Senha.ToUpper().Equals(BaseUsuario.Id.ToString().ToUpper()) && !BaseUsuario.Senha.Equals(Util.HashSHA256(UC.Senha))) { BaseUsuario.Senha = Util.HashSHA256(UC.Senha); } if (!BaseUsuario.Login.Equals(UC.Login)) { BaseUsuario.Login = UC.Login; } DBContext.SaveChanges(); #endregion retorno.Menssagem = MensagensEntidades.UsuarioSalvo; retorno.IdCadasto = Usuario.IdUsuario; retorno.DefineSucess(); } else { retorno.ErrorMessage = String.Format(MensagensEntidades.ErroAoRealizarOperacao, Operacaoes.CadastroUsuario); retorno.Alertas = UC.Notifications; retorno.DefineErro(); } return(retorno); }