Esempio n. 1
0
        Usuario IUsuarioService.ValidarLogin(string login, string senha)
        {
            var usuario = repository.RecuperarPorLogin(login);

            if (usuario == null)
            {
                throw new Exception(Textos.Geral_Mensagem_Login_Invalido);
            }

            if (!MetodosEstaticos.CompararSenha(usuario.Senha, senha, login))
            {
                throw new Exception(Textos.Geral_Mensagem_Login_Invalido);
            }

            if (usuario.PerfilId == null)
            {
                throw new Exception(Textos.Geral_Mensagem_Usuario_Sem_Perfil);
            }

            if (usuario.Status.ValorNumerico() == 0)
            {
                throw new Exception(Textos.Geral_Mensagem_Usuario_Desativado);
            }

            usuario.Email = emailService.RecuperarTodos(usuario.Id).SingleOrDefault();

            return(usuario);
        }
Esempio n. 2
0
        Usuario IUsuarioService.TrocarSenha(string id, string novaSenha)
        {
            var usuario = repository.RecuperarPorId(id);

            usuario.Senha           = MetodosEstaticos.CriptografarSenha(usuario.Login, novaSenha);
            usuario.SenhaTemporaria = false;

            base.Atualizar(usuario);

            return(usuario);
        }
Esempio n. 3
0
        public override ResultadoValidacao Inserir(Usuario model)
        {
            if (VerificaDuplicado(model.Nome, model.Login))
            {
                throw new InvalidOperationException(Textos.Geral_Mensagem_Erro_NomeDuplicado);
            }

            var resultado = base.Inserir(model);

            if (resultado.IsValid)
            {
                model.Senha           = MetodosEstaticos.CriptografarSenha(model.Login, MetodosEstaticos.GerarSenha());
                model.Senha           = MetodosEstaticos.CriptografarSenha(model.Login, "123456");
                model.SenhaTemporaria = true;

                if (!string.IsNullOrEmpty(model.Email?.Endereco))
                {
                    resultado.AdicionarMensagens(emailService.Processar(model.Email, null, model.Id));
                }
            }
            return(resultado);
        }