public string RetornaCargoAtivo(RetornoCargoDTO occupation) { string codigoCargoAtivo; if (occupation.codigoCargoSobreposto != null) { codigoCargoAtivo = occupation.codigoCargoSobreposto; } else { codigoCargoAtivo = occupation.codigoCargo; } return(codigoCargoAtivo); }
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); } }