Commit 8eafc82e7177db38ed673d3215f76a50bc100ebd
1 parent
a88d67fd
Exists in
master
and in
2 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 @@ | @@ -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,5 +14,6 @@ class ReciboTramiteRecebidoDTO extends InfraDTO { | ||
| 14 | $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_NUM, 'IdTramite', 'id_tramite'); | 14 | $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_NUM, 'IdTramite', 'id_tramite'); |
| 15 | $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_DTH, 'Recebimento', 'dth_recebimento'); | 15 | $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_DTH, 'Recebimento', 'dth_recebimento'); |
| 16 | $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_STR, 'HashAssinatura', 'hash_assinatura'); | 16 | $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_STR, 'HashAssinatura', 'hash_assinatura'); |
| 17 | + $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_STR, 'CadeiaCertificado', 'cadeia_certificado'); | ||
| 17 | } | 18 | } |
| 18 | } | 19 | } |
| 19 | \ No newline at end of file | 20 | \ No newline at end of file |
pen_procedimento_estado.php
| @@ -20,6 +20,7 @@ try { | @@ -20,6 +20,7 @@ try { | ||
| 20 | 20 | ||
| 21 | //$objSessaoSEI->validarLink(); | 21 | //$objSessaoSEI->validarLink(); |
| 22 | $objSessaoSEI->validarPermissao('pen_procedimento_expedir'); | 22 | $objSessaoSEI->validarPermissao('pen_procedimento_expedir'); |
| 23 | + $objGenericoBD = new GenericoBD(BancoSEI::getInstance()); | ||
| 23 | 24 | ||
| 24 | if(array_key_exists('metodo', $_GET)) { | 25 | if(array_key_exists('metodo', $_GET)) { |
| 25 | 26 | ||
| @@ -49,21 +50,33 @@ try { | @@ -49,21 +50,33 @@ try { | ||
| 49 | throw new InfraException('O recibo ainda não foi recebido.'); | 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 | foreach($arrObjReciboTramiteDTO as $objReciboTramiteDTO) { | 60 | foreach($arrObjReciboTramiteDTO as $objReciboTramiteDTO) { |
| 54 | 61 | ||
| 55 | $dthTimeStamp = InfraData::getTimestamp($objReciboTramiteDTO->getDthRecebimento()); | 62 | $dthTimeStamp = InfraData::getTimestamp($objReciboTramiteDTO->getDthRecebimento()); |
| 56 | 63 | ||
| 57 | - print '<recibo>'; | 64 | + print '<reciboDeEnvio>'; |
| 58 | print '<IDT>'.$objReciboTramiteDTO->getNumIdTramite().'</IDT>'; | 65 | print '<IDT>'.$objReciboTramiteDTO->getNumIdTramite().'</IDT>'; |
| 59 | print '<NRE>'.$objReciboTramiteDTO->getStrNumeroRegistro().'</NRE>'; | 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,6 +110,19 @@ try { | ||
| 97 | throw new InfraException('O recibo ainda não foi recebido.'); | 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 | foreach($arrObjReciboTramiteDTO as $objReciboTramiteDTO) { | 127 | foreach($arrObjReciboTramiteDTO as $objReciboTramiteDTO) { |
| 102 | 128 | ||
| @@ -108,10 +134,19 @@ try { | @@ -108,10 +134,19 @@ try { | ||
| 108 | print '<dataDeRecebimento>'.date('c', $dthTimeStamp).'</dataDeRecebimento>'; | 134 | print '<dataDeRecebimento>'.date('c', $dthTimeStamp).'</dataDeRecebimento>'; |
| 109 | 135 | ||
| 110 | $strHashAssinatura = $objReciboTramiteDTO->getStrHashAssinatura(); | 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 | print '</recibo>'; | 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,7 +54,7 @@ class EnviarReciboTramiteRN extends InfraRN | ||
| 54 | return $arrStrHashConteudo; | 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 | $objBD = new ReciboTramiteRecebidoBD($this->inicializarObjInfraIBanco()); | 59 | $objBD = new ReciboTramiteRecebidoBD($this->inicializarObjInfraIBanco()); |
| 60 | 60 | ||
| @@ -69,6 +69,19 @@ class EnviarReciboTramiteRN extends InfraRN | @@ -69,6 +69,19 @@ class EnviarReciboTramiteRN extends InfraRN | ||
| 69 | $objDTO->setDthRecebimento(date('d/m/Y H:i:s')); | 69 | $objDTO->setDthRecebimento(date('d/m/Y H:i:s')); |
| 70 | $objBD->cadastrar($objDTO); | 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 | public function enviarReciboTramiteProcesso($parNumIdTramite, $parArrayHash = null, $parDthRecebimento = null) | 87 | public function enviarReciboTramiteProcesso($parNumIdTramite, $parArrayHash = null, $parDthRecebimento = null) |
| @@ -136,7 +149,7 @@ class EnviarReciboTramiteRN extends InfraRN | @@ -136,7 +149,7 @@ class EnviarReciboTramiteRN extends InfraRN | ||
| 136 | 149 | ||
| 137 | //Envia o Recibo de salva no banco | 150 | //Envia o Recibo de salva no banco |
| 138 | $hashAssinatura = $this->objProcessoEletronicoRN->enviarReciboDeTramite($parNumIdTramite, $dthRecebimento, $strReciboTramite); | 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,7 +975,7 @@ class ExpedirProcedimentoRN extends InfraRN { | ||
| 975 | $strConteudoAssinatura = $arrInformacaoArquivo['CONTEUDO']; | 975 | $strConteudoAssinatura = $arrInformacaoArquivo['CONTEUDO']; |
| 976 | $hashDoComponenteDigital = hash($strAlgoritmoHash, $strConteudoAssinatura, true); | 976 | $hashDoComponenteDigital = hash($strAlgoritmoHash, $strConteudoAssinatura, true); |
| 977 | $hashDoComponenteDigital = base64_encode($hashDoComponenteDigital); | 977 | $hashDoComponenteDigital = base64_encode($hashDoComponenteDigital); |
| 978 | - | 978 | + |
| 979 | $objDocumento->componenteDigital = new stdClass(); | 979 | $objDocumento->componenteDigital = new stdClass(); |
| 980 | $objDocumento->componenteDigital->ordem = 1; | 980 | $objDocumento->componenteDigital->ordem = 1; |
| 981 | $objDocumento->componenteDigital->nome = utf8_encode($arrInformacaoArquivo["NOME"]); | 981 | $objDocumento->componenteDigital->nome = utf8_encode($arrInformacaoArquivo["NOME"]); |
| @@ -1092,7 +1092,7 @@ class ExpedirProcedimentoRN extends InfraRN { | @@ -1092,7 +1092,7 @@ class ExpedirProcedimentoRN extends InfraRN { | ||
| 1092 | $objDocumentoDTO2 = new DocumentoDTO(); | 1092 | $objDocumentoDTO2 = new DocumentoDTO(); |
| 1093 | $objDocumentoDTO2->setDblIdDocumento($objDocumentoDTO->getDblIdDocumento()); | 1093 | $objDocumentoDTO2->setDblIdDocumento($objDocumentoDTO->getDblIdDocumento()); |
| 1094 | $objDocumentoDTO2->setObjInfraSessao(SessaoSEI::getInstance()); | 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 | $objDocumentoRN = new DocumentoRN(); | 1097 | $objDocumentoRN = new DocumentoRN(); |
| 1098 | $strResultado = $objDocumentoRN->consultarHtmlFormulario($objDocumentoDTO2); | 1098 | $strResultado = $objDocumentoRN->consultarHtmlFormulario($objDocumentoDTO2); |
| @@ -1102,7 +1102,7 @@ class ExpedirProcedimentoRN extends InfraRN { | @@ -1102,7 +1102,7 @@ class ExpedirProcedimentoRN extends InfraRN { | ||
| 1102 | $arrInformacaoArquivo['TAMANHO'] = strlen($strResultado); | 1102 | $arrInformacaoArquivo['TAMANHO'] = strlen($strResultado); |
| 1103 | $arrInformacaoArquivo['MIME_TYPE'] = 'text/html'; | 1103 | $arrInformacaoArquivo['MIME_TYPE'] = 'text/html'; |
| 1104 | $arrInformacaoArquivo['ID_ANEXO'] = null; | 1104 | $arrInformacaoArquivo['ID_ANEXO'] = null; |
| 1105 | - | 1105 | + |
| 1106 | } | 1106 | } |
| 1107 | 1107 | ||
| 1108 | return $arrInformacaoArquivo; | 1108 | return $arrInformacaoArquivo; |
| @@ -1793,7 +1793,7 @@ class ExpedirProcedimentoRN extends InfraRN { | @@ -1793,7 +1793,7 @@ class ExpedirProcedimentoRN extends InfraRN { | ||
| 1793 | * @param int $parNumIdTramite | 1793 | * @param int $parNumIdTramite |
| 1794 | * @return bool | 1794 | * @return bool |
| 1795 | */ | 1795 | */ |
| 1796 | - private function receberReciboDeEnvio($parNumIdTramite){ | 1796 | + protected function receberReciboDeEnvioControlado($parNumIdTramite){ |
| 1797 | 1797 | ||
| 1798 | if (empty($parNumIdTramite)) { | 1798 | if (empty($parNumIdTramite)) { |
| 1799 | return false; | 1799 | return false; |
| @@ -1808,14 +1808,32 @@ class ExpedirProcedimentoRN extends InfraRN { | @@ -1808,14 +1808,32 @@ class ExpedirProcedimentoRN extends InfraRN { | ||
| 1808 | return false; | 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 | return true; | 1837 | return true; |
| 1820 | } | 1838 | } |
| 1821 | 1839 |
rn/PenAtualizadorRN.php
| @@ -13,6 +13,7 @@ abstract class PenAtualizadorRN extends InfraRN { | @@ -13,6 +13,7 @@ abstract class PenAtualizadorRN extends InfraRN { | ||
| 13 | const VER_004 = '0.0.4'; | 13 | const VER_004 = '0.0.4'; |
| 14 | const VER_005 = '0.0.5'; | 14 | const VER_005 = '0.0.5'; |
| 15 | const VER_006 = '0.0.6'; | 15 | const VER_006 = '0.0.6'; |
| 16 | + const VER_007 = '0.0.7'; | ||
| 16 | 17 | ||
| 17 | protected $sei_versao; | 18 | protected $sei_versao; |
| 18 | 19 |
rn/PenAtualizarSeiRN.php
| @@ -899,5 +899,29 @@ class PenAtualizarSeiRN extends PenAtualizadorRN { | @@ -899,5 +899,29 @@ class PenAtualizarSeiRN extends PenAtualizadorRN { | ||
| 899 | $objInfraParametro->setValor('PEN_TAMANHO_MAXIMO_DOCUMENTO_EXPEDIDO', 50); | 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 | \ No newline at end of file | 928 | \ No newline at end of file |
rn/ProcessoEletronicoRN.php
| @@ -13,13 +13,6 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -13,13 +13,6 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 13 | public static $TI_PROCESSO_ELETRONICO_PROCESSO_TRAMITE_EXTERNO = 'PEN_OPERACAO_EXTERNA'; | 13 | public static $TI_PROCESSO_ELETRONICO_PROCESSO_TRAMITE_EXTERNO = 'PEN_OPERACAO_EXTERNA'; |
| 14 | public static $TI_PROCESSO_ELETRONICO_PROCESSO_ABORTADO = 'PEN_EXPEDICAO_PROCESSO_ABORTADA'; | 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 | /* NÍVEL DE SIGILO DE PROCESSOS E DOCUMENTOS */ | 17 | /* NÍVEL DE SIGILO DE PROCESSOS E DOCUMENTOS */ |
| 25 | public static $STA_SIGILO_PUBLICO = '1'; | 18 | public static $STA_SIGILO_PUBLICO = '1'; |
| @@ -37,6 +30,10 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -37,6 +30,10 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 37 | public static $STA_SITUACAO_TRAMITE_RECUSADO = 8; // Trâmite do processo recusado pelo destinatário (Situações 2, 3, 4) | 30 | public static $STA_SITUACAO_TRAMITE_RECUSADO = 8; // Trâmite do processo recusado pelo destinatário (Situações 2, 3, 4) |
| 38 | public static $STA_SITUACAO_TRAMITE_CIENCIA_RECUSA = 9; // Remetente ciente da recusa do trâmite | 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 | /* OPERAÇÕES DO HISTÓRICO DO PROCESSO */ | 37 | /* OPERAÇÕES DO HISTÓRICO DO PROCESSO */ |
| 41 | // 02 a 18 estão registrados na tabela rel_tarefa_operacao | 38 | // 02 a 18 estão registrados na tabela rel_tarefa_operacao |
| 42 | public static $OP_OPERACAO_REGISTRO = "01"; | 39 | public static $OP_OPERACAO_REGISTRO = "01"; |
| @@ -1156,21 +1153,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1156,21 +1153,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1156 | 1153 | ||
| 1157 | $resultado = $this->getObjPenWs()->receberReciboDeTramite($parametro); | 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 | catch (\SoapFault $fault) { | 1158 | catch (\SoapFault $fault) { |
| 1176 | $mensagem = $this->tratarFalhaWebService($fault); | 1159 | $mensagem = $this->tratarFalhaWebService($fault); |
| @@ -1194,19 +1177,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1194,19 +1177,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1194 | 1177 | ||
| 1195 | $resultado = $this->getObjPenWs()->receberReciboDeEnvio($parametro); | 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 | catch (\SoapFault $fault) { | 1182 | catch (\SoapFault $fault) { |
| 1212 | $mensagem = $this->tratarFalhaWebService($fault); | 1183 | $mensagem = $this->tratarFalhaWebService($fault); |
rn/ReceberReciboTramiteRN.php
| @@ -117,11 +117,21 @@ class ReceberReciboTramiteRN extends InfraRN | @@ -117,11 +117,21 @@ class ReceberReciboTramiteRN extends InfraRN | ||
| 117 | throw new InfraException('Parâmetro $parNumIdTramite não informado.'); | 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 | throw new InfraException("Não foi possível obter recibo de conclusão do trâmite '$parNumIdTramite'"); | 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 | //Verifica se o trâmite do processo se encontra devidamente registrado no sistema | 136 | //Verifica se o trâmite do processo se encontra devidamente registrado no sistema |
| 127 | $objTramiteDTO = new TramiteDTO(); | 137 | $objTramiteDTO = new TramiteDTO(); |
| @@ -144,6 +154,20 @@ class ReceberReciboTramiteRN extends InfraRN | @@ -144,6 +154,20 @@ class ReceberReciboTramiteRN extends InfraRN | ||
| 144 | 154 | ||
| 145 | //Armazenar dados do recibo de conclusão do trãmite | 155 | //Armazenar dados do recibo de conclusão do trãmite |
| 146 | $objReciboTramiteBD->cadastrar($objReciboTramiteDTO); | 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 | //ALTERA O ESTADO DO PROCEDIMENTO | 172 | //ALTERA O ESTADO DO PROCEDIMENTO |
| 149 | try { | 173 | try { |
rn/ReciboTramiteRN.php
| @@ -37,7 +37,8 @@ class ReciboTramiteRN extends InfraRN { | @@ -37,7 +37,8 @@ class ReciboTramiteRN extends InfraRN { | ||
| 37 | $objReciboTramiteDTO->retNumIdTramite(); | 37 | $objReciboTramiteDTO->retNumIdTramite(); |
| 38 | $objReciboTramiteDTO->retDthRecebimento(); | 38 | $objReciboTramiteDTO->retDthRecebimento(); |
| 39 | $objReciboTramiteDTO->retStrHashAssinatura(); | 39 | $objReciboTramiteDTO->retStrHashAssinatura(); |
| 40 | - | 40 | + $objReciboTramiteDTO->retStrCadeiaCertificado(); |
| 41 | + | ||
| 41 | $objReciboTramiteBD = new ReciboTramiteBD($objInfraIBanco); | 42 | $objReciboTramiteBD = new ReciboTramiteBD($objInfraIBanco); |
| 42 | $arrObjDTO = $objReciboTramiteBD->listar($objReciboTramiteDTO); | 43 | $arrObjDTO = $objReciboTramiteBD->listar($objReciboTramiteDTO); |
| 43 | break; | 44 | break; |
| @@ -49,7 +50,8 @@ class ReciboTramiteRN extends InfraRN { | @@ -49,7 +50,8 @@ class ReciboTramiteRN extends InfraRN { | ||
| 49 | $objReciboTramiteDTO->retNumIdTramite(); | 50 | $objReciboTramiteDTO->retNumIdTramite(); |
| 50 | $objReciboTramiteDTO->retDthRecebimento(); | 51 | $objReciboTramiteDTO->retDthRecebimento(); |
| 51 | $objReciboTramiteDTO->retStrHashAssinatura(); | 52 | $objReciboTramiteDTO->retStrHashAssinatura(); |
| 52 | - | 53 | + $objReciboTramiteDTO->retStrCadeiaCertificado(); |
| 54 | + | ||
| 53 | $objReciboTramiteBD = new ReciboTramiteRecebidoBD($objInfraIBanco); | 55 | $objReciboTramiteBD = new ReciboTramiteRecebidoBD($objInfraIBanco); |
| 54 | $arrObjDTO = $objReciboTramiteBD->listar($objReciboTramiteDTO); | 56 | $arrObjDTO = $objReciboTramiteBD->listar($objReciboTramiteDTO); |
| 55 | break; | 57 | break; |
| @@ -66,6 +68,7 @@ class ReciboTramiteRN extends InfraRN { | @@ -66,6 +68,7 @@ class ReciboTramiteRN extends InfraRN { | ||
| 66 | $objReciboTramiteDTO->retNumIdTramite(); | 68 | $objReciboTramiteDTO->retNumIdTramite(); |
| 67 | $objReciboTramiteDTO->retDthRecebimento(); | 69 | $objReciboTramiteDTO->retDthRecebimento(); |
| 68 | $objReciboTramiteDTO->retStrHashAssinatura(); | 70 | $objReciboTramiteDTO->retStrHashAssinatura(); |
| 71 | + $objReciboTramiteDTO->retStrCadeiaCertificado(); | ||
| 69 | 72 | ||
| 70 | $objReciboTramiteBD = new ReciboTramiteRecebidoBD($this->getObjInfraIBanco()); | 73 | $objReciboTramiteBD = new ReciboTramiteRecebidoBD($this->getObjInfraIBanco()); |
| 71 | $arrObjDTO = $objReciboTramiteBD->listar($objReciboTramiteDTO); | 74 | $arrObjDTO = $objReciboTramiteBD->listar($objReciboTramiteDTO); |