Diferenças

Aqui você vê as diferenças entre duas revisões dessa página.

Link para esta página de comparações

Ambos lados da revisão anterior Revisão anterior
Próxima revisão
Revisão anterior
pres:gerti:gestao_de_ativos:siap_2:validacao_final_ocorrencia [23/10/2026 15:22] – jsdiaspres:gerti:gestao_de_ativos:siap_2:validacao_final_ocorrencia [23/10/2026 20:37] (atual) – jsdias
Linha 112: Linha 112:
  
 Logo, a interface não permite ao usuário adicionar ou remover ocorrências manualmente por esses controles. Logo, a interface não permite ao usuário adicionar ou remover ocorrências manualmente por esses controles.
 +
 +===== 3. Todas as variáveis =====
 +
 +==== 3.1 Etapa 1 - Identificação ====
 +
 +^Key^Campo/Título^Tipo^Cols^Obrig.^Readonly|
 +|''nomeOrgao'' |Órgão/Entidade|input|12|Não|Sim|
 +|''cpfServidor'' |CPF do servidor|input-cpf|4|Não|Sim|
 +|''nomeServidor'' |Nome do servidor|input|8|Não|Sim|
 +|''desc_motivoAposentadoria'' |Motivo da aposentadoria|input|6|Não|Sim|
 +|''nomeCargoAposentadoria'' |Descrição completa do cargo da aposentadoria|input|6|Não|Sim|
 +
 +==== 3.2 Etapa 1 - Fundamento jurídico ====
 +
 +^Key^Campo/Título^Tipo^Cols^Obrig.^Readonly^Rows|
 +|''dispLegalSimplif'' |Regra aplicada|textarea|12|Não|Sim|4|
 +|''descFundamLegalSimplif'' |Descrição resumida|textarea|12|Não|Sim|4|
 +|''descFundamLegalCompleto'' |Detalhamento dos requisitos|textarea|12|Não|Sim|4|
 +|''dispLegalCompletoAposent_op'' |Fundamentação legal consolidada|textarea|12|Não|Sim|4|
 +
 +==== 3.3 Etapa 1 - Datas e tempos ====
 +
 +^Key^Título^Tipo^Cols^Readonly|
 +|''dataEfetExercCargoInicial'' |Data do efetivo exercício no cargo de ingresso|input|6|Sim|
 +|''dataFimTempoContribServico'' |Data do fim da apuração do tempo de contribuição/serviço|input|6|Sim|
 +|''tempoCargoAposen'' |Tempo no cargo da aposentadoria|input|6|Sim|
 +|''tempoCondicaoSegDeficienciaConversao'' |Tempo na condição de pessoa com deficiência após conversão|input|6|Sim|
 +|''tempoCondicoesEspeciasConversao1'' |Tempo em atividades sob condições especiais após conversão|input|6|Sim|
 +|''totalTempoServPublico'' |Total de tempo de serviço público|input|6|Sim|
 +|''totalTempoContrbServ'' |Total de tempo de contribuição/serviço|input|6|Sim|
 +
 +Nenhum desses campos é obrigatório na configuração da etapa.
 +
 +**Regra condicional**
 +
 +Os campos:
 +
 +tempoCondicaoSegDeficienciaConversao
 +
 +tempoCondicoesEspeciasConversao1
 +
 +são exibidos quando:
 +
 +model.cod_motivoAposentadoria == '5'
 +
 +==== 3.4 Etapa 1 - Tabela de atos de concessão ====
 +
 +^Key^Título^Tipo^Cols^Obrig.^Readonly|
 +|''tab_atoAposentadoria'' |Ato(s) de concessão da aposentadoria|table-editable|12|Não|Sim|
 +|''col_numAto'' |Número/ano do ato|input|3|Não|Sim|
 +|''col_dataAto'' |Data do ato|input-date|3|Não|Sim|
 +|''col_dataPublicacao'' |Data da publicação|input-date|3|Não|Sim|
 +
 +==== 3.5 Etapa 1 - Ato de fixação de proventos ====
 +
 +^Key^Título^Tipo^Cols^Obrig.^Readonly|
 +|''tab_atoFixProventos'' |Ato de fixação de proventos|table-editable|12|Não|Sim|
 +|''col_numAnoAto'' |Número/ano do ato|input|6|Não|Sim|
 +
 +==== 3.6 Etapa 1 - Variáveis ocultas ====
 +
 +^Key^Utilização|
 +|''proporcaoProventos'' |Proporção dos proventos|
 +|''baseCalcProventos'' |Base de cálculo|
 +|''padraoRemuneratorio'' |Padrão remuneratório|
 +|''retornoServCriticas'' |Retorno relacionado às críticas|
 +|''numMatricula'' |Matrícula|
 +|''cod_motivoAposentadoria'' |Código do motivo|
 +|''processo_cdVinculo'' |Vínculo BPM|
 +|''todasVariaveis'' |Coleção das variáveis recuperadas do fluxo|
 +
 +Destaque: todasVariaveis
 +
 +Esta variável merece tratamento especial na documentação.
 +
 +A integração Busca todas variáveis do fluxo possui retorno:​‌
 +
 +value = array
 +
 +name = todasVariaveis
 +
 +Na etapa 2, buscaVariaveisFluxo_e_enviarDados() percorre a coleção utilizando:
 +
 +model.todasVariaveis[r].name
 +
 +model.todasVariaveis[r].value
 +
 +para tratar as variáveis recuperadas durante a conclusão.
 +
 +==== 3.7 Etapa 2 - Ocorrências ====
 +
 +^Key^Título^Tipo^Cols^Obrig.^Readonly^Observação|
 +|''tab_criticas5A2'' |Ocorrências|table-editable|12|Não|Não|Tabela principal de ocorrências|
 +|''col_codigoCritica'' |Código|input|2|Não|Sim|Código da ocorrência|
 +|''col_descCritica'' |Descrição|textarea|6|Não|Sim|Descrição da ocorrência|
 +|''col_justificativa'' |Justificativa|textarea|3|Não|**Não** |Campo editável pelo usuário|
 +
 +Mensagem quando não há ocorrência
 +
 +A etapa possui msg_ocorrecias, um componente paragraph, cuja mensagem informa explicitamente que nenhuma ocorrência foi identificada até o momento e que outras verificações ocorrerão posteriormente na fiscalização do TCE-GO.
 +
 +==== 3.8 Etapa 2 - Decisão/encaminhamento ====
 +
 +^Key^Título^Tipo^Cols^Obrigatório^Readonly|
 +|''bt_comoDesejaProsseguir'' |Como deseja prosseguir?|radios|4|**Sim** |Não|
 +|''sel_etapaRetorno'' |Selecione a etapa para retorno|select|4|Não|Não|
 +
 +bt_comoDesejaProsseguir
 +
 +1 = Concluir preenchimento e enviar ao TCE
 +
 +2 = Retornar nos formulários para alteração
 +
 +sel_etapaRetorno
 +
 +1 = Dados básico
 +
 +2 = Dados do fundamento jurídico
 +
 +3 = Dados do histórico funcional
 +
 +4 = Documentos de formalização
 +
 +==== 3.9 Etapa 2 - Variáveis auxiliares/PDF ====
 +
 +^Key^Tipo^Readonly^Observação|
 +|''sel_etapaRetorno_pdf'' |input|Sim|Auxiliar de geração/exibição em PDF|
 +|''tab_criticas5A2_pdf'' |input|Sim|Auxiliar de exibição das ocorrências no PDF|
 +|''msg_ocorrecias_pdf'' |input|Sim|Auxiliar da mensagem de ausência de ocorrência|
 +
 +Esses campos são ocultados da tela e do próprio PDF por suas condições de exibição, funcionando como variáveis auxiliares de controle.
 +
 +==== 3.10 Etapa 2 - Campos ocultos ====
 +
 +O agrupador Campos Ocultos da segunda etapa contém:
 +
 +^Key^Finalidade|
 +|''dataHoraInfoSobreApostila'' |Data/hora vinculada às informações da apostila|
 +|''nomeRespAssApostila'' |Nome do responsável relacionado à apostila|
 +|''processoTceHub'' |Variável de processo relacionada ao TCE Hub|
 +
 +===== 4. Integrações =====
 +
 +Considerando as duas etapas, existem duas integrações distintas.
 +
 +==== 4.1 Busca todas variáveis do fluxo ====
 +
 +^Propriedade^Valor|
 +|Nome|Busca todas variáveis do fluxo|
 +|Evento|''click'' |
 +|Elemento|''cpfServidor'' |
 +|Serviço|[[:pres:gerti:gestao_de_ativos:siap_2:solarbpm|SolarBPM]] - Consulta todas variáveis 2|
 +|Operação|''GET_/bpm-server-adm/bindings/{cdVinculo}/variables'' |
 +|Send Model|''false'' |
 +
 +**Finalidade correta**
 +
 +A finalidade principal dessa integração é recuperar as variáveis existentes na instância BPM e preencher todasVariaveis como array, além dos retornos individualmente mapeados.
 +
 +A segunda etapa possui a função:
 +
 +buscaVariaveisFluxo_e_enviarDados()
 +
 +Ela verifica a quantidade de registros em:
 +
 +model.todasVariaveis.length
 +
 +e percorre cada item através de:
 +
 +model.todasVariaveis[r].name
 +
 +model.todasVariaveis[r].value
 +
 +Portanto, a consulta de todasVariaveis participa da rotina de conclusão do formulário, e não deve ser documentada simplesmente como uma integração destinada a carregar visualmente os campos readonly da aba 1.
 +
 +==== 4.2 Nome responsável apostila (no SIAP 2.0 a utilidade desta integração foi removida) ====
 +
 +Esta integração pertence à segunda etapa.
 +
 +^Propriedade^Valor|
 +|Nome|Nome responsável apostila|
 +|Evento|''load'' |
 +|Serviço|''cpa-core-backend'' |
 +|Operação|''POST_/s/integracao-fd/consulta-usuario-logado'' |
 +|Send Model|''false'' |
 +
 +Entre os retornos configurados estão:
 +
 +  * dataHoraInfoSobreApostila;
 +  * nomeRespAssApostila;
 +  * tab_criticas5A2;
 +  * bt_comoDesejaProsseguir;
 +  * sel_etapaRetorno;
 +  * variáveis auxiliares de PDF.
 +
 +O mapeamento explícito:
 +
 +nmUsuario → nomeRespAssApostila
 +
 +recupera o nome do usuário para nomeRespAssApostila.
 +
 +===== 5. Botões =====
 +
 +==== Etapa 1 ====
 +
 +Prosseguir para próxima aba
 +
 +^Propriedade^Valor|
 +|Key|''submit_1'' |
 +|Tipo|submit|
 +|Título|Prosseguir para próxima aba|
 +|Função|''formFunctions.nextStep'' |
 +
 +Botão técnico de carregamento
 +
 +^Propriedade^Valor|
 +|Key|''btn_load'' |
 +|Tipo|button|
 +|Exibição|''false'' |
 +|Função|''carregaDadosIniciais'' |
 +
 +==== Etapa 2 ====
 +
 +**Voltar para aba anterior**
 +
 +Key: btn_3
 +
 +Função: formFunctions.previousStep
 +
 +Retorna para a primeira etapa.
 +
 +**Salvar**
 +
 +Key: btn_salvar
 +
 +Função: formFunctions.saveDraft
 +
 +**Concluir formulário**
 +
 +Key: submit_1
 +
 +Tipo: submit
 +
 +Função: finalizarTarefa
 +
 +**Botão técnico btn_load**
 +
 +Key: btn_load
 +
 +Função: carregaDadosIniciais
 +
 +showCondition: false
 +
 +===== 6. Principais Regras de Negócio =====
 +
 +==== RN-VFO-01 - Conferência antes da decisão ====
 +
 +A tarefa separa a conferência dos dados, na etapa 1, da análise das ocorrências e decisão de encaminhamento, na etapa 2.
 +
 +==== RN-VFO-02 - Ocorrências protegidas contra alteração estrutural ====
 +
 +Código e descrição são readonly e a função ''ocultaBotao_excluir_e_add_tab_criticas5A2()''  remove da interface os controles para adicionar/remover ocorrências.
 +
 +==== RN-VFO-03 - Justificativa é editável ====
 +
 +A coluna ''col_justificativa''  é o campo editável da tabela de ocorrências.
 +
 +==== RN-VFO-04 - Decisão obrigatória ====
 +
 +''bt_comoDesejaProsseguir''  possui ''required=true''.
 +
 +==== RN-VFO-05 - Retorno selecionável ====
 +
 +Caso o fluxo de decisão seja de retorno para alteração, o formulário disponibiliza ''sel_etapaRetorno''  com quatro destinos configurados.
 +
 +==== RN-VFO-06 - Validação antes da conclusão ====
 +
 +''finalizarTarefa()''  executa ''Class_ocultaCampos()''  e interrompe o processamento quando identifica campos inválidos, exibindo alerta:
 +
 +Existem campos com valores inválidos.
 +
 +==== RN-VFO-07 - Preparação para PDF ====
 +
 +Antes da sequência de conclusão, ''finalizarTarefa()''  chama:
 +
 +pdf_decideMostrarOuNaoNoPDF(form, model, context);
 +
 +===== 7. Principais funções JavaScript =====
 +
 +==== 7.1 Etapa 1 ====
 +
 +A primeira etapa possui 5 funções.
 +
 +^Função^Finalidade|
 +|''concatenacao()'' |Acrescenta a unidade "anos" a ''tempoMinContribServ'' conforme condição implementada|
 +|''carregaDadosIniciais()'' |Executa a inicialização|
 +|''onLoadFuncao()'' |Inicializa ajustes de interface e botão técnico|
 +|''ajustaTamanhoTabelas()'' |Realiza ajustes CSS de tabelas referenciadas|
 +|''acionaIntegracaoBuscaTodasVariaveis()'' |Dispara o mecanismo associado à consulta das variáveis do fluxo|
 +
 +----
 +
 +==== 7.2 Etapa 2 ====
 +
 +A segunda etapa possui um conjunto mais amplo de funções, incluindo:
 +
 +^Função^Finalidade|
 +|''retornaForm1()'' |Rotina relacionada ao retorno de formulário|
 +|''onLoadFuncao()'' |Inicialização da segunda etapa|
 +|''carregaCriticas()'' |Tratamento/carregamento das ocorrências|
 +|''limpaSelecaoEtapaRetorno()'' |Limpa seleção da etapa de retorno|
 +|''Class_ocultaCampos()'' |Controla visibilidade/obrigatoriedade e validação de campos|
 +|''ocultaShow_atencao()'' |Controla exibição do alerta|
 +|''ocultaBotao_excluir_e_add_tab_criticas5A2()'' |Oculta controles de inclusão/exclusão da tabela de ocorrências|
 +|''carregaDadosIniciais()'' |Realiza inicialização dos dados da aba|
 +|''removerLinhas()'' |Rotina para remoção/tratamento de linhas|
 +|''ocultaTabelaOcorrencias()'' |Controla visibilidade da tabela de ocorrências|
 +|''finalizarTarefa()'' |Coordena validação e conclusão do formulário|
 +|''pdf_decideMostrarOuNaoNoPDF()'' |Controla quais elementos serão apresentados no PDF|
 +|''exibeAlerta()'' |Exibe mensagens de validação|
 +|''escondeAlerta()'' |Oculta mensagens|
 +|''dataFinalizacaoTarefa()'' |Rotina relacionada à data de finalização|
 +|''variaveisParaBusca_NAO_USADO()'' |Implementação identificada explicitamente como não utilizada|
 +|''buscaVariaveisFluxo_e_enviarDados_DESATIVADO()'' |Versão explicitamente identificada como desativada|
 +|''variaveisParaBusca()'' |Prepara variáveis para o processamento|
 +|''buscaVariaveisFluxo_e_enviarDados()'' |Percorre ''todasVariaveis'' e trata os valores recuperados para a sequência de conclusão|
 +|''iniciaPropriedadesForm()'' |Inicializa propriedades e controles do formulário|
 +
 +==== Função crítica: buscaVariaveisFluxo_e_enviarDados() ====
 +
 +Essa é uma das funções centrais da segunda etapa.
 +
 +Ela utiliza:
 +
 +model.todasVariaveis.length
 +
 +e, para cada registro:
 +
 +model.todasVariaveis[r].name
 +
 +model.todasVariaveis[r].value
 +
 +O código trata diferentes variáveis do processo, incluindo estruturas tabulares, e monta objetos a partir dos valores recuperados.
 +
 +===== 8. Fluxo funcional completo das duas etapas =====
 +
 +{{:pres:gerti:gestao_de_ativos:siap_2:fluxofuncionalvalidacaofinaleocorrencias.png?nolink&321x755}}
 +
 +===== 9. Pontos técnicos importantes =====
 +
 +==== todasVariaveis é central para a conclusão ====
 +
 +A interpretação correta da arquitetura é:
 +
 +{{:pres:gerti:gestao_de_ativos:siap_2:pontostecnicosimportantesvalidfinaleocorrencias.png?nolink&254x338}}
 +
 +A variável ''todasVariaveis''  representa, portanto, uma estrutura intermediária importante para o processamento realizado na segunda etapa.
 +
 +==== Controle dinâmico da interface ====
 +
 +''Class_ocultaCampos()''  contém lógica para mostrar/ocultar campos e tratar obrigatoriedade dinamicamente. A função também participa da validação executada por ''finalizarTarefa()''.
 +
 +==== Ocorrências controladas ====
 +
 +A tabela ''tab_criticas5A2''  não é livremente manipulável: o próprio [[:pres:gerti:gestao_de_ativos:siap_2:javascript|JavaScript]] oculta os controles de inclusão e exclusão, enquanto código e descrição permanecem readonly.
 +
 +===== 10. Resumo Executivo =====
 +
 +A tarefa **Validação final e ocorrências**  é uma etapa de fechamento composta por **duas abas funcionalmente distintas**.
 +
 +A **primeira etapa**  concentra a conferência das informações produzidas anteriormente no processo, exibindo em modo somente leitura a identificação do servidor, cargo, fundamento jurídico, datas, tempos previdenciários e atos de aposentadoria/fixação de proventos.
 +
 +A **segunda etapa**  concentra o tratamento efetivo da validação: apresenta a tabela de **Ocorrências**, mantém código e descrição protegidos contra edição, permite registrar **Justificativa**  e exige que o usuário escolha **Como deseja prosseguir?**. As opções são concluir o preenchimento e enviar ao TCE ou retornar aos formulários para alteração. Neste último caso, o usuário pode direcionar o retorno para Dados básicos, Dados do fundamento jurídico, Dados do histórico funcional ou Documentos de formalização.
 +
 +Do ponto de vista técnico, a integração **Busca todas variáveis do fluxo**  deve ser entendida em conjunto com ''todasVariaveis''. A integração alimenta essa coleção com as variáveis da instância BPM e, na lógica da segunda etapa, ''buscaVariaveisFluxo_e_enviarDados()''  percorre os registros por ''name''  e ''value''  durante o processamento relacionado à conclusão. (Responsável por preencher a variável ''processoTceHub ''que é enviada no serviço de críticas dentro do fluxo)
 +
 +A tarefa ainda possui uma segunda integração, **Nome responsável apostila**, executada no carregamento da segunda etapa para obter, entre outros retornos, ''nomeRespAssApostila''. (Neste SIAP 2.0 a integração executa mas os dados de retorno não são utilizados nesta versão do SIAP)
 +
 +Por fim, embora a rotina de conclusão manipule informações recuperadas de ''todasVariaveis'', **a versão 29 não demonstra registro ativo de novos campos em''tab_relacoesInfoalteradas''  **, pois as referências observadas a ''preencheInformacoesAlteradas()''  estão comentadas. Por isso, a auditoria deve ser documentada como **não explicitamente implementada nesta tarefa**, evitando atribuir incorretamente os campos editáveis da etapa 2 à ''tab_relacoesInfoalteradas''.
 +
 +===== 11. Tela do formulário e vídeos =====
 +
 +===== Tela aba 1 =====
 +
 +{{:pres:gerti:gestao_de_ativos:siap_2:validacaofinaleocorrenciasaba1.png?nolink&1798x989}}
 +
 +===== Tela aba 2 =====
 +
 +{{:pres:gerti:gestao_de_ativos:siap_2:validacaofinaleocorrenciasaba2.png?nolink&1747x868}}
 +
 +===== Vídeo demonstrativo =====
  
  
  • pres/gerti/gestao_de_ativos/siap_2/validacao_final_ocorrencia.1792768961.txt.gz
  • Última modificação: 23/10/2026 15:22
  • por jsdias