Commit 8eafc82e7177db38ed673d3215f76a50bc100ebd
1 parent
a88d67fd
Exists in
master
and in
21 other branches
Ajuste na formatação dos recibos de envio/recebimento e correção do erro nos doc…
…umentos do tipo e-mail
Showing
10 changed files
with
168 additions
and
59 deletions
Show diff stats
... | ... | @@ -0,0 +1,19 @@ |
1 | +<? | |
2 | + | |
3 | +require_once dirname(__FILE__).'/../../../SEI.php'; | |
4 | + | |
5 | +class ReciboTramiteHashDTO extends InfraDTO { | |
6 | + | |
7 | + public function getStrNomeTabela() { | |
8 | + return "md_pen_recibo_tramite_hash"; | |
9 | + } | |
10 | + | |
11 | + public function montar() { | |
12 | + $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_STR, 'NumeroRegistro', 'numero_registro'); | |
13 | + $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_NUM, 'IdTramite', 'id_tramite'); | |
14 | + $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_STR, 'HashComponenteDigital', 'hash_componente_digital'); | |
15 | + $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_STR, 'TipoRecibo', 'tipo_recibo'); | |
16 | + | |
17 | + } | |
18 | +} | |
19 | + | ... | ... |
dto/ReciboTramiteRecebidoDTO.php
... | ... | @@ -14,5 +14,6 @@ class ReciboTramiteRecebidoDTO extends InfraDTO { |
14 | 14 | $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_NUM, 'IdTramite', 'id_tramite'); |
15 | 15 | $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_DTH, 'Recebimento', 'dth_recebimento'); |
16 | 16 | $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_STR, 'HashAssinatura', 'hash_assinatura'); |
17 | + $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_STR, 'CadeiaCertificado', 'cadeia_certificado'); | |
17 | 18 | } |
18 | 19 | } |
19 | 20 | \ No newline at end of file | ... | ... |
pen_procedimento_estado.php
... | ... | @@ -20,6 +20,7 @@ try { |
20 | 20 | |
21 | 21 | //$objSessaoSEI->validarLink(); |
22 | 22 | $objSessaoSEI->validarPermissao('pen_procedimento_expedir'); |
23 | + $objGenericoBD = new GenericoBD(BancoSEI::getInstance()); | |
23 | 24 | |
24 | 25 | if(array_key_exists('metodo', $_GET)) { |
25 | 26 | |
... | ... | @@ -49,21 +50,33 @@ try { |
49 | 50 | throw new InfraException('O recibo ainda não foi recebido.'); |
50 | 51 | } |
51 | 52 | |
52 | - | |
53 | + $objReciboTramiteHashDTO = new ReciboTramiteHashDTO(); | |
54 | + $objReciboTramiteHashDTO->setNumIdTramite($_GET['id_tramite']); | |
55 | + $objReciboTramiteHashDTO->setStrTipoRecibo(ProcessoEletronicoRN::$STA_TIPO_RECIBO_ENVIO); | |
56 | + $objReciboTramiteHashDTO->retStrHashComponenteDigital(); | |
57 | + | |
58 | + $arrObjReciboTramiteHashDTO = $objGenericoBD->listar($objReciboTramiteHashDTO); | |
59 | + | |
53 | 60 | foreach($arrObjReciboTramiteDTO as $objReciboTramiteDTO) { |
54 | 61 | |
55 | 62 | $dthTimeStamp = InfraData::getTimestamp($objReciboTramiteDTO->getDthRecebimento()); |
56 | 63 | |
57 | - print '<recibo>'; | |
64 | + print '<reciboDeEnvio>'; | |
58 | 65 | print '<IDT>'.$objReciboTramiteDTO->getNumIdTramite().'</IDT>'; |
59 | 66 | print '<NRE>'.$objReciboTramiteDTO->getStrNumeroRegistro().'</NRE>'; |
60 | - print '<dataDeRecebimento>'.date('c', $dthTimeStamp).'</dataDeRecebimento>'; | |
67 | + print '<dataDeRecebimentoDoUltimoComponenteDigital>'.date('c', $dthTimeStamp).'</dataDeRecebimentoDoUltimoComponenteDigital>'; | |
61 | 68 | |
62 | - $strHashAssinatura = $objReciboTramiteDTO->getStrHashAssinatura(); | |
63 | - if(!empty($strHashAssinatura)) { | |
64 | - print '<hashDoComponenteDigital>'.$strHashAssinatura.'</hashDoComponenteDigital>'; | |
69 | + if($arrObjReciboTramiteHashDTO && is_array($arrObjReciboTramiteHashDTO)){ | |
70 | + $arrObjReciboTramiteHashDTO = InfraArray::converterArrInfraDTO($arrObjReciboTramiteHashDTO, 'HashComponenteDigital'); | |
71 | + ksort($arrObjReciboTramiteHashDTO); | |
72 | + | |
73 | + foreach($arrObjReciboTramiteHashDTO as $hash){ | |
74 | + print '<hashDoComponenteDigital>'.$hash.'</hashDoComponenteDigital>'; | |
75 | + } | |
65 | 76 | } |
66 | - print '</recibo>'; | |
77 | + print '</reciboDeEnvio>'; | |
78 | + print '<cadeiaDoCertificado>'.$objReciboTramiteDTO->getStrCadeiaCertificado().'</cadeiaDoCertificado>'; | |
79 | + print '<hashDaAssinatura>'.$objReciboTramiteDTO->getStrHashAssinatura().'</hashDaAssinatura>'; | |
67 | 80 | } |
68 | 81 | |
69 | 82 | } |
... | ... | @@ -97,6 +110,19 @@ try { |
97 | 110 | throw new InfraException('O recibo ainda não foi recebido.'); |
98 | 111 | } |
99 | 112 | |
113 | + $objReciboTramiteHashDTO = new ReciboTramiteHashDTO(); | |
114 | + $objReciboTramiteHashDTO->setNumIdTramite($_GET['id_tramite']); | |
115 | + $objReciboTramiteHashDTO->retStrHashComponenteDigital(); | |
116 | + | |
117 | + if($_GET['id_tarefa'] == ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO)){ | |
118 | + $objReciboTramiteHashDTO->setStrTipoRecibo(ProcessoEletronicoRN::$STA_TIPO_RECIBO_CONCLUSAO_RECEBIDO); | |
119 | + | |
120 | + }else{ | |
121 | + $objReciboTramiteHashDTO->setStrTipoRecibo(ProcessoEletronicoRN::$STA_TIPO_RECIBO_CONCLUSAO_ENVIADO); | |
122 | + | |
123 | + } | |
124 | + | |
125 | + $arrObjReciboTramiteHashDTO = $objGenericoBD->listar($objReciboTramiteHashDTO); | |
100 | 126 | |
101 | 127 | foreach($arrObjReciboTramiteDTO as $objReciboTramiteDTO) { |
102 | 128 | |
... | ... | @@ -108,10 +134,19 @@ try { |
108 | 134 | print '<dataDeRecebimento>'.date('c', $dthTimeStamp).'</dataDeRecebimento>'; |
109 | 135 | |
110 | 136 | $strHashAssinatura = $objReciboTramiteDTO->getStrHashAssinatura(); |
111 | - if(!empty($strHashAssinatura)) { | |
112 | - print '<hashDoComponenteDigital>'.$strHashAssinatura.'</hashDoComponenteDigital>'; | |
137 | + | |
138 | + if($arrObjReciboTramiteHashDTO && is_array($arrObjReciboTramiteHashDTO)){ | |
139 | + $arrObjReciboTramiteHashDTO = InfraArray::converterArrInfraDTO($arrObjReciboTramiteHashDTO, 'HashComponenteDigital'); | |
140 | + ksort($arrObjReciboTramiteHashDTO); | |
141 | + | |
142 | + foreach($arrObjReciboTramiteHashDTO as $hash){ | |
143 | + print '<hashDoComponenteDigital>'.$hash.'</hashDoComponenteDigital>'; | |
144 | + } | |
113 | 145 | } |
146 | + | |
114 | 147 | print '</recibo>'; |
148 | + print '<cadeiaDoCertificado>'.$objReciboTramiteDTO->getStrCadeiaCertificado().'</cadeiaDoCertificado>'; | |
149 | + print '<hashDaAssinatura>'.$objReciboTramiteDTO->getStrHashAssinatura().'</hashDaAssinatura>'; | |
115 | 150 | } |
116 | 151 | |
117 | 152 | } | ... | ... |
rn/EnviarReciboTramiteRN.php
... | ... | @@ -54,7 +54,7 @@ class EnviarReciboTramiteRN extends InfraRN |
54 | 54 | return $arrStrHashConteudo; |
55 | 55 | } |
56 | 56 | |
57 | - protected function cadastrarReciboTramiteRecebimento($strNumeroRegistro = '', $parNumIdTramite = 0, $strHashConteudo = ''){ | |
57 | + protected function cadastrarReciboTramiteRecebimento($strNumeroRegistro = '', $parNumIdTramite = 0, $strHashConteudo = '', $parArrayHash = array()){ | |
58 | 58 | |
59 | 59 | $objBD = new ReciboTramiteRecebidoBD($this->inicializarObjInfraIBanco()); |
60 | 60 | |
... | ... | @@ -69,6 +69,19 @@ class EnviarReciboTramiteRN extends InfraRN |
69 | 69 | $objDTO->setDthRecebimento(date('d/m/Y H:i:s')); |
70 | 70 | $objBD->cadastrar($objDTO); |
71 | 71 | } |
72 | + | |
73 | + foreach($parArrayHash as $strHashComponenteDigital){ | |
74 | + | |
75 | + $objReciboTramiteHashDTO = new ReciboTramiteHashDTO(); | |
76 | + $objReciboTramiteHashDTO->setStrNumeroRegistro($strNumeroRegistro); | |
77 | + $objReciboTramiteHashDTO->setNumIdTramite($parNumIdTramite); | |
78 | + $objReciboTramiteHashDTO->setStrHashComponenteDigital($strHashComponenteDigital); | |
79 | + $objReciboTramiteHashDTO->setStrTipoRecibo(ProcessoEletronicoRN::$STA_TIPO_RECIBO_CONCLUSAO_ENVIADO); | |
80 | + | |
81 | + $objBD->cadastrar($objReciboTramiteHashDTO); | |
82 | + } | |
83 | + | |
84 | + | |
72 | 85 | } |
73 | 86 | |
74 | 87 | public function enviarReciboTramiteProcesso($parNumIdTramite, $parArrayHash = null, $parDthRecebimento = null) |
... | ... | @@ -136,7 +149,7 @@ class EnviarReciboTramiteRN extends InfraRN |
136 | 149 | |
137 | 150 | //Envia o Recibo de salva no banco |
138 | 151 | $hashAssinatura = $this->objProcessoEletronicoRN->enviarReciboDeTramite($parNumIdTramite, $dthRecebimento, $strReciboTramite); |
139 | - $this->cadastrarReciboTramiteRecebimento($strNumeroRegistro, $parNumIdTramite, $hashAssinatura); | |
152 | + $this->cadastrarReciboTramiteRecebimento($strNumeroRegistro, $parNumIdTramite, $hashAssinatura, $parArrayHash); | |
140 | 153 | |
141 | 154 | } |
142 | 155 | ... | ... |
rn/ExpedirProcedimentoRN.php
... | ... | @@ -975,7 +975,7 @@ class ExpedirProcedimentoRN extends InfraRN { |
975 | 975 | $strConteudoAssinatura = $arrInformacaoArquivo['CONTEUDO']; |
976 | 976 | $hashDoComponenteDigital = hash($strAlgoritmoHash, $strConteudoAssinatura, true); |
977 | 977 | $hashDoComponenteDigital = base64_encode($hashDoComponenteDigital); |
978 | - | |
978 | + | |
979 | 979 | $objDocumento->componenteDigital = new stdClass(); |
980 | 980 | $objDocumento->componenteDigital->ordem = 1; |
981 | 981 | $objDocumento->componenteDigital->nome = utf8_encode($arrInformacaoArquivo["NOME"]); |
... | ... | @@ -1092,7 +1092,7 @@ class ExpedirProcedimentoRN extends InfraRN { |
1092 | 1092 | $objDocumentoDTO2 = new DocumentoDTO(); |
1093 | 1093 | $objDocumentoDTO2->setDblIdDocumento($objDocumentoDTO->getDblIdDocumento()); |
1094 | 1094 | $objDocumentoDTO2->setObjInfraSessao(SessaoSEI::getInstance()); |
1095 | - $objDocumentoDTO2->setStrLinkDownload('controlador.php?acao=documento_download_anexo'); | |
1095 | + // $objDocumentoDTO2->setStrLinkDownload('controlador.php?acao=documento_download_anexo'); | |
1096 | 1096 | |
1097 | 1097 | $objDocumentoRN = new DocumentoRN(); |
1098 | 1098 | $strResultado = $objDocumentoRN->consultarHtmlFormulario($objDocumentoDTO2); |
... | ... | @@ -1102,7 +1102,7 @@ class ExpedirProcedimentoRN extends InfraRN { |
1102 | 1102 | $arrInformacaoArquivo['TAMANHO'] = strlen($strResultado); |
1103 | 1103 | $arrInformacaoArquivo['MIME_TYPE'] = 'text/html'; |
1104 | 1104 | $arrInformacaoArquivo['ID_ANEXO'] = null; |
1105 | - | |
1105 | + | |
1106 | 1106 | } |
1107 | 1107 | |
1108 | 1108 | return $arrInformacaoArquivo; |
... | ... | @@ -1793,7 +1793,7 @@ class ExpedirProcedimentoRN extends InfraRN { |
1793 | 1793 | * @param int $parNumIdTramite |
1794 | 1794 | * @return bool |
1795 | 1795 | */ |
1796 | - private function receberReciboDeEnvio($parNumIdTramite){ | |
1796 | + protected function receberReciboDeEnvioControlado($parNumIdTramite){ | |
1797 | 1797 | |
1798 | 1798 | if (empty($parNumIdTramite)) { |
1799 | 1799 | return false; |
... | ... | @@ -1808,14 +1808,32 @@ class ExpedirProcedimentoRN extends InfraRN { |
1808 | 1808 | return false; |
1809 | 1809 | } |
1810 | 1810 | |
1811 | - $objReciboTramiteEnviadoDTO = $this->objProcessoEletronicoRN->receberReciboDeEnvio($parNumIdTramite); | |
1811 | + $objReciboEnvio = $this->objProcessoEletronicoRN->receberReciboDeEnvio($parNumIdTramite); | |
1812 | + $objDateTime = new DateTime($objReciboEnvio->reciboDeEnvio->dataDeRecebimentoDoUltimoComponenteDigital); | |
1812 | 1813 | |
1813 | - if (empty($objReciboTramiteEnviadoDTO)) { | |
1814 | - return false; | |
1815 | - } | |
1814 | + $objReciboTramiteDTO = new ReciboTramiteEnviadoDTO(); | |
1815 | + $objReciboTramiteDTO->setStrNumeroRegistro($objReciboEnvio->reciboDeEnvio->NRE); | |
1816 | + $objReciboTramiteDTO->setNumIdTramite($objReciboEnvio->reciboDeEnvio->IDT); | |
1817 | + $objReciboTramiteDTO->setDthRecebimento($objDateTime->format('d/m/Y H:i:s')); | |
1818 | + $objReciboTramiteDTO->setStrCadeiaCertificado($objReciboEnvio->cadeiaDoCertificado); | |
1819 | + $objReciboTramiteDTO->setStrHashAssinatura($objReciboEnvio->hashDaAssinatura); | |
1816 | 1820 | |
1817 | - $objGenericoBD->cadastrar($objReciboTramiteEnviadoDTO); | |
1821 | + $objGenericoBD->cadastrar($objReciboTramiteDTO); | |
1818 | 1822 | |
1823 | + if($objReciboEnvio->reciboDeEnvio->hashDoComponenteDigital && is_array($objReciboEnvio->reciboDeEnvio->hashDoComponenteDigital)){ | |
1824 | + | |
1825 | + foreach($objReciboEnvio->reciboDeEnvio->hashDoComponenteDigital as $strHashComponenteDigital){ | |
1826 | + | |
1827 | + $objReciboTramiteHashDTO = new ReciboTramiteHashDTO(); | |
1828 | + $objReciboTramiteHashDTO->setStrNumeroRegistro($objReciboEnvio->reciboDeEnvio->NRE); | |
1829 | + $objReciboTramiteHashDTO->setNumIdTramite($objReciboEnvio->reciboDeEnvio->IDT); | |
1830 | + $objReciboTramiteHashDTO->setStrHashComponenteDigital($strHashComponenteDigital); | |
1831 | + $objReciboTramiteHashDTO->setStrTipoRecibo(ProcessoEletronicoRN::$STA_TIPO_RECIBO_ENVIO); | |
1832 | + | |
1833 | + $objGenericoBD->cadastrar($objReciboTramiteHashDTO); | |
1834 | + } | |
1835 | + } | |
1836 | + | |
1819 | 1837 | return true; |
1820 | 1838 | } |
1821 | 1839 | ... | ... |
rn/PenAtualizadorRN.php
rn/PenAtualizarSeiRN.php
... | ... | @@ -899,5 +899,29 @@ class PenAtualizarSeiRN extends PenAtualizadorRN { |
899 | 899 | $objInfraParametro->setValor('PEN_TAMANHO_MAXIMO_DOCUMENTO_EXPEDIDO', 50); |
900 | 900 | |
901 | 901 | } |
902 | + | |
903 | + protected function instalarV007R004S005WI002() { | |
904 | + | |
905 | + $objMetaBD = $this->inicializarObjMetaBanco(); | |
906 | + | |
907 | + $objMetaBD->criarTabela(array( | |
908 | + 'tabela' => 'md_pen_recibo_tramite_hash', | |
909 | + 'cols' => array( | |
910 | + 'numero_registro'=> array($objMetaBD->tipoTextoFixo(16), PenMetaBD::NNULLO), | |
911 | + 'id_tramite' => array($objMetaBD->tipoNumeroGrande(), PenMetaBD::NNULLO), | |
912 | + 'tipo_recibo' => array($objMetaBD->tipoTextoFixo(1), PenMetaBD::NNULLO), | |
913 | + 'hash_componente_digital ' => array($objMetaBD->tipoTextoVariavel(255), PenMetaBD::NNULLO) | |
914 | + ), | |
915 | + 'pk' => array('numero_registro', 'id_tramite', 'hash_componente_digital', 'tipo_recibo'), | |
916 | + 'fks' => array( | |
917 | + 'md_pen_tramite' => array(array('numero_registro', 'id_tramite'), array('numero_registro', 'id_tramite')) | |
918 | + ) | |
919 | + )); | |
920 | + | |
921 | + | |
922 | + | |
923 | + $objMetaBD->adicionarColuna('md_pen_recibo_tramite_recebido', 'cadeia_certificado', $this->inicializarObjMetaBanco()->tipoTextoGrande(), PenMetaBD::SNULLO); | |
924 | + | |
925 | + } | |
902 | 926 | |
903 | 927 | } |
904 | 928 | \ No newline at end of file | ... | ... |
rn/ProcessoEletronicoRN.php
... | ... | @@ -13,13 +13,6 @@ class ProcessoEletronicoRN extends InfraRN { |
13 | 13 | public static $TI_PROCESSO_ELETRONICO_PROCESSO_TRAMITE_EXTERNO = 'PEN_OPERACAO_EXTERNA'; |
14 | 14 | public static $TI_PROCESSO_ELETRONICO_PROCESSO_ABORTADO = 'PEN_EXPEDICAO_PROCESSO_ABORTADA'; |
15 | 15 | |
16 | - /* TAREFAS DE EXPEDIÇÃO DE DOCUMENTOS */ | |
17 | - //Está definindo o comportamento para a tarefa $TI_PROCESSO_BLOQUEADO | |
18 | - /*public static $TI_PROCESSO_ELETRONICO_DOCUMENTO_EXPEDIDO = 506; | |
19 | - public static $TI_PROCESSO_ELETRONICO_DOCUMENTO_RECEBIDO = 507; | |
20 | - public static $TI_PROCESSO_ELETRONICO_DOCUMENTO_RETRANSMITIDO = 508; | |
21 | - public static $TI_PROCESSO_ELETRONICO_DOCUMENTO_TRAMITE_CANCELADO = 509; | |
22 | - public static $TI_PROCESSO_ELETRONICO_DOCUMENTO_TRAMITE_RECUSADO = 510;*/ | |
23 | 16 | |
24 | 17 | /* NÍVEL DE SIGILO DE PROCESSOS E DOCUMENTOS */ |
25 | 18 | public static $STA_SIGILO_PUBLICO = '1'; |
... | ... | @@ -37,6 +30,10 @@ class ProcessoEletronicoRN extends InfraRN { |
37 | 30 | public static $STA_SITUACAO_TRAMITE_RECUSADO = 8; // Trâmite do processo recusado pelo destinatário (Situações 2, 3, 4) |
38 | 31 | public static $STA_SITUACAO_TRAMITE_CIENCIA_RECUSA = 9; // Remetente ciente da recusa do trâmite |
39 | 32 | |
33 | + public static $STA_TIPO_RECIBO_ENVIO = '1'; // Recibo de envio | |
34 | + public static $STA_TIPO_RECIBO_CONCLUSAO_ENVIADO = '2'; // Recibo de recebimento enviado | |
35 | + public static $STA_TIPO_RECIBO_CONCLUSAO_RECEBIDO = '3'; // Recibo de recebimento recebido | |
36 | + | |
40 | 37 | /* OPERAÇÕES DO HISTÓRICO DO PROCESSO */ |
41 | 38 | // 02 a 18 estão registrados na tabela rel_tarefa_operacao |
42 | 39 | public static $OP_OPERACAO_REGISTRO = "01"; |
... | ... | @@ -1156,21 +1153,7 @@ class ProcessoEletronicoRN extends InfraRN { |
1156 | 1153 | |
1157 | 1154 | $resultado = $this->getObjPenWs()->receberReciboDeTramite($parametro); |
1158 | 1155 | |
1159 | - $objReciboTramiteDTO = null; | |
1160 | - if(isset($resultado)) { | |
1161 | - $objConteudoDoReciboDeTramite = $resultado->conteudoDoReciboDeTramite; | |
1162 | - $objReciboTramiteDTO = new ReciboTramiteDTO(); | |
1163 | - $objReciboTramiteDTO->setStrNumeroRegistro($objConteudoDoReciboDeTramite->recibo->NRE); | |
1164 | - $objReciboTramiteDTO->setNumIdTramite($objConteudoDoReciboDeTramite->recibo->IDT); | |
1165 | - $objDateTime = new DateTime($objConteudoDoReciboDeTramite->recibo->dataDeRecebimento); | |
1166 | - $objReciboTramiteDTO->setDthRecebimento($objDateTime->format('d/m/Y H:i:s')); | |
1167 | - //TODO: Avaliar se o resultado corresponde à uma lista de hashs ou apenas um elemento | |
1168 | - //$objReciboTramiteDTO->setStrHashComponenteDigital(); | |
1169 | - $objReciboTramiteDTO->setStrCadeiaCertificado($objConteudoDoReciboDeTramite->cadeiaDoCertificado); | |
1170 | - $objReciboTramiteDTO->setStrHashAssinatura($objConteudoDoReciboDeTramite->hashDaAssinatura); | |
1171 | - } | |
1172 | - | |
1173 | - return $objReciboTramiteDTO; | |
1156 | + return $resultado; | |
1174 | 1157 | } |
1175 | 1158 | catch (\SoapFault $fault) { |
1176 | 1159 | $mensagem = $this->tratarFalhaWebService($fault); |
... | ... | @@ -1194,19 +1177,7 @@ class ProcessoEletronicoRN extends InfraRN { |
1194 | 1177 | |
1195 | 1178 | $resultado = $this->getObjPenWs()->receberReciboDeEnvio($parametro); |
1196 | 1179 | |
1197 | - if ($resultado && $resultado->conteudoDoReciboDeEnvio) { | |
1198 | - | |
1199 | - $objNodo = $resultado->conteudoDoReciboDeEnvio; | |
1200 | - $objReciboTramiteDTO = new ReciboTramiteEnviadoDTO(); | |
1201 | - $objReciboTramiteDTO->setStrNumeroRegistro($objNodo->reciboDeEnvio->NRE); | |
1202 | - $objReciboTramiteDTO->setNumIdTramite($objNodo->reciboDeEnvio->IDT); | |
1203 | - $objDateTime = new DateTime($objNodo->reciboDeEnvio->dataDeRecebimento); | |
1204 | - $objReciboTramiteDTO->setDthRecebimento($objDateTime->format('d/m/Y H:i:s')); | |
1205 | - $objReciboTramiteDTO->setStrCadeiaCertificado($objNodo->cadeiaDoCertificado); | |
1206 | - $objReciboTramiteDTO->setStrHashAssinatura($objNodo->hashDaAssinatura); | |
1207 | - | |
1208 | - return $objReciboTramiteDTO; | |
1209 | - } | |
1180 | + return $resultado->conteudoDoReciboDeEnvio; | |
1210 | 1181 | } |
1211 | 1182 | catch (\SoapFault $fault) { |
1212 | 1183 | $mensagem = $this->tratarFalhaWebService($fault); | ... | ... |
rn/ReceberReciboTramiteRN.php
... | ... | @@ -117,11 +117,21 @@ class ReceberReciboTramiteRN extends InfraRN |
117 | 117 | throw new InfraException('Parâmetro $parNumIdTramite não informado.'); |
118 | 118 | } |
119 | 119 | |
120 | - $objReciboTramiteDTO = $this->objProcessoEletronicoRN->receberReciboDeTramite($parNumIdTramite); | |
120 | + $objReciboTramite = $this->objProcessoEletronicoRN->receberReciboDeTramite($parNumIdTramite); | |
121 | 121 | |
122 | - if (!isset($objReciboTramiteDTO)) { | |
122 | + if (!$objReciboTramite) { | |
123 | 123 | throw new InfraException("Não foi possível obter recibo de conclusão do trâmite '$parNumIdTramite'"); |
124 | 124 | } |
125 | + | |
126 | + $objReciboTramite = $objReciboTramite->conteudoDoReciboDeTramite; | |
127 | + $objDateTime = new DateTime($objReciboTramite->recibo->dataDeRecebimento); | |
128 | + | |
129 | + $objReciboTramiteDTO = new ReciboTramiteDTO(); | |
130 | + $objReciboTramiteDTO->setStrNumeroRegistro($objReciboTramite->recibo->NRE); | |
131 | + $objReciboTramiteDTO->setNumIdTramite($objReciboTramite->recibo->IDT); | |
132 | + $objReciboTramiteDTO->setDthRecebimento($objDateTime->format('d/m/Y H:i:s')); | |
133 | + $objReciboTramiteDTO->setStrCadeiaCertificado($objReciboTramite->cadeiaDoCertificado); | |
134 | + $objReciboTramiteDTO->setStrHashAssinatura($objReciboTramite->hashDaAssinatura); | |
125 | 135 | |
126 | 136 | //Verifica se o trâmite do processo se encontra devidamente registrado no sistema |
127 | 137 | $objTramiteDTO = new TramiteDTO(); |
... | ... | @@ -144,6 +154,20 @@ class ReceberReciboTramiteRN extends InfraRN |
144 | 154 | |
145 | 155 | //Armazenar dados do recibo de conclusão do trãmite |
146 | 156 | $objReciboTramiteBD->cadastrar($objReciboTramiteDTO); |
157 | + | |
158 | + if ($objReciboTramite->recibo->hashDoComponenteDigital && is_array($objReciboTramite->recibo->hashDoComponenteDigital)) { | |
159 | + foreach ($objReciboTramite->recibo->hashDoComponenteDigital as $strHashComponenteDigital) { | |
160 | + | |
161 | + $objReciboTramiteHashDTO = new ReciboTramiteHashDTO(); | |
162 | + $objReciboTramiteHashDTO->setStrNumeroRegistro($objReciboTramite->recibo->NRE); | |
163 | + $objReciboTramiteHashDTO->setNumIdTramite($objReciboTramite->recibo->IDT); | |
164 | + $objReciboTramiteHashDTO->setStrHashComponenteDigital($strHashComponenteDigital); | |
165 | + $objReciboTramiteHashDTO->setStrTipoRecibo(ProcessoEletronicoRN::$STA_TIPO_RECIBO_CONCLUSAO_RECEBIDO); | |
166 | + | |
167 | + $objGenericoBD = new GenericoBD($this->getObjInfraIBanco()); | |
168 | + $objGenericoBD->cadastrar($objReciboTramiteHashDTO); | |
169 | + } | |
170 | + } | |
147 | 171 | |
148 | 172 | //ALTERA O ESTADO DO PROCEDIMENTO |
149 | 173 | try { | ... | ... |
rn/ReciboTramiteRN.php
... | ... | @@ -37,7 +37,8 @@ class ReciboTramiteRN extends InfraRN { |
37 | 37 | $objReciboTramiteDTO->retNumIdTramite(); |
38 | 38 | $objReciboTramiteDTO->retDthRecebimento(); |
39 | 39 | $objReciboTramiteDTO->retStrHashAssinatura(); |
40 | - | |
40 | + $objReciboTramiteDTO->retStrCadeiaCertificado(); | |
41 | + | |
41 | 42 | $objReciboTramiteBD = new ReciboTramiteBD($objInfraIBanco); |
42 | 43 | $arrObjDTO = $objReciboTramiteBD->listar($objReciboTramiteDTO); |
43 | 44 | break; |
... | ... | @@ -49,7 +50,8 @@ class ReciboTramiteRN extends InfraRN { |
49 | 50 | $objReciboTramiteDTO->retNumIdTramite(); |
50 | 51 | $objReciboTramiteDTO->retDthRecebimento(); |
51 | 52 | $objReciboTramiteDTO->retStrHashAssinatura(); |
52 | - | |
53 | + $objReciboTramiteDTO->retStrCadeiaCertificado(); | |
54 | + | |
53 | 55 | $objReciboTramiteBD = new ReciboTramiteRecebidoBD($objInfraIBanco); |
54 | 56 | $arrObjDTO = $objReciboTramiteBD->listar($objReciboTramiteDTO); |
55 | 57 | break; |
... | ... | @@ -66,6 +68,7 @@ class ReciboTramiteRN extends InfraRN { |
66 | 68 | $objReciboTramiteDTO->retNumIdTramite(); |
67 | 69 | $objReciboTramiteDTO->retDthRecebimento(); |
68 | 70 | $objReciboTramiteDTO->retStrHashAssinatura(); |
71 | + $objReciboTramiteDTO->retStrCadeiaCertificado(); | |
69 | 72 | |
70 | 73 | $objReciboTramiteBD = new ReciboTramiteRecebidoBD($this->getObjInfraIBanco()); |
71 | 74 | $arrObjDTO = $objReciboTramiteBD->listar($objReciboTramiteDTO); | ... | ... |