Commit 53db1ec642bde42b80a647ef28f6862bbaa48b82

Authored by Eduardo Heinske
1 parent 7b9b308b

Correção no recebimento de processos de outra unidade e do travamento da tela de…

… processos em caso de indisponibilidade do módulo
PENIntegracao.php
@@ -32,7 +32,17 @@ class PENIntegracao extends SeiIntegracao { @@ -32,7 +32,17 @@ class PENIntegracao extends SeiIntegracao {
32 $dblIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento(); 32 $dblIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento();
33 $numIdUsuario = SessaoSEI::getInstance()->getNumIdUsuario(); 33 $numIdUsuario = SessaoSEI::getInstance()->getNumIdUsuario();
34 $numIdUnidadeAtual = SessaoSEI::getInstance()->getNumIdUnidadeAtual(); 34 $numIdUnidadeAtual = SessaoSEI::getInstance()->getNumIdUnidadeAtual();
  35 + $objInfraParametro = new InfraParametro(BancoSEI::getInstance());
  36 +
  37 + if(!file_exists($objInfraParametro->getValor('PEN_LOCALIZACAO_CERTIFICADO_DIGITAL'))){
  38 + return array("NÃO DISPONÍVEL");
  39 + }
  40 +
35 $objProcessoEletronicoRN = new ProcessoEletronicoRN(); 41 $objProcessoEletronicoRN = new ProcessoEletronicoRN();
  42 +
  43 + if(!$objProcessoEletronicoRN->testarDisponibilidade()){
  44 + return array();
  45 + }
36 46
37 //Verifica se o processo encontra-se aberto na unidade atual 47 //Verifica se o processo encontra-se aberto na unidade atual
38 $objAtividadeRN = new AtividadeRN(); 48 $objAtividadeRN = new AtividadeRN();
rn/ProcessoEletronicoRN.php
@@ -141,6 +141,17 @@ class ProcessoEletronicoRN extends InfraRN { @@ -141,6 +141,17 @@ class ProcessoEletronicoRN extends InfraRN {
141 } 141 }
142 } 142 }
143 143
  144 + public function testarDisponibilidade(){
  145 +
  146 + try{
  147 + $this->testaUrl($this->strWSDL, $this->options['local_cert']);
  148 + return true;
  149 + } catch (Exception $ex) {
  150 + return false;
  151 + }
  152 +
  153 + }
  154 +
144 private function getObjPenWs() { 155 private function getObjPenWs() {
145 156
146 if($this->objPenWs == null) { 157 if($this->objPenWs == null) {
rn/ReceberProcedimentoRN.php
@@ -475,7 +475,24 @@ class ReceberProcedimentoRN extends InfraRN @@ -475,7 +475,24 @@ class ReceberProcedimentoRN extends InfraRN
475 475
476 //$objProcedimentoDTO = $arrObjProcedimentoDTO[0]; 476 //$objProcedimentoDTO = $arrObjProcedimentoDTO[0];
477 477
478 - 478 + $objAtividadeDTO = new AtividadeDTO();
  479 + $objAtividadeDTO->setStrIdTarefaModuloTarefa(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO);
  480 + $objAtividadeDTO->setDblIdProcedimentoProtocolo($parDblIdProcedimento);
  481 + $objAtividadeDTO->setOrd('Conclusao', InfraDTO::$TIPO_ORDENACAO_DESC);
  482 + $objAtividadeDTO->setNumMaxRegistrosRetorno(1);
  483 + $objAtividadeDTO->retNumIdUnidade();
  484 +
  485 + $objAtividadeRN = new AtividadeRN();
  486 + $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO);
  487 + $numIdUnidade = SessaoSEI::getInstance()->getNumIdUnidadeAtual();
  488 +
  489 + if($arrObjAtividadeDTO){
  490 + $objAtividadeDTO = $arrObjAtividadeDTO[0];
  491 + $numIdUnidade = $objAtividadeDTO->getNumIdUnidade();
  492 + }
  493 +
  494 + SessaoSEI::getInstance(false)->simularLogin('SEI', null, null, $numIdUnidade);
  495 +
479 $objSeiRN = new SeiRN(); 496 $objSeiRN = new SeiRN();
480 497
481 $objAtividadeDTO = new AtividadeDTO(); 498 $objAtividadeDTO = new AtividadeDTO();
@@ -483,7 +500,6 @@ class ReceberProcedimentoRN extends InfraRN @@ -483,7 +500,6 @@ class ReceberProcedimentoRN extends InfraRN
483 $objAtividadeDTO->setDblIdProtocolo($parDblIdProcedimento); 500 $objAtividadeDTO->setDblIdProtocolo($parDblIdProcedimento);
484 $objAtividadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); 501 $objAtividadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual());
485 502
486 - $objAtividadeRN = new AtividadeRN();  
487 $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); 503 $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO);
488 $flgReabrir = true; 504 $flgReabrir = true;
489 505