Commit 5fad83cfe179c3add5f943a62fda8d917e2bfa6d
1 parent
291d4332
Exists in
master
and in
21 other branches
[Fixed #14] Melhoria em tratamentos de erros provenientes de webservices
Showing
1 changed file
with
115 additions
and
168 deletions
Show diff stats
rn/ProcessoEletronicoRN.php
| ... | ... | @@ -38,8 +38,6 @@ class ProcessoEletronicoRN extends InfraRN { |
| 38 | 38 | // 02 a 18 estão registrados na tabela rel_tarefa_operacao |
| 39 | 39 | public static $OP_OPERACAO_REGISTRO = "01"; |
| 40 | 40 | |
| 41 | - | |
| 42 | - | |
| 43 | 41 | const ALGORITMO_HASH_DOCUMENTO = 'SHA256'; |
| 44 | 42 | |
| 45 | 43 | /** |
| ... | ... | @@ -73,7 +71,6 @@ class ProcessoEletronicoRN extends InfraRN { |
| 73 | 71 | "99" => "Outro" |
| 74 | 72 | ); |
| 75 | 73 | |
| 76 | - | |
| 77 | 74 | private $strWSDL = null; |
| 78 | 75 | private $objPenWs = null; |
| 79 | 76 | private $options = null; |
| ... | ... | @@ -140,8 +137,7 @@ class ProcessoEletronicoRN extends InfraRN { |
| 140 | 137 | @exec($strCommand, $arrOutput, $numRetorno); |
| 141 | 138 | |
| 142 | 139 | if($numRetorno > 0){ |
| 143 | - | |
| 144 | - throw new InfraException('Falha de comunicação com o Barramento de Serviços. Por favor, tente novamente mais tarde.', $e); | |
| 140 | + throw new InfraException('Falha de comunicação com o Processo Eletrônico Nacional. Por favor, tente novamente mais tarde.'); | |
| 145 | 141 | } |
| 146 | 142 | } |
| 147 | 143 | |
| ... | ... | @@ -170,8 +166,9 @@ class ProcessoEletronicoRN extends InfraRN { |
| 170 | 166 | $this->objPenWs = new BeSimple\SoapClient\SoapClient($this->strWSDL, $this->options); |
| 171 | 167 | } |
| 172 | 168 | } catch (Exception $e) { |
| 173 | - $mensagem = InfraException::inspecionar($e); | |
| 174 | - throw new InfraException('Erro acessando serviço: ' . $mensagem, $e); | |
| 169 | + $mensagem = "Falha de comunicação com o Processo Eletrônico Nacional"; | |
| 170 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 171 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 175 | 172 | } |
| 176 | 173 | } |
| 177 | 174 | |
| ... | ... | @@ -206,7 +203,10 @@ class ProcessoEletronicoRN extends InfraRN { |
| 206 | 203 | } |
| 207 | 204 | } |
| 208 | 205 | } catch(Exception $e){ |
| 209 | - throw new InfraException("Erro durante obtenção dos repositórios", $e); | |
| 206 | + //throw new InfraException("Erro durante obtenção dos repositórios", $e); | |
| 207 | + $mensagem = "Falha na obtenção dos Repositórios de Estruturas Organizacionais"; | |
| 208 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 209 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 210 | 210 | } |
| 211 | 211 | |
| 212 | 212 | return $objRepositorioDTO; |
| ... | ... | @@ -238,7 +238,10 @@ class ProcessoEletronicoRN extends InfraRN { |
| 238 | 238 | } |
| 239 | 239 | } |
| 240 | 240 | } catch(Exception $e){ |
| 241 | - throw new InfraException("Erro durante obtenção dos repositórios", $e); | |
| 241 | + //throw new InfraException("Erro durante obtenção dos repositórios", $e); | |
| 242 | + $mensagem = "Falha na obtenção dos Repositórios de Estruturas Organizacionais"; | |
| 243 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 244 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 242 | 245 | } |
| 243 | 246 | |
| 244 | 247 | return $arrObjRepositorioDTO; |
| ... | ... | @@ -247,6 +250,7 @@ class ProcessoEletronicoRN extends InfraRN { |
| 247 | 250 | public function consultarEstrutura($idRepositorioEstrutura, $numeroDeIdentificacaoDaEstrutura, $bolRetornoRaw = false) { |
| 248 | 251 | |
| 249 | 252 | try { |
| 253 | + | |
| 250 | 254 | $parametros = new stdClass(); |
| 251 | 255 | $parametros->filtroDeEstruturas = new stdClass(); |
| 252 | 256 | $parametros->filtroDeEstruturas->identificacaoDoRepositorioDeEstruturas = $idRepositorioEstrutura; |
| ... | ... | @@ -276,7 +280,6 @@ class ProcessoEletronicoRN extends InfraRN { |
| 276 | 280 | return $objEstrutura; |
| 277 | 281 | } |
| 278 | 282 | else { |
| 279 | - | |
| 280 | 283 | $objEstruturaDTO = new EstruturaDTO(); |
| 281 | 284 | $objEstruturaDTO->setNumNumeroDeIdentificacaoDaEstrutura($objEstrutura->numeroDeIdentificacaoDaEstrutura); |
| 282 | 285 | $objEstruturaDTO->setStrNome($objEstrutura->nome); |
| ... | ... | @@ -289,48 +292,51 @@ class ProcessoEletronicoRN extends InfraRN { |
| 289 | 292 | } |
| 290 | 293 | } |
| 291 | 294 | catch (Exception $e) { |
| 292 | - throw new InfraException("Erro durante obtenção das unidades", $e); | |
| 295 | + //throw new InfraException("Erro durante obtenção das unidades", $e); | |
| 296 | + $mensagem = "Falha na obtenção de unidades externas"; | |
| 297 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 298 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 293 | 299 | } |
| 294 | 300 | } |
| 295 | 301 | |
| 296 | 302 | public function listarEstruturas($idRepositorioEstrutura, $nome='') |
| 297 | - { | |
| 298 | - $arrObjEstruturaDTO = array(); | |
| 303 | + { | |
| 304 | + $arrObjEstruturaDTO = array(); | |
| 299 | 305 | |
| 300 | - try{ | |
| 301 | - $idRepositorioEstrutura = filter_var($idRepositorioEstrutura, FILTER_SANITIZE_NUMBER_INT); | |
| 302 | - if(!$idRepositorioEstrutura) { | |
| 303 | - throw new InfraException("Repositório de Estruturas inválido"); | |
| 304 | - } | |
| 306 | + try{ | |
| 307 | + $idRepositorioEstrutura = filter_var($idRepositorioEstrutura, FILTER_SANITIZE_NUMBER_INT); | |
| 308 | + if(!$idRepositorioEstrutura) { | |
| 309 | + throw new InfraException("Repositório de Estruturas inválido"); | |
| 310 | + } | |
| 305 | 311 | |
| 306 | - $parametros = new stdClass(); | |
| 307 | - $parametros->filtroDeEstruturas = new stdClass(); | |
| 308 | - $parametros->filtroDeEstruturas->identificacaoDoRepositorioDeEstruturas = $idRepositorioEstrutura; | |
| 309 | - $parametros->filtroDeEstruturas->apenasAtivas = true; | |
| 310 | - | |
| 311 | - $nome = trim($nome); | |
| 312 | - if(is_numeric($nome)) { | |
| 313 | - $parametros->filtroDeEstruturas->numeroDeIdentificacaoDaEstrutura = intval($nome); | |
| 314 | - } else { | |
| 315 | - $parametros->filtroDeEstruturas->nome = utf8_encode($nome); | |
| 316 | - } | |
| 312 | + $parametros = new stdClass(); | |
| 313 | + $parametros->filtroDeEstruturas = new stdClass(); | |
| 314 | + $parametros->filtroDeEstruturas->identificacaoDoRepositorioDeEstruturas = $idRepositorioEstrutura; | |
| 315 | + $parametros->filtroDeEstruturas->apenasAtivas = true; | |
| 316 | + | |
| 317 | + $nome = trim($nome); | |
| 318 | + if(is_numeric($nome)) { | |
| 319 | + $parametros->filtroDeEstruturas->numeroDeIdentificacaoDaEstrutura = intval($nome); | |
| 320 | + } else { | |
| 321 | + $parametros->filtroDeEstruturas->nome = utf8_encode($nome); | |
| 322 | + } | |
| 317 | 323 | |
| 318 | - $result = $this->getObjPenWs()->consultarEstruturas($parametros); | |
| 324 | + $result = $this->getObjPenWs()->consultarEstruturas($parametros); | |
| 319 | 325 | |
| 320 | - if($result->estruturasEncontradas->totalDeRegistros > 0) { | |
| 326 | + if($result->estruturasEncontradas->totalDeRegistros > 0) { | |
| 321 | 327 | |
| 322 | - if(!is_array($result->estruturasEncontradas->estrutura)) { | |
| 323 | - $result->estruturasEncontradas->estrutura = array($result->estruturasEncontradas->estrutura); | |
| 324 | - } | |
| 328 | + if(!is_array($result->estruturasEncontradas->estrutura)) { | |
| 329 | + $result->estruturasEncontradas->estrutura = array($result->estruturasEncontradas->estrutura); | |
| 330 | + } | |
| 325 | 331 | |
| 326 | - foreach ($result->estruturasEncontradas->estrutura as $estrutura) { | |
| 327 | - $item = new EstruturaDTO(); | |
| 328 | - $item->setNumNumeroDeIdentificacaoDaEstrutura($estrutura->numeroDeIdentificacaoDaEstrutura); | |
| 329 | - $item->setStrNome(utf8_decode($estrutura->nome)); | |
| 330 | - $item->setStrSigla(utf8_decode($estrutura->sigla)); | |
| 331 | - $item->setBolAtivo($estrutura->ativo); | |
| 332 | - $item->setBolAptoParaReceberTramites($estrutura->aptoParaReceberTramites); | |
| 333 | - $item->setStrCodigoNoOrgaoEntidade($estrutura->codigoNoOrgaoEntidade); | |
| 332 | + foreach ($result->estruturasEncontradas->estrutura as $estrutura) { | |
| 333 | + $item = new EstruturaDTO(); | |
| 334 | + $item->setNumNumeroDeIdentificacaoDaEstrutura($estrutura->numeroDeIdentificacaoDaEstrutura); | |
| 335 | + $item->setStrNome(utf8_decode($estrutura->nome)); | |
| 336 | + $item->setStrSigla(utf8_decode($estrutura->sigla)); | |
| 337 | + $item->setBolAtivo($estrutura->ativo); | |
| 338 | + $item->setBolAptoParaReceberTramites($estrutura->aptoParaReceberTramites); | |
| 339 | + $item->setStrCodigoNoOrgaoEntidade($estrutura->codigoNoOrgaoEntidade); | |
| 334 | 340 | |
| 335 | 341 | if(!empty($estrutura->hierarquia->nivel)) { |
| 336 | 342 | $array = array(); |
| ... | ... | @@ -345,7 +351,10 @@ class ProcessoEletronicoRN extends InfraRN { |
| 345 | 351 | } |
| 346 | 352 | |
| 347 | 353 | } catch (Exception $e) { |
| 348 | - throw new InfraException("Erro durante obtenção das unidades", $e); | |
| 354 | + //throw new InfraException("Erro durante obtenção das unidades", $e); | |
| 355 | + $mensagem = "Falha na obtenção de unidades externas"; | |
| 356 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 357 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 349 | 358 | } |
| 350 | 359 | |
| 351 | 360 | return $arrObjEstruturaDTO; |
| ... | ... | @@ -391,21 +400,14 @@ class ProcessoEletronicoRN extends InfraRN { |
| 391 | 400 | { |
| 392 | 401 | try { |
| 393 | 402 | return $this->getObjPenWs()->enviarProcesso($parametros); |
| 394 | - } catch (\SoapFault $fault) { | |
| 395 | - | |
| 396 | - | |
| 397 | - if (!empty($fault->detail->interoperabilidadeException->codigoErro) && $fault->detail->interoperabilidadeException->codigoErro == '0005') { | |
| 398 | - $mensagem = 'O código mapeado para a unidade ' . utf8_decode($parametros->novoTramiteDeProcesso->processo->documento[0]->produtor->unidade->nome) . ' está incorreto.'; | |
| 399 | - } else { | |
| 400 | - $mensagem = $this->tratarFalhaWebService($fault); | |
| 403 | + } catch (\Exception $e) { | |
| 404 | + $mensagem = "Falha no envio externo do processo"; | |
| 405 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 406 | + if ($e instanceof \SoapFault && !empty($e->detail->interoperabilidadeException->codigoErro) && $e->detail->interoperabilidadeException->codigoErro == '0005') { | |
| 407 | + $detalhes = 'O código mapeado para a unidade ' . utf8_decode($parametros->novoTramiteDeProcesso->processo->documento[0]->produtor->unidade->nome) . ' está incorreto.'; | |
| 401 | 408 | } |
| 402 | - //TODO: Remover formatação do javascript após resolução do BUG enviado para Mairon | |
| 403 | - //relacionado ao a renderização de mensagens de erro na barra de progresso | |
| 404 | - error_log($mensagem); | |
| 405 | - throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | |
| 406 | 409 | |
| 407 | - } catch (\Exception $e) { | |
| 408 | - throw new InfraException("Error Processing Request", $e); | |
| 410 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 409 | 411 | } |
| 410 | 412 | } |
| 411 | 413 | |
| ... | ... | @@ -433,27 +435,20 @@ class ProcessoEletronicoRN extends InfraRN { |
| 433 | 435 | $arrObjPendenciaDTO[] = $item; |
| 434 | 436 | } |
| 435 | 437 | } |
| 436 | - } catch (\SoapFault $fault) { | |
| 437 | - //$mensagem = $this->tratarFalhaWebService($fault); | |
| 438 | - $mensagem = InfraException::inspecionar($fault); | |
| 439 | - throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | |
| 438 | + } catch (\Exception $e) { | |
| 439 | + $mensagem = "Falha na listagem de pendências de trâmite de processos"; | |
| 440 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 441 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 440 | 442 | } |
| 441 | - // catch (\Exception $e) { | |
| 442 | - // $mensagem = InfraException::inspecionar($e); | |
| 443 | - // throw new InfraException("Error Processing Request", $e); | |
| 444 | - // } | |
| 445 | 443 | |
| 446 | 444 | return $arrObjPendenciaDTO; |
| 447 | 445 | } |
| 448 | 446 | |
| 449 | 447 | //TODO: Tratar cada um dos possíveis erros gerados pelos serviços de integração do PEN |
| 450 | - private function tratarFalhaWebService(SoapFault $fault) | |
| 448 | + private function tratarFalhaWebService(Exception $fault) | |
| 451 | 449 | { |
| 452 | - error_log('$e->faultcode:' . $fault->faultcode); | |
| 453 | - error_log('$e->detail:' . print_r($fault->detail, true)); | |
| 454 | - | |
| 455 | - $mensagem = $fault->getMessage(); | |
| 456 | - if(isset($fault->detail->interoperabilidadeException)){ | |
| 450 | + $mensagem = InfraException::inspecionar($fault); | |
| 451 | + if($fault instanceof SoapFault && isset($fault->detail->interoperabilidadeException)){ | |
| 457 | 452 | $strWsException = $fault->detail->interoperabilidadeException; |
| 458 | 453 | |
| 459 | 454 | switch ($strWsException->codigoErro) { |
| ... | ... | @@ -498,34 +493,24 @@ class ProcessoEletronicoRN extends InfraRN { |
| 498 | 493 | { |
| 499 | 494 | try { |
| 500 | 495 | return $this->getObjPenWs()->enviarComponenteDigital($parametros); |
| 501 | - } catch (\SoapFault $fault) { | |
| 502 | - $mensagem = $this->tratarFalhaWebService($fault); | |
| 503 | - | |
| 504 | - //TODO: Remover formatação do javascript após resolução do BUG enviado para Mairon | |
| 505 | - //relacionado ao a renderização de mensagens de erro na barra de progresso | |
| 506 | - throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | |
| 507 | 496 | } catch (\Exception $e) { |
| 508 | - throw new InfraException("Error Processing Request", $e); | |
| 497 | + $mensagem = "Falha no envio de componentes digitais"; | |
| 498 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 499 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 509 | 500 | } |
| 510 | 501 | } |
| 511 | 502 | |
| 512 | 503 | |
| 513 | - public function solicitarMetadados($parNumIdentificacaoTramite) { | |
| 514 | - | |
| 515 | - try | |
| 516 | - { | |
| 504 | + public function solicitarMetadados($parNumIdentificacaoTramite) | |
| 505 | + { | |
| 506 | + try { | |
| 517 | 507 | $parametros = new stdClass(); |
| 518 | 508 | $parametros->IDT = $parNumIdentificacaoTramite; |
| 519 | 509 | return $this->getObjPenWs()->solicitarMetadados($parametros); |
| 520 | - } catch (\SoapFault $fault) { | |
| 521 | - $mensagem = $this->tratarFalhaWebService($fault); | |
| 522 | - //TODO: Remover formatação do javascript após resolução do BUG enviado para Mairon | |
| 523 | - //relacionado ao a renderização de mensagens de erro na barra de progresso | |
| 524 | - error_log($mensagem); | |
| 525 | - throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | |
| 526 | - | |
| 527 | 510 | } catch (\Exception $e) { |
| 528 | - throw new InfraException("Error Processing Request", $e); | |
| 511 | + $mensagem = "Falha na solicitação de metadados do processo"; | |
| 512 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 513 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 529 | 514 | } |
| 530 | 515 | } |
| 531 | 516 | |
| ... | ... | @@ -871,9 +856,6 @@ class ProcessoEletronicoRN extends InfraRN { |
| 871 | 856 | |
| 872 | 857 | } catch (\SoapFault $fault) { |
| 873 | 858 | $mensagem = $this->tratarFalhaWebService($fault); |
| 874 | - //TODO: Remover formatação do javascript após resolução do BUG enviado para Mairon | |
| 875 | - //rlacionado ao a renderização de mensagens de erro na barra de progresso | |
| 876 | - error_log($mensagem); | |
| 877 | 859 | throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); |
| 878 | 860 | } catch (\Exception $e) { |
| 879 | 861 | throw new InfraException("Error Processing Request", $e); |
| ... | ... | @@ -921,12 +903,10 @@ class ProcessoEletronicoRN extends InfraRN { |
| 921 | 903 | |
| 922 | 904 | return $arrObjTramite; |
| 923 | 905 | |
| 924 | - } catch (\SoapFault $fault) { | |
| 925 | - $mensagem = $this->tratarFalhaWebService($fault); | |
| 926 | - throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | |
| 927 | - | |
| 928 | 906 | } catch (\Exception $e) { |
| 929 | - throw new InfraException("Error Processing Request", $e); | |
| 907 | + $mensagem = "Falha na consulta de trâmites de processo"; | |
| 908 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 909 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 930 | 910 | } |
| 931 | 911 | } |
| 932 | 912 | |
| ... | ... | @@ -951,12 +931,10 @@ class ProcessoEletronicoRN extends InfraRN { |
| 951 | 931 | |
| 952 | 932 | return $arrObjTramite; |
| 953 | 933 | |
| 954 | - } catch (\SoapFault $fault) { | |
| 955 | - $mensagem = $this->tratarFalhaWebService($fault); | |
| 956 | - throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | |
| 957 | - | |
| 958 | 934 | } catch (\Exception $e) { |
| 959 | - throw new InfraException("Error Processing Request", $e); | |
| 935 | + $mensagem = "Falha na consulta de trâmites de processo"; | |
| 936 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 937 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 960 | 938 | } |
| 961 | 939 | } |
| 962 | 940 | |
| ... | ... | @@ -966,15 +944,11 @@ class ProcessoEletronicoRN extends InfraRN { |
| 966 | 944 | { |
| 967 | 945 | $parametro = new stdClass(); |
| 968 | 946 | $parametro->IDT = $parNumIdTramite; |
| 969 | - | |
| 970 | 947 | return $this->getObjPenWs()->cienciaRecusa($parametro); |
| 971 | - | |
| 972 | - } catch (\SoapFault $fault) { | |
| 973 | - $mensagem = $this->tratarFalhaWebService($fault); | |
| 974 | - throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | |
| 975 | - | |
| 976 | 948 | } catch (\Exception $e) { |
| 977 | - throw new InfraException("Error Processing Request", $e); | |
| 949 | + $mensagem = "Falha no registro de ciência da recusa de trâmite"; | |
| 950 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 951 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 978 | 952 | } |
| 979 | 953 | } |
| 980 | 954 | |
| ... | ... | @@ -1129,53 +1103,30 @@ class ProcessoEletronicoRN extends InfraRN { |
| 1129 | 1103 | $parametro->dadosDoReciboDeTramite->hashDaAssinatura = $strHashDaAssinaturaBase64; |
| 1130 | 1104 | |
| 1131 | 1105 | $this->getObjPenWs()->enviarReciboDeTramite($parametro); |
| 1132 | - | |
| 1133 | 1106 | return $strHashDaAssinaturaBase64; |
| 1134 | 1107 | |
| 1135 | - } catch (\SoapFault $fault) { | |
| 1136 | - | |
| 1137 | - $strMensagem = '[ SOAP Request ]'.PHP_EOL; | |
| 1138 | - $strMensagem .= 'Method: enviarReciboDeTramite (FAIL)'.PHP_EOL; | |
| 1139 | - $strMensagem .= 'Request: '.$this->getObjPenWs()->__getLastRequest().PHP_EOL; | |
| 1140 | - $strMensagem .= 'Response: '.$this->getObjPenWs()->__getLastResponse().PHP_EOL; | |
| 1141 | - | |
| 1142 | - file_put_contents('/tmp/pen.log', $strMensagem.PHP_EOL, FILE_APPEND); | |
| 1143 | - | |
| 1144 | - if(isset($objPrivatekey)){ | |
| 1145 | - openssl_free_key($objPrivatekey); | |
| 1146 | - } | |
| 1147 | - | |
| 1148 | - $mensagem = $this->tratarFalhaWebService($fault); | |
| 1149 | - | |
| 1150 | - //TODO: Remover formatação do javascript após resolução do BUG enviado para Mairon | |
| 1151 | - //relacionado ao a renderização de mensagens de erro na barra de progresso | |
| 1152 | - error_log($mensagem); | |
| 1153 | - throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | |
| 1154 | 1108 | } catch (\Exception $e) { |
| 1109 | + $mensagem = "Falha no envio de recibo de trâmite de processo"; | |
| 1110 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 1111 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 1112 | + } finally { | |
| 1155 | 1113 | if(isset($objPrivatekey)){ |
| 1156 | 1114 | openssl_free_key($objPrivatekey); |
| 1157 | 1115 | } |
| 1158 | - | |
| 1159 | - throw new InfraException("Error Processing Request", $e); | |
| 1160 | 1116 | } |
| 1161 | 1117 | } |
| 1162 | 1118 | |
| 1163 | 1119 | public function receberReciboDeTramite($parNumIdTramite) |
| 1164 | 1120 | { |
| 1165 | - try | |
| 1166 | - { | |
| 1167 | - $parametro = new stdClass(); | |
| 1168 | - $parametro->IDT = $parNumIdTramite; | |
| 1169 | - | |
| 1170 | - $resultado = $this->getObjPenWs()->receberReciboDeTramite($parametro); | |
| 1171 | - | |
| 1172 | - return $resultado; | |
| 1173 | - } | |
| 1174 | - catch (\SoapFault $fault) { | |
| 1175 | - $mensagem = $this->tratarFalhaWebService($fault); | |
| 1176 | - throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | |
| 1121 | + try { | |
| 1122 | + $parametro = new stdClass(); | |
| 1123 | + $parametro->IDT = $parNumIdTramite; | |
| 1124 | + $resultado = $this->getObjPenWs()->receberReciboDeTramite($parametro); | |
| 1125 | + return $resultado; | |
| 1177 | 1126 | } catch (\Exception $e) { |
| 1178 | - throw new InfraException("Error Processing Request", $e); | |
| 1127 | + $mensagem = "Falha no recebimento de recibo de trâmite"; | |
| 1128 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 1129 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 1179 | 1130 | } |
| 1180 | 1131 | } |
| 1181 | 1132 | |
| ... | ... | @@ -1190,19 +1141,14 @@ class ProcessoEletronicoRN extends InfraRN { |
| 1190 | 1141 | try { |
| 1191 | 1142 | $parametro = new stdClass(); |
| 1192 | 1143 | $parametro->IDT = $parNumIdTramite; |
| 1193 | - | |
| 1194 | 1144 | $resultado = $this->getObjPenWs()->receberReciboDeEnvio($parametro); |
| 1195 | - | |
| 1196 | 1145 | return $resultado->conteudoDoReciboDeEnvio; |
| 1197 | 1146 | } |
| 1198 | - catch (\SoapFault $fault) { | |
| 1199 | - $mensagem = $this->tratarFalhaWebService($fault); | |
| 1200 | - throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | |
| 1201 | - } | |
| 1202 | 1147 | catch (\Exception $e) { |
| 1203 | - throw new InfraException("Error Processing Request", $e); | |
| 1148 | + $mensagem = "Falha no recebimento de recibo de trâmite"; | |
| 1149 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 1150 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 1204 | 1151 | } |
| 1205 | - throw new InfraException("Error Processing Request", $e); | |
| 1206 | 1152 | } |
| 1207 | 1153 | |
| 1208 | 1154 | //TODO: Implementar mapeamento entre operações do PEN e tarefas do SEI |
| ... | ... | @@ -1302,8 +1248,10 @@ class ProcessoEletronicoRN extends InfraRN { |
| 1302 | 1248 | try{ |
| 1303 | 1249 | $this->getObjPenWs()->cancelarEnvioDeTramite($parametros); |
| 1304 | 1250 | } |
| 1305 | - catch(\SoapFault $e) { | |
| 1306 | - throw new InfraException($e->getMessage(), null, $e); | |
| 1251 | + catch(\Exception $e) { | |
| 1252 | + $mensagem = "Falha no cancelamento de trâmite de processo"; | |
| 1253 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 1254 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 1307 | 1255 | } |
| 1308 | 1256 | } |
| 1309 | 1257 | |
| ... | ... | @@ -1325,16 +1273,12 @@ class ProcessoEletronicoRN extends InfraRN { |
| 1325 | 1273 | $parametros->recusaDeTramite->IDT = $idTramite; |
| 1326 | 1274 | $parametros->recusaDeTramite->justificativa = utf8_encode($justificativa); |
| 1327 | 1275 | $parametros->recusaDeTramite->motivo = $motivo; |
| 1328 | - | |
| 1329 | 1276 | $resultado = $this->getObjPenWs()->recusarTramite($parametros); |
| 1330 | 1277 | |
| 1331 | - } catch (SoapFault $fault) { | |
| 1332 | - | |
| 1333 | - $mensagem = $this->tratarFalhaWebService($fault); | |
| 1334 | - throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | |
| 1335 | - | |
| 1336 | 1278 | } catch (Exception $e) { |
| 1337 | - return $e->getMessage(); | |
| 1279 | + $mensagem = "Falha na recusa de trâmite de processo"; | |
| 1280 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 1281 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 1338 | 1282 | } |
| 1339 | 1283 | } |
| 1340 | 1284 | |
| ... | ... | @@ -1344,14 +1288,13 @@ class ProcessoEletronicoRN extends InfraRN { |
| 1344 | 1288 | $tramitePendenteDTO = new TramitePendenteDTO(); |
| 1345 | 1289 | $tramitePendenteDTO->setNumIdTramite($numIdentificacaoTramite); |
| 1346 | 1290 | $tramitePendenteDTO->setNumIdAtividade($idAtividadeExpedicao); |
| 1347 | - | |
| 1348 | 1291 | $tramitePendenteBD = new TramitePendenteBD($this->getObjInfraIBanco()); |
| 1349 | 1292 | $tramitePendenteBD->cadastrar($tramitePendenteDTO); |
| 1350 | 1293 | |
| 1351 | - } catch (\InfraException $ex) { | |
| 1352 | - throw new InfraException($ex->getStrDescricao()); | |
| 1353 | - } catch (\Exception $ex) { | |
| 1354 | - throw new InfraException($ex->getMessage()); | |
| 1294 | + } catch (\Exception $e) { | |
| 1295 | + $mensagem = "Falha no cadastramento de trâmite pendente"; | |
| 1296 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 1297 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 1355 | 1298 | } |
| 1356 | 1299 | } |
| 1357 | 1300 | |
| ... | ... | @@ -1445,7 +1388,9 @@ class ProcessoEletronicoRN extends InfraRN { |
| 1445 | 1388 | return $hipoteses; |
| 1446 | 1389 | |
| 1447 | 1390 | } catch(Exception $e){ |
| 1448 | - throw new InfraException("Erro durante obtenção da resposta das hipóteses legais", $e); | |
| 1391 | + $mensagem = "Falha na obtenção de hipóteses legais"; | |
| 1392 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 1393 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 1449 | 1394 | } |
| 1450 | 1395 | } |
| 1451 | 1396 | |
| ... | ... | @@ -1454,7 +1399,9 @@ class ProcessoEletronicoRN extends InfraRN { |
| 1454 | 1399 | $objProcessoEletronicoBD = new ProcessoEletronicoBD($this->getObjInfraIBanco()); |
| 1455 | 1400 | return $objProcessoEletronicoBD->contar($objProcessoEletronicoDTO); |
| 1456 | 1401 | }catch(Exception $e){ |
| 1457 | - throw new InfraException('Erro contando Processos Externos.',$e); | |
| 1402 | + $mensagem = "Falha na contagem de processos eletrônicos registrados"; | |
| 1403 | + $detalhes = InfraString::formatarJavaScript($this->tratarFalhaWebService($e)); | |
| 1404 | + throw new InfraException($mensagem, $e, $detalhes); | |
| 1458 | 1405 | } |
| 1459 | 1406 | } |
| 1460 | 1407 | } | ... | ... |