public static void Manter(int id, string login, string senha, TipoUsuario tipo, string avatar, ColecaoPersistencia colecao) { ObjUsuario usuario = new ObjUsuario(); if (id > 0) usuario.Materializar(id); bool existeAlteracoes = false; if (!String.IsNullOrEmpty(login) && !usuario.Login.Equals(login)) { usuario.Login = login; existeAlteracoes = true; } Criptografia.Criptografia criptografia = new CriptografiaMD5(); string senhaCriptografada = criptografia.Criptografar(senha); if (!String.IsNullOrEmpty(senha) && !usuario.Senha.Equals(senhaCriptografada)) { usuario.Senha = senhaCriptografada; existeAlteracoes = true; } if (!usuario.Tipo.Equals(tipo)) { usuario.Tipo = tipo; existeAlteracoes = true; } if (!String.IsNullOrEmpty(avatar) && !usuario.Avatar.Equals(avatar)) { usuario.Avatar = avatar; existeAlteracoes = true; } if (existeAlteracoes) { if (usuario.ID > 0) colecao.AdicionarItem(usuario, Persistence.Enumeradores.EnumTipoTransacao.Alterar); else colecao.AdicionarItem(usuario, Persistence.Enumeradores.EnumTipoTransacao.Incluir); } }
/// <summary> /// Alterar senha usuário corrente (logado). /// </summary> public static void AtualizarSenhaUsuarioLogado(string senhaAtual, string novaSenha, ColecaoPersistencia colecao) { if ((!string.IsNullOrEmpty(senhaAtual) && string.IsNullOrEmpty(novaSenha)) || (!string.IsNullOrEmpty(novaSenha) && string.IsNullOrEmpty(senhaAtual))) throw new Usuario.Excessoes.AlterarSenhaDadosIncompletosException("Não foi possível Alterar a senha, dados incompletos."); if (!string.IsNullOrEmpty(senhaAtual) && !string.IsNullOrEmpty(novaSenha)) { ObjUsuario usuario = UsuarioCorrenteSingleton.Istance.Usuario; Criptografia.Criptografia criptografia = new CriptografiaMD5(); senhaAtual = criptografia.Criptografar(senhaAtual); if (senhaAtual.Equals(usuario.Senha)) { novaSenha = criptografia.Criptografar(novaSenha); usuario.Senha = novaSenha; colecao.AdicionarItem(usuario, Persistence.Enumeradores.EnumTipoTransacao.Alterar); } else throw new Usuario.Excessoes.SenhaInvalidaException("A senha informada não confere."); } }
internal void Autenticar(string senha) { CriptografiaMD5 criptografia = new CriptografiaMD5(); if (!criptografia.Comparar(senha, this.Senha)) throw new SenhaInvalidaException(Erros.MsgSenhaInvalida); else this._autenticado = true; }