Exemplo n.º 1
0
        public IActionResult SelecionarMatricula(
            [FromServices] SigningConfigurations signingConfigurations,
            [FromServices] TokenConfigurations tokenConfigurations,
            string matricula)
        {
            try
            {
                bool pensionista = false;

                var usuario = new UsuarioProxy().BuscarPorCPF(Cpf);

                var contratoTrabalho   = new ContratoTrabalhoProxy().BuscarPorCpfComPlanoAtivo(Cpf).First(x => x.NR_REGISTRO == matricula);
                var cdPessoa           = contratoTrabalho.CD_PESSOA;
                var sqContratoTrabalho = contratoTrabalho.SQ_CONTRATO_TRABALHO;

                var processo = new ProcessoBeneficioProxy().BuscarPorCdPessoa(cdPessoa);
                if (processo != null)
                {
                    pensionista        = true;
                    sqContratoTrabalho = processo.SQ_CONTRATO_TRABALHO.Value;
                }

                var claims = new List <KeyValuePair <string, string> > {
                    new KeyValuePair <string, string>("Cpf", Cpf),
                    new KeyValuePair <string, string>("CdPessoa", cdPessoa.ToString()),
                    new KeyValuePair <string, string>("Admin", Admin ? "S" : "N"),
                    new KeyValuePair <string, string>("SqContratoTrabalho", sqContratoTrabalho.ToString()),
                    new KeyValuePair <string, string>("Pensionista", pensionista.ToString())
                };

                var token = AuthenticationToken.Generate(signingConfigurations, tokenConfigurations, Cpf, claims);

                return(Ok(new
                {
                    token.AccessToken,
                    Pensionista = pensionista
                }));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
Exemplo n.º 2
0
        public IActionResult BuscarMatriculas()
        {
            try
            {
                var contratosTrabalho = new ContratoTrabalhoProxy().BuscarPorCpfComPlanoAtivo(Cpf);
                var listaMatriculas   = contratosTrabalho
                                        .GroupBy(x => new { x.NR_REGISTRO, x.NO_EMPRESA })
                                        .Select(x => new
                {
                    Matricula = x.Key.NR_REGISTRO,
                    Empresa   = x.Key.NO_EMPRESA
                })
                                        .ToList();

                return(Ok(listaMatriculas));
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }