Expressões
Esta seção se destina a explicitar algumas expressões (EL) que devem ser usadas na construção de fluxos do PJe para atender determinadas situações.
Definir variável no fluxo
#{org.jboss.seam.bpm.processInstance.contextInstance.setVariable('<nome da variável', <valor>)}
Configura para uso futuro no fluxo uma variável cujo nome seja <nome da variável> para conter o valor especificado pelo valor respectivo.
Definir minuta em elaboração
#{org.jboss.seam.bpm.processInstance.contextInstance.setVariable('minutaEmElaboracao', processoHome.idProcessoDocumento)}
Configura para uso futuro no fluxo a variável minutaEmElaboração como sendo o documento em manutenção.
Configurar lançador de movimentações
#{lancadorMovimentosService.setCondicaoLancamentoMovimentosTemporarioNoFluxo('#{true}')}
Essa expressão configura o lançador de movimentações como associado à tarefa sendo configurada Ao setar o parâmetro para "false", o usuário está dizendo que o lançamento da movimentação não precisará ser confirmado em tarefa futura. O contrário diz que uma tarefa futura confirmará o movimento.
Vincular modelo à tarefa
#{modeloDocumento.set('<nome de tarefa>',<código(s) do(s) modelo(s) a ser(em) vinculado(s)>)}
Configura os modelos de documento passíveis de serem utilizados pela tarefa cujo nome é <nome da tarefa>. No caso de serem mais de um modelo, os códigos devem ser separados por vírgula.
Verificação de audiências marcadas
#{processoTrfHome.instance.processoAudienciaList.size() > 0 ? 'Verificar providência a adotar' : 'Escolher providência inicial'}
Verifica se houve audiências marcadas e encaminha o fluxo para as tarefas "Verificar providência a adota" ou "Escolher providência inicial", conforme existência de audiência ou não, respectivamente.
Verificação de preventos
Essa EL retorna "verdadeiro" se houver processos preventos relacionados ao processo do fluxo e falso caso contrário.
Transição de saída padrão
#{taskInstanceUtil.setFrameDefaultTransition(' <nome da transição de saída padrão> ')}
Vinculação da transição de saída padrão da tarefa
Atos de comunicação em aberto
#{atoComunicacaoService.getAtosComunicacaoAbertos(processoJudicialService.findById(org.jboss.seam.bpm.processInstance.contextInstance.getVariable('processo'))) != 0}
Verifica existência de atos de comunicação em aberto
Existência do movimento com complemento
#{processoTrfHome.existeMovimentoCompletoTipoDominio('51;50;36;e'}
Verifica se há movimento com complemento registrado no processo (código do movimento e complemento)
Existência do movimento
#{processoTrfHome.existeMovimentoLancadoPorIdEvento(848)}
Verifica se há movimento lançado com aquele identificador
Existência de sentença líquida
#{resultadoSentencaService.isPossuiSentencaLiquida()}
Verifica se há sentença líquida lançada no processo
Existência de posto avançado
#{postoAvancadoAction.numeroDePostosDoOrgaoJulgador() > 0}
Verifica se o OJ possui posto avançado
Verificação de documento de magistrado assinado
#{!resultadoSentencaService.isUltimoSentencaDecisaoDespachoAssinado()}
Verifica se a última sentença, despacho ou decisão está assinada
Verificação de último documento do processo assinado
#{processoDocumentoHome.isUltimoDocumentoAssinado()}
Verifica se último documento do processo está assinado
Verifica movimentos
#{verificaEventoAction.verificarEventos(19, 28)}
Verifica se existem aqueles movimentos no processo
Verifica audiência
#{processoAudienciaHome.existeAudienciaPendenteProcesso()}
Verifica se há audiência pendente de ser realizada no processo
Recupera o posto avançado
#{processoTrfHome.instance.orgaoJulgador.postoAvancado}
Obtém o posto avançado do órgão julgador
Existência de carta precatória
#{comunicacaoProcessualAction.getExpedientesPrecatorias().size() > 0 ? 'Encaminhar Carta' : 'JoinComunicação'}
Verifica se há expedientes do tipo carta precatória (nó de decisão)
Sentença
#{org.jboss.seam.bpm.processInstance.contextInstance.getVariable('tipoSentenca') == 'true' ? 'Partes cientes?' : 'Controle de prazos diversos'}
Verifica se a variável criada “tiposentenca” está setada para true (nó de decisão)
Expedientes para o diário
#{comunicacaoProcessualAction.getExpedientesDiario().size() > 0 ? 'Publicar DJE' : 'Joincomunicação'}
Verifica se há expedientes enviados para o diário (nó de decisão)
Órgão público
#{processoJudicialService.findById(org.jboss.seam.bpm.processInstance.contextInstance.getVariable('processo')).haParteOrgaoPublico() ? 'Reexame necessário' : 'Registrar trânsito em julgado'}
Utilizado para verificar se há partes no processo do tipo órgão público
Expedientes para os correios
#{comunicacaoProcessualAction.getExpedientesCorreios().size() > 0 ? 'Imprimir Correspondência' : 'JoinComunicacao'}
Verifica se há expedientes enviados para correio (nó de decisão)
Expediente edital
#{comunicacaoProcessualAction.getExpedientesEdital().size() > 0 ? 'Encaminhar Edital' : 'JoinComunicação'}
Verifica se há expedientes do tipo edital (nó de decisão)
#{processoTrfHome.existeMovimentoCompletoTipoDominio('51;3;5;e')?'Minutar Despacho ou Decisão - Liq':(processoTrfHome.existeMovimentoCompletoTipoDominio('51;3;6;e')?'Minutar Despacho ou Decisão - Liq':'Minutar Sentença - Liq')}
Verifica se há movimento com complemento registrado no processo (código do movimento e complemento (nó de decisão)
#{competenciaClasseAssuntoHome.processoContemClasseAssunto('40;1116;991;992;993;990;261:55292') ? 'Iniciar Execução' : 'Verificar Valor'}
Verifica se há assunto cadastrado para processo (nó de decisão)
#{atoComunicacaoService.getAtosComunicacaoAbertos(processoJudicialService.findById(org.jboss.seam.bpm.processInstance.contextInstance.getVariable('processo'))) == 0 ? 'Prazos vencidos' : 'Aguardando término dos prazos'}
Verifica se há atos de comunicação em aberto (nó de decisão)
#{postoAvancadoAction.numeroDePostosDoOrgaoJulgador() == 1 ? 'Encaminhar posto avançado' : 'Escolher posto avançado' }
Verfica a quantidade de postos avançados do OJ (nó de decisão)
#{documentoJudicialService.haDocumentoNaoApreciado(org.jboss.seam.bpm.processInstance.contextInstance.getVariable('processo') ,62,23) ? 'Embargos de Declaração' : 'Aguardando prazo - recurso'}
Verifica se há expedientes não apreciados dos tipos especificados (nó de decisão)
#{processoAudienciaHome.existeAudienciaPendenteProcesso() ? 'Operações da Audiência' : 'Designar Audiência'}
Verifica se há audiência pendente de ser realizada no processo (nó de decisão)
#{processoTrfHome.isEmPedidoSegredoJustica() or processoTrfHome.isEmPedidoUrgencia ? 'Apreciar Urgentes' : 'Triagem Inicial'}
Verifica se há pedido de urgência ou segredo de justiça (nó de decisão)
#{comunicacaoProcessualAction.getExpedientesMandados().size() > 0 ? 'Tem uma Central?' : 'JoinComunicacao'}
Verifica se há expedientes do tipo mandado ou ofício (nó de decisão)
#{processoExpedienteManager.existeExpedienteAposUltimaSentenca(org.jboss.seam.bpm.processInstance.contextInstance.getVariable('processo')) ? 'Aguardando ciência' : 'Aguardando prazo - ED'}
Verifica se há expedientes após última sentença do processo (nó de decisão)
#{documentoJudicialService.haDocumentoNaoApreciado(org.jboss.seam.bpm.processInstance.contextInstance.getVariable('processo') ,62,47,5,42) ? 'Analisar manifestação' : 'Há órgão público?'}
Verifica se há documento não apreciado (nó de decisão)
#{processoParteExpedienteManager.todosTomaramCiencia(org.jboss.seam.bpm.processInstance.contextInstance.getVariable('processo') ) ? 'Aguardando prazo - ED' : 'Aguardando ciência'}
Verifica se todos os destinatários já tomaram ciência (nó de decisão)
#{processoTrfHome.isViolacaoFaixaValores() ? 'Valor Incompatível' : 'Verificar Urgência'}
Verifica se há violação de faixa de valores no processo (nó de decisão)
#{comunicacaoProcessualAction.getExpedientesCorreios().size() > 0 ? 'Imprimir Correspondência' : 'JoinComunicação'}
Verifica se há expedientes do tipo correios (nó de decisão)
#{comunicacaoProcessualAction.getExpedientesEletronico().size() > 0 ? 'Encaminhar Via Sistema' : 'JoinComunicacao'}
Verifica se há expedientes do tipo eletrônico (nó de decisão)
#{conectorMandados.haVariasCentraisMandado() ? 'Selecionar Central de Mandado' : 'Encaminhar Central Mandados'}
Verifica se há mais de uma central de mandado vinculado ao OJ (nó de decisão)
#{(processoTrfHome.isProcessoExecucao() )?'Iniciar Execução':(processoTrfHome.isProcessoLiquidacao() ? 'Iniciar Liquidação' : 'Verificar Valor')}
Verifica se é processo de execução ou é processo de liquidação (nó de decisão)
#{taskInstanceUtil.setFrameDefaultTransition('Término')}
Setar a transição padrão para a tarefa (evento)
#{modeloDocumento.set('Processo_Fluxo_prepararExpediente',14,56,69,8,92,93,161,216,217,218)}
Setar modelos de documentos a serem utilizados para a tarefa (evento)
#{tipoDocumento.set('minutaEmElaboracao',63,62)}
Setar tipos de documentos que podem ser utilizados na tarefa (evento)
#{preencherMovimento.deCodigo(51).comComplementoDeCodigo(3).doTipoDominio().preencherComElementoDeCodigo(36).lancarMovimento()}
Registrar movimento automaticamente (evento)
#{preencherMovimento.deCodigo(123).comComplementoDeCodigo(7).doTipoDominio().preencherComElementoDeCodigo(7051).comComplementoDeCodigo(18).doTipoDominio().preencherComElementoDeCodigo(38).lancarMovimento()}
Registrar movimento automaticamente (evento)
#{preencherMovimento.deCodigo(848).lancarMovimento()}
Registrar movimento automaticamente (evento)
#{org.jboss.seam.bpm.processInstance.contextInstance.setVariable('pje:aguardaEstouroPrazo', 'true')}
Cria a variável setando o valor inicial (evento)
#{org.jboss.seam.bpm.processInstance.contextInstance.setVariable('pje:aguardaFecharExpediente', 'true')}
Cria a variável setando o valor inicial (evento)
#{taskInstanceUtil.setVariable('ocultarAssinatura', 'true')}
Cria a variável setando o valor inicial (evento)
#{org.jboss.seam.bpm.processInstance.contextInstance.deleteVariable('pje:aguardaEstouroPrazo')}
Exclui a variável criada anteriormente (evento)
#{org.jboss.seam.bpm.processInstance.contextInstance.deleteVariable('pje:aguardaCiencia')}
Exclui a variável criada anteriormente (evento)
#{processInstance.getContextInstance().deleteVariable('minutaEmElaboracao')}
Exclui a variável criada anteriormente (evento)
#{lancadorMovimentosService.excluirUltimoMovimento('51')}
Excluir o último registro do movimento processual (evento)
#{lancadorMovimentosService.apagarMovimentosTemporarios()}
Exclui movimentos serializados (evento)
#{postoAvancadoAction.encaminharParaPostoAvancado()}
Remete o processo para o Posto avançado cadastrado para o OJ (evento)
#{postoAvancadoAction.retornarParaOrgaoJulgador()}
Executa o método que efetiva o retorno do processo para o OJ principal do posto avançado
#{preparaAtoComunicacaoAction.setMeiosComunicacao('P,E,C,M,L')}
Setar os meios de comunicação possíveis de uso no preparar ato de comunicação (evento)
#{preparaAtoComunicacaoAction.setMeiosComunicacao('P,D,E,C,M,L')}
Setar os meios de comunicação possíveis de uso no preparar ato de comunicação (evento)
#{resultadoSentencaService.homologarResultadoSentenca()}
Habilitar o botão para homologação de sentenca (evento)
#{resultadoSentencaService.excluirResultadoSentencaNaoHomologado()}
Exclui o registro de resultado de sentença (evento)
#{comunicacaoProcessualAction.enviarExpedientesLancarMovimentos('C', 'processoExpedienteAtual', '#{preencherMovimento.deCodigo(60).comComplementoDeCodigo(4).preencherComObjeto(processoExpedienteAtual.getProcessoDocumento().getTipoProcessoDocumento()).comComplementoDeCodigo(13).doTipoDominio().preencherComElementoDeCodigo(7030).lancarMovimento()}')}
Remete o expediente e registra o movimento processual de forma automatizada (evento)
#{comunicacaoProcessualAction.enviarExpedientesLancarMovimentos('M', 'processoExpedienteAtual', '#{preencherMovimento.deCodigo(60).comComplementoDeCodigo(4).preencherComObjeto(processoExpedienteAtual.getProcessoDocumento().getTipoProcessoDocumento()).comComplementoDeCodigo(13).doTipoDominio().preencherComElementoDeCodigo(7030).lancarMovimento()}#{preencherMovimento.deCodigo(50079).comComplementoDeCodigo(5037).doTipoDominio().preencherComElementoDeCodigo(7238).comComplementoDeCodigo(7).doTipoDominio().preencherComElementoDeCodigo(7051).comComplementoDeCodigo(18).doTipoDominio().preencherComElementoDeCodigo(7084).lancarMovimento()}')}
Remete o expediente e registra o movimento processual de forma automatizada (evento)
#{comunicacaoProcessualAction.enviarExpedientesLancarMovimentos('E', 'processoExpedienteAtual', '#{preencherMovimento.deCodigo(60).comComplementoDeCodigo(4).preencherComObjeto(processoExpedienteAtual.getProcessoDocumento().getTipoProcessoDocumento()).comComplementoDeCodigo(13).doTipoDominio().preencherComElementoDeCodigo(7030).lancarMovimento()}')}
Remete o expediente e registra o movimento processual de forma automatizada (evento)