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 32 $dblIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento();
33 33 $numIdUsuario = SessaoSEI::getInstance()->getNumIdUsuario();
34 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 41 $objProcessoEletronicoRN = new ProcessoEletronicoRN();
  42 +
  43 + if(!$objProcessoEletronicoRN->testarDisponibilidade()){
  44 + return array();
  45 + }
36 46  
37 47 //Verifica se o processo encontra-se aberto na unidade atual
38 48 $objAtividadeRN = new AtividadeRN();
... ...
rn/ProcessoEletronicoRN.php
... ... @@ -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 155 private function getObjPenWs() {
145 156  
146 157 if($this->objPenWs == null) {
... ...
rn/ReceberProcedimentoRN.php
... ... @@ -475,7 +475,24 @@ class ReceberProcedimentoRN extends InfraRN
475 475  
476 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 496 $objSeiRN = new SeiRN();
480 497  
481 498 $objAtividadeDTO = new AtividadeDTO();
... ... @@ -483,7 +500,6 @@ class ReceberProcedimentoRN extends InfraRN
483 500 $objAtividadeDTO->setDblIdProtocolo($parDblIdProcedimento);
484 501 $objAtividadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual());
485 502  
486   - $objAtividadeRN = new AtividadeRN();
487 503 $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO);
488 504 $flgReabrir = true;
489 505  
... ...