コード例 #1
0
        public string RetornaCargoAtivo(RetornoCargoDTO occupation)
        {
            string codigoCargoAtivo;

            if (occupation.codigoCargoSobreposto != null)
            {
                codigoCargoAtivo = occupation.codigoCargoSobreposto;
            }
            else
            {
                codigoCargoAtivo = occupation.codigoCargo;
            }

            return(codigoCargoAtivo);
        }
コード例 #2
0
        public async Task <RetornoCargosServidorDTO> GetOccupationsRF(string rf)
        {
            if (string.IsNullOrWhiteSpace(rf))
            {
                return(null);
            }

            try
            {
                var profileApi  = new PerfilSgpAPI(endPoint);
                var occupations = await profileApi.GetCargosDeServidor(rf, _token);

                string codigoCargoAtivo;
                bool   occupationAccess = false;

                if (occupations == null)
                {
                    return(null);
                }

                var temAcesso = await profileApi.VerificaSeProfessorTemAcesso(rf, _token);

                if (occupations != null && temAcesso)
                {
                    var cargoProfessor = new RetornoCargoDTO();
                    cargoProfessor.codigoCargo = CODIGO_CARGO_PROFESSOR;
                    cargoProfessor.nomeCargo   = "Professor";
                    occupations.cargos.Add(cargoProfessor);
                }

                foreach (var occupation in occupations.cargos)
                {
                    codigoCargoAtivo = RetornaCargoAtivo(occupation);

                    if (codigoCargoAtivo == CODIGO_CARGO_CP || codigoCargoAtivo == CODIGO_CARGO_DIRETOR || codigoCargoAtivo == CODIGO_CARGO_AD)
                    {
                        occupationAccess = true;
                        break;
                    }
                }
                return(occupations);
            }

            catch (Exception ex)
            {
                return(null);
            }
        }