public PermissaoInadimplencia GetPermissaoInadimplencia(string registro, int aplicativoId, string versaoAplicacao)
        {
            const string MSPRO_VERSAO_BUG_INADIMPLENCIA = "4.4.0";

            var isVersaoMsProMobileComBugInadimplencia = aplicativoId == (int)Aplicacoes.MsProMobile && versaoAplicacao == MSPRO_VERSAO_BUG_INADIMPLENCIA;

            if (Utilidades.IsValidEmail(registro))
            {
                var aluno = _clienteRepository.GetAlunoPorFiltros(new AlunoDTO {
                    Email = registro
                });
                if (aluno != null)
                {
                    registro = aluno.Register;
                }
            }

            var permissao = new PermissaoInadimplencia();

            using (MiniProfiler.Current.Step("Obtendo permissões do usuario"))
            {
                permissao = _alunoRepository.GetPermissao(registro, Convert.ToInt32(aplicativoId));
            }

            if (isVersaoMsProMobileComBugInadimplencia)
            {
                using (MiniProfiler.Current.Step("Removendo OV de inadimplente bloqueado"))
                {
                    permissao = _alunoRepository.RemoveOvInadimplenteBloqueado(permissao);
                }
            }

            return(permissao);
        }
Exemple #2
0
        private ValidaLoginDTO ValidaResultadoLoginCliente(Cliente pessoa, string senha, bool validarSenha, bool isGolden, Task <PermissaoInadimplencia> tarefaInadimplencia)
        {
            PermissaoInadimplencia permissao = null;

            if (pessoa.RetornoStatus == Cliente.StatusRetorno.Cancelado)
            {
                return(ValidaLoginDTO.AlunoInvalido);
            }

            permissao = tarefaInadimplencia.Result;
            var resultadoInadimplencia = ValidaResultadoInadimplencia(permissao, pessoa);

            if (resultadoInadimplencia != null && !string.IsNullOrEmpty(pessoa.Senha))
            {
                var senhaGolden = string.Empty;
                if (isGolden)
                {
                    senhaGolden = _clienteRepository.ObterSenhaGolden();
                    senhaGolden = Utilidades.EncryptionSHA1(senhaGolden);
                }

                if (validarSenha && senha != pessoa.Senha && (!isGolden || senha != senhaGolden))
                {
                    return(ValidaLoginDTO.SenhaInvalida);
                }
                return(resultadoInadimplencia);
            }

            if (pessoa.RetornoStatus == Cliente.StatusRetorno.SemAcesso)
            {
                return(ValidaLoginDTO.AlunoInvalido);
            }
            return(null);
        }
Exemple #3
0
 private ValidaLoginDTO ValidaResultadoInadimplencia(PermissaoInadimplencia permissao, Cliente pessoa)
 {
     if (pessoa.RetornoStatus == Cliente.StatusRetorno.Sucesso)
     {
         if (permissao.PermiteAcesso == (int)PermissaoInadimplencia.StatusAcesso.Permitido && !string.IsNullOrEmpty(permissao.Mensagem))
         {
             return(new ValidaLoginDTO
             {
                 Validacao = ValidacaoLogin.InadimplenteTermos,
                 IdOrdemVenda = permissao.IdOrdemDeVenda,
                 Mensagem = permissao.Mensagem,
                 Perfil = new PerfilDTO
                 {
                     Matricula = pessoa.ID,
                     Especialidade = pessoa.Especialidade,
                     Nome = pessoa.Nome,
                     UrlAvatar = pessoa.Avatar,
                     Estado = pessoa.Estado
                 }
             });
         }
     }
     else if (pessoa.RetornoStatus == Cliente.StatusRetorno.SemAcesso)
     {
         if (permissao.PermiteAcesso == (int)PermissaoInadimplencia.StatusAcesso.Negado && !string.IsNullOrEmpty(permissao.Mensagem))
         {
             return(new ValidaLoginDTO
             {
                 Validacao = ValidacaoLogin.ErroMensagem,
                 Mensagem = permissao.Mensagem
             });
         }
     }
     return(null);
 }
 public int SetAceiteTermosPermissaoInadimplencia(PermissaoInadimplencia aceiteTermo)
 {
     return(new AlunoEntity().SetAceiteTermosPermissaoInadimplencia(aceiteTermo));
 }