Mudanças entre as edições de "Comportamento Verificador Periódico"
(Criou página com ' <!-- EM CONSTRUÇÃO - ***** O que faz o Verificador Periódico? ***** O Verificador Periódico é um job da aplicação PJe que é executado diariamente em determina...') |
Edição das 20h07min de 8 de agosto de 2014
> NÃO ESTUDEI!
8- método "fecharPautaAutomaticamente()" -- Rotina para fechamento de pautas automaticamente:
8.1 - Obtém as pautas conforme critérios:
builder.append("SELECT s"); builder.append(" FROM Sessao AS s");
== Seleciona todas as sessões (tb_sessao)
builder.append(" JOIN s.orgaoJulgadorColegiado AS ojc");
== cujos órgãos julgadores colegiados dessas sessões
builder.append(" WHERE ojc.fechamentoAutomatico = true");
== permitem fechamento automático de pauta (tb_orgao_julgador_colgiado.in_fechamento_automatico)
builder.append(" AND (s.dataFechamentoPauta IS NULL OR to_char(s.dataFechamentoPauta, 'YYYYmmdd') > :dataReferencia)");
== e a data de fechamento da pauta da sessão (tb_sessao.dt_fechamento_pauta) é nula ou superior a data atual do sistema
builder.append(" AND (to_char((to_number(to_char(s.dataSessao, 'YYYYmmdd'), '99999999') - ojc.prazoDisponibilizaJulgamento), '99999999') <= :dataReferencia)");
== e a [ data da sessão(tb_sessao.dt_sessao)
- prazo de disponibilização da pauta de julgamento em dias(tb_orgao_julgador_colgiado.nr_disponibilizar_pauta)
]
seja inferior ou igual a data atual do sistema.
8.2 - Para cada pauta obtida no item 8.1: {fecharPauta(Integer idPauta, Date dataFechamento, boolean force) throws PJeBusinessException} 8.2.1- Obtém a 'data prevista' (campo dt_fechamento_pauta) para fechamento da pauta da sessão em questão. - Se a 'data prevista' é não nula e anterior a data de fechamento 'desejada' (parâmetro dataFechamento/data de referência = data atual do sistema) => sistema não termine fechar a pauta e grava msg no log 'Tentativa de fechar pauta de julgamento de sessão [{0}] já fechada ({1}) na data de referência ({2}). Ignorando.", sessao.getIdSessao(), dataPrevista, dataFechamento);' - Se a 'data prevista' é não nula e posterior a data de fechamento 'desejada' (parâmetro dataFechamento/data de referência = data atual do sistema) => sistema não termine fechar a pauta e grava msg no log 'Tentativa de fechar pauta de julgamento de sessão [{0}] com fechamento futuro previsto ({1}). Ignorando.", sessao.getIdSessao(), dataPrevista);' * Rotina é retornada e pauta não é fechada.
8.2.2- Se 'data prevista' está OK (ou seja, passou pelo passo 8.2.1): - Pauta da sessão é fechada - campo dt_fechamento_pauta é atualizado com o valor de dataFechamento/data de referência = data atual do sistema. - Procedimento para intimação automática: - Obtém todos os processos pautados na sessão (tabela tb_sessao_pauta_proc_trf) que foi fechada e para cada processo é feito: - Registro de movimento o processo: cód.417-Inclusão em pauta e seus complementos (data_hora e local) - Se o [Órgão Julgador Colegiado do processo tiver 'Intimação automática da pauta? = true'] E [Tipo de inclusão do processo (campo tp_inclusao da tabela tb_sessao_pauta_proc_trf) é igual a 'PA("Aptos para Pauta")' OU (processo permite intimação (campo in_permite_intimacao da tabela tb_sessao_pauta_proc_trf) não é nula e TRUE) ] - Será intimado os participantes para a sessão de julgamento: - Dados usados para intimar automanticamente: nr do processo, identificação da sessão, tipo do documento (parâmetro idTipoProcessoDocumentoIntimacaoPauta), modelo de documento (parâmetro idModeloIntimacaoPauta), tipo parte advogado (parâmetro idTipoParteAdvogado), valor do parâmetro 'pje:sessao:intimacaoMultipla'('Permite intimação múltipla para as partes'-texto do cadastro do Parâmetro, MAS NO CÓDIGO ESSE PARAMETRO ESTÁ SENDO USADO PARA RESTRINGIR QDO DESEJA INTIMAR SOMENTE ADVOGADO), data da sessão, hora da sessão - Montagem dos destinatários: considera as partes do polo ativo e passivo do processo em questão, porém se o parâmetro 'pje:sessao:intimacaoMultipla' for TRUE somente serão considerados as partes que são advogados. - Intimação é enviada automanticamente para os destinatários: * o tipo do prazo da intimação é 'data certa' * o meio de envio da intimação é 'Enviar via sistema' * a intimação é considerada como 'Documento novo' e esse documento é assinado com certificado pelo 'usuário do sistema' {id_usuário = 0; ds_login= sistema; ds_nome=Usuário do sistema == registrado na tabela acl.tb_usuario_login este usuário é criado pela carga inicial do sistema "carga base limpa"}
- Caso ocorra alguma exceção ao recuperar sessão de julgamento ou fechar pauta de sessão de julgamento ou outro erro,
uma mensagem de alerta é gravada na tabela de Alertas (tb_alerta); se ocorrer erro ao inserir alerta, uma msg de erro é gravada no log e o log é enviado para o email cadastrado no parâmetro "emailSistema". {logService.enviarLogPorEmail}
-->