Commit 0d2ff516ef1a196dbd5fc6c9fa2907c62673b566
1 parent
55907536
Exists in
master
and in
7 other branches
Correções de compatibilidade com SQLServer e compatibilidade de versão do módulo
Showing
10 changed files
with
1213 additions
and
1195 deletions
Show diff stats
| @@ -0,0 +1,14 @@ | @@ -0,0 +1,14 @@ | ||
| 1 | +# EditorConfig is awesome: http://EditorConfig.org | ||
| 2 | + | ||
| 3 | +# top-most EditorConfig file | ||
| 4 | +root = true | ||
| 5 | + | ||
| 6 | +# Unix-style newlines with a newline ending every file | ||
| 7 | +[*.php] | ||
| 8 | +indent_style = space | ||
| 9 | +indent_size = 4 | ||
| 10 | +end_of_line = crlf | ||
| 11 | +insert_final_newline = true | ||
| 12 | +charset = latin1 | ||
| 13 | +trim_trailing_whitespace = true | ||
| 14 | +insert_final_newline = true |
PENIntegracao.php
| @@ -2,6 +2,8 @@ | @@ -2,6 +2,8 @@ | ||
| 2 | 2 | ||
| 3 | class PENIntegracao extends SeiIntegracao { | 3 | class PENIntegracao extends SeiIntegracao { |
| 4 | 4 | ||
| 5 | + const COMPATIBILIDADE_MODULO_SEI = array('3.0.5', '3.0.6', '3.0.7', '3.0.8', '3.0.9', '3.0.11'); | ||
| 6 | + | ||
| 5 | private static $strDiretorio; | 7 | private static $strDiretorio; |
| 6 | 8 | ||
| 7 | public function getNome() { | 9 | public function getNome() { |
| @@ -9,9 +11,10 @@ class PENIntegracao extends SeiIntegracao { | @@ -9,9 +11,10 @@ class PENIntegracao extends SeiIntegracao { | ||
| 9 | } | 11 | } |
| 10 | 12 | ||
| 11 | public function getVersao() { | 13 | public function getVersao() { |
| 12 | - return '1.1.1'; | 14 | + return '1.1.2'; |
| 13 | } | 15 | } |
| 14 | 16 | ||
| 17 | + | ||
| 15 | public function getInstituicao() { | 18 | public function getInstituicao() { |
| 16 | return 'Ministério do Planejamento - MPDG (Projeto Colaborativo no Portal do SPB)'; | 19 | return 'Ministério do Planejamento - MPDG (Projeto Colaborativo no Portal do SPB)'; |
| 17 | } | 20 | } |
| @@ -21,7 +24,7 @@ class PENIntegracao extends SeiIntegracao { | @@ -21,7 +24,7 @@ class PENIntegracao extends SeiIntegracao { | ||
| 21 | $objProcedimentoDTO = new ProcedimentoDTO(); | 24 | $objProcedimentoDTO = new ProcedimentoDTO(); |
| 22 | $objProcedimentoDTO->setDblIdProcedimento($objSeiIntegracaoDTO->getIdProcedimento()); | 25 | $objProcedimentoDTO->setDblIdProcedimento($objSeiIntegracaoDTO->getIdProcedimento()); |
| 23 | $objProcedimentoDTO->retTodos(); | 26 | $objProcedimentoDTO->retTodos(); |
| 24 | - | 27 | + |
| 25 | $objProcedimentoRN = new ProcedimentoRN(); | 28 | $objProcedimentoRN = new ProcedimentoRN(); |
| 26 | $objProcedimentoDTO = $objProcedimentoRN->consultarRN0201($objProcedimentoDTO); | 29 | $objProcedimentoDTO = $objProcedimentoRN->consultarRN0201($objProcedimentoDTO); |
| 27 | 30 | ||
| @@ -32,8 +35,8 @@ class PENIntegracao extends SeiIntegracao { | @@ -32,8 +35,8 @@ class PENIntegracao extends SeiIntegracao { | ||
| 32 | $dblIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento(); | 35 | $dblIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento(); |
| 33 | $numIdUsuario = SessaoSEI::getInstance()->getNumIdUsuario(); | 36 | $numIdUsuario = SessaoSEI::getInstance()->getNumIdUsuario(); |
| 34 | $numIdUnidadeAtual = SessaoSEI::getInstance()->getNumIdUnidadeAtual(); | 37 | $numIdUnidadeAtual = SessaoSEI::getInstance()->getNumIdUnidadeAtual(); |
| 35 | - $objInfraParametro = new InfraParametro(BancoSEI::getInstance()); | ||
| 36 | - | 38 | + $objInfraParametro = new InfraParametro(BancoSEI::getInstance()); |
| 39 | + | ||
| 37 | //Verifica se o processo encontra-se aberto na unidade atual | 40 | //Verifica se o processo encontra-se aberto na unidade atual |
| 38 | $objAtividadeRN = new AtividadeRN(); | 41 | $objAtividadeRN = new AtividadeRN(); |
| 39 | $objPesquisaPendenciaDTO = new PesquisaPendenciaDTO(); | 42 | $objPesquisaPendenciaDTO = new PesquisaPendenciaDTO(); |
| @@ -65,7 +68,7 @@ class PENIntegracao extends SeiIntegracao { | @@ -65,7 +68,7 @@ class PENIntegracao extends SeiIntegracao { | ||
| 65 | if($objPenUnidadeRN->contar($objPenUnidadeDTO) != 0) { | 68 | if($objPenUnidadeRN->contar($objPenUnidadeDTO) != 0) { |
| 66 | $numTabBotao = $objPaginaSEI->getProxTabBarraComandosSuperior(); | 69 | $numTabBotao = $objPaginaSEI->getProxTabBarraComandosSuperior(); |
| 67 | $strAcoesProcedimento .= '<a id="validar_expedir_processo" href="' . $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador.php?acao=pen_procedimento_expedir&acao_origem=procedimento_visualizar&acao_retorno=arvore_visualizar&id_procedimento=' . $dblIdProcedimento . '&arvore=1')) . '" tabindex="' . $numTabBotao . '" class="botaoSEI"><img class="infraCorBarraSistema" src="' . $this->getDiretorioImagens() . '/pen_expedir_procedimento.gif" alt="Envio Externo de Processo" title="Envio Externo de Processo" /></a>'; | 70 | $strAcoesProcedimento .= '<a id="validar_expedir_processo" href="' . $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador.php?acao=pen_procedimento_expedir&acao_origem=procedimento_visualizar&acao_retorno=arvore_visualizar&id_procedimento=' . $dblIdProcedimento . '&arvore=1')) . '" tabindex="' . $numTabBotao . '" class="botaoSEI"><img class="infraCorBarraSistema" src="' . $this->getDiretorioImagens() . '/pen_expedir_procedimento.gif" alt="Envio Externo de Processo" title="Envio Externo de Processo" /></a>'; |
| 68 | - } | 71 | + } |
| 69 | } | 72 | } |
| 70 | 73 | ||
| 71 | //Apresenta o botão da página de recibos | 74 | //Apresenta o botão da página de recibos |
| @@ -80,20 +83,20 @@ class PENIntegracao extends SeiIntegracao { | @@ -80,20 +83,20 @@ class PENIntegracao extends SeiIntegracao { | ||
| 80 | $strAcoesProcedimento .= '</a>'; | 83 | $strAcoesProcedimento .= '</a>'; |
| 81 | } | 84 | } |
| 82 | } | 85 | } |
| 83 | - | 86 | + |
| 84 | //Apresenta o botão de cancelar trâmite | 87 | //Apresenta o botão de cancelar trâmite |
| 85 | $objAtividadeDTO = $objExpedirProcedimentoRN->verificarProcessoEmExpedicao($objSeiIntegracaoDTO->getIdProcedimento()); | 88 | $objAtividadeDTO = $objExpedirProcedimentoRN->verificarProcessoEmExpedicao($objSeiIntegracaoDTO->getIdProcedimento()); |
| 86 | if ($objAtividadeDTO && $objAtividadeDTO->getNumIdTarefa() == ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO)) { | 89 | if ($objAtividadeDTO && $objAtividadeDTO->getNumIdTarefa() == ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO)) { |
| 87 | $strAcoesProcedimento .= '<a href="' . $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador.php?acao=pen_procedimento_cancelar_expedir&acao_origem=procedimento_visualizar&acao_retorno=arvore_visualizar&id_procedimento=' . $dblIdProcedimento . '&arvore=1')) . '" tabindex="' . $numTabBotao . '" class="botaoSEI">'; | 90 | $strAcoesProcedimento .= '<a href="' . $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador.php?acao=pen_procedimento_cancelar_expedir&acao_origem=procedimento_visualizar&acao_retorno=arvore_visualizar&id_procedimento=' . $dblIdProcedimento . '&arvore=1')) . '" tabindex="' . $numTabBotao . '" class="botaoSEI">'; |
| 88 | $strAcoesProcedimento .= '<img class="infraCorBarraSistema" src="' . $this->getDiretorioImagens() . '/sei_desanexar_processo.gif" alt="Cancelar Tramitação Externa" title="Cancelar Tramitação Externa" />'; | 91 | $strAcoesProcedimento .= '<img class="infraCorBarraSistema" src="' . $this->getDiretorioImagens() . '/sei_desanexar_processo.gif" alt="Cancelar Tramitação Externa" title="Cancelar Tramitação Externa" />'; |
| 89 | $strAcoesProcedimento .= '</a>'; | 92 | $strAcoesProcedimento .= '</a>'; |
| 90 | - } | ||
| 91 | - | 93 | + } |
| 94 | + | ||
| 92 | return array($strAcoesProcedimento); | 95 | return array($strAcoesProcedimento); |
| 93 | } | 96 | } |
| 94 | 97 | ||
| 95 | public function montarIconeControleProcessos($arrObjProcedimentoAPI = array()) { | 98 | public function montarIconeControleProcessos($arrObjProcedimentoAPI = array()) { |
| 96 | - | 99 | + |
| 97 | $arrStrIcone = array(); | 100 | $arrStrIcone = array(); |
| 98 | $arrDblIdProcedimento = array(); | 101 | $arrDblIdProcedimento = array(); |
| 99 | 102 | ||
| @@ -131,7 +134,7 @@ class PENIntegracao extends SeiIntegracao { | @@ -131,7 +134,7 @@ class PENIntegracao extends SeiIntegracao { | ||
| 131 | 134 | ||
| 132 | return $arrStrIcone; | 135 | return $arrStrIcone; |
| 133 | } | 136 | } |
| 134 | - | 137 | + |
| 135 | public function montarIconeProcesso(ProcedimentoAPI $objProcedimentoAP) { | 138 | public function montarIconeProcesso(ProcedimentoAPI $objProcedimentoAP) { |
| 136 | $dblIdProcedimento = $objProcedimentoAP->getIdProcedimento(); | 139 | $dblIdProcedimento = $objProcedimentoAP->getIdProcedimento(); |
| 137 | 140 | ||
| @@ -146,15 +149,15 @@ class PENIntegracao extends SeiIntegracao { | @@ -146,15 +149,15 @@ class PENIntegracao extends SeiIntegracao { | ||
| 146 | $objArvoreAcaoItemAPI->setHref('javascript:alert(\'Um trâmite para esse processo foi recusado\');'); | 149 | $objArvoreAcaoItemAPI->setHref('javascript:alert(\'Um trâmite para esse processo foi recusado\');'); |
| 147 | 150 | ||
| 148 | $objArvoreAcaoItemAPI->setSinHabilitado('S'); | 151 | $objArvoreAcaoItemAPI->setSinHabilitado('S'); |
| 149 | - | 152 | + |
| 150 | $objProcedimentoDTO = new ProcedimentoDTO(); | 153 | $objProcedimentoDTO = new ProcedimentoDTO(); |
| 151 | $objProcedimentoDTO->setDblIdProcedimento($dblIdProcedimento); | 154 | $objProcedimentoDTO->setDblIdProcedimento($dblIdProcedimento); |
| 152 | $objProcedimentoDTO->retDblIdProcedimento(); | 155 | $objProcedimentoDTO->retDblIdProcedimento(); |
| 153 | $objProcedimentoDTO->retStrStaEstadoProtocolo(); | 156 | $objProcedimentoDTO->retStrStaEstadoProtocolo(); |
| 154 | - | 157 | + |
| 155 | $objProcedimentoBD = new ProcedimentoBD(BancoSEI::getInstance()); | 158 | $objProcedimentoBD = new ProcedimentoBD(BancoSEI::getInstance()); |
| 156 | $arrObjProcedimentoDTO = $objProcedimentoBD->consultar($objProcedimentoDTO); | 159 | $arrObjProcedimentoDTO = $objProcedimentoBD->consultar($objProcedimentoDTO); |
| 157 | - | 160 | + |
| 158 | if (!empty($arrObjProcedimentoDTO)) { | 161 | if (!empty($arrObjProcedimentoDTO)) { |
| 159 | $dblIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento(); | 162 | $dblIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento(); |
| 160 | $objPenProtocoloDTO = new PenProtocoloDTO(); | 163 | $objPenProtocoloDTO = new PenProtocoloDTO(); |
| @@ -176,7 +179,7 @@ class PENIntegracao extends SeiIntegracao { | @@ -176,7 +179,7 @@ class PENIntegracao extends SeiIntegracao { | ||
| 176 | } | 179 | } |
| 177 | 180 | ||
| 178 | public function montarIconeAcompanhamentoEspecial($arrObjProcedimentoDTO) { | 181 | public function montarIconeAcompanhamentoEspecial($arrObjProcedimentoDTO) { |
| 179 | - | 182 | + |
| 180 | } | 183 | } |
| 181 | 184 | ||
| 182 | public function getDiretorioImagens() { | 185 | public function getDiretorioImagens() { |
| @@ -203,110 +206,121 @@ class PENIntegracao extends SeiIntegracao { | @@ -203,110 +206,121 @@ class PENIntegracao extends SeiIntegracao { | ||
| 203 | } | 206 | } |
| 204 | 207 | ||
| 205 | public static function getDiretorio() { | 208 | public static function getDiretorio() { |
| 206 | - | ||
| 207 | - | ||
| 208 | $arrConfig = ConfiguracaoSEI::getInstance()->getValor('SEI', 'Modulos'); | 209 | $arrConfig = ConfiguracaoSEI::getInstance()->getValor('SEI', 'Modulos'); |
| 209 | $strModulo = $arrConfig['PENIntegracao']; | 210 | $strModulo = $arrConfig['PENIntegracao']; |
| 210 | - | ||
| 211 | return "modulos/".$strModulo; | 211 | return "modulos/".$strModulo; |
| 212 | } | 212 | } |
| 213 | 213 | ||
| 214 | - public function processarControlador($strAcao) { | 214 | + public function processarControlador($strAcao) |
| 215 | + { | ||
| 216 | + //Configuração de páginas do contexto da árvore do processo para apresentação de erro de forma correta | ||
| 217 | + $bolArvore = in_array($strAcao, array('pen_procedimento_expedir', 'pen_procedimento_estado')); | ||
| 218 | + PaginaSEI::getInstance()->setBolArvore($bolArvore); | ||
| 219 | + | ||
| 220 | + if (strpos($strAcao, 'pen_') === false) { | ||
| 221 | + return false; | ||
| 222 | + } | ||
| 223 | + | ||
| 224 | + PENIntegracao::validarCompatibilidadeModulo(); | ||
| 225 | + | ||
| 215 | switch ($strAcao) { | 226 | switch ($strAcao) { |
| 216 | case 'pen_procedimento_expedir': | 227 | case 'pen_procedimento_expedir': |
| 217 | require_once dirname(__FILE__) . '/pen_procedimento_expedir.php'; | 228 | require_once dirname(__FILE__) . '/pen_procedimento_expedir.php'; |
| 218 | - return true; | ||
| 219 | - //TODO: Alterar nome do recurso para pen_procedimento_expedir_unidade_sel | 229 | + break; |
| 230 | + | ||
| 220 | case 'pen_unidade_sel_expedir_procedimento': | 231 | case 'pen_unidade_sel_expedir_procedimento': |
| 221 | require_once dirname(__FILE__) . '/pen_unidade_sel_expedir_procedimento.php'; | 232 | require_once dirname(__FILE__) . '/pen_unidade_sel_expedir_procedimento.php'; |
| 222 | - return true; | 233 | + break; |
| 223 | 234 | ||
| 224 | case 'pen_procedimento_processo_anexado': | 235 | case 'pen_procedimento_processo_anexado': |
| 225 | require_once dirname(__FILE__) . '/pen_procedimento_processo_anexado.php'; | 236 | require_once dirname(__FILE__) . '/pen_procedimento_processo_anexado.php'; |
| 226 | - return true; | 237 | + break; |
| 227 | 238 | ||
| 228 | case 'pen_procedimento_cancelar_expedir': | 239 | case 'pen_procedimento_cancelar_expedir': |
| 229 | require_once dirname(__FILE__) . '/pen_procedimento_cancelar_expedir.php'; | 240 | require_once dirname(__FILE__) . '/pen_procedimento_cancelar_expedir.php'; |
| 230 | - return true; | 241 | + break; |
| 231 | 242 | ||
| 232 | case 'pen_procedimento_expedido_listar': | 243 | case 'pen_procedimento_expedido_listar': |
| 233 | require_once dirname(__FILE__) . '/pen_procedimento_expedido_listar.php'; | 244 | require_once dirname(__FILE__) . '/pen_procedimento_expedido_listar.php'; |
| 234 | - return true; | 245 | + break; |
| 235 | 246 | ||
| 236 | case 'pen_map_tipo_documento_envio_listar': | 247 | case 'pen_map_tipo_documento_envio_listar': |
| 237 | case 'pen_map_tipo_documento_envio_excluir': | 248 | case 'pen_map_tipo_documento_envio_excluir': |
| 238 | case 'pen_map_tipo_documento_envio_desativar': | 249 | case 'pen_map_tipo_documento_envio_desativar': |
| 239 | case 'pen_map_tipo_documento_envio_ativar': | 250 | case 'pen_map_tipo_documento_envio_ativar': |
| 240 | require_once dirname(__FILE__) . '/pen_map_tipo_documento_envio_listar.php'; | 251 | require_once dirname(__FILE__) . '/pen_map_tipo_documento_envio_listar.php'; |
| 241 | - return true; | 252 | + break; |
| 242 | 253 | ||
| 243 | case 'pen_map_tipo_documento_envio_cadastrar': | 254 | case 'pen_map_tipo_documento_envio_cadastrar': |
| 244 | case 'pen_map_tipo_documento_envio_visualizar': | 255 | case 'pen_map_tipo_documento_envio_visualizar': |
| 245 | require_once dirname(__FILE__) . '/pen_map_tipo_documento_envio_cadastrar.php'; | 256 | require_once dirname(__FILE__) . '/pen_map_tipo_documento_envio_cadastrar.php'; |
| 246 | - return true; | 257 | + break; |
| 247 | 258 | ||
| 248 | case 'pen_map_tipo_documento_recebimento_listar': | 259 | case 'pen_map_tipo_documento_recebimento_listar': |
| 249 | case 'pen_map_tipo_documento_recebimento_excluir': | 260 | case 'pen_map_tipo_documento_recebimento_excluir': |
| 250 | require_once dirname(__FILE__) . '/pen_map_tipo_documento_recebimento_listar.php'; | 261 | require_once dirname(__FILE__) . '/pen_map_tipo_documento_recebimento_listar.php'; |
| 251 | - return true; | 262 | + break; |
| 252 | 263 | ||
| 253 | case 'pen_map_tipo_documento_recebimento_cadastrar': | 264 | case 'pen_map_tipo_documento_recebimento_cadastrar': |
| 254 | case 'pen_map_tipo_documento_recebimento_visualizar': | 265 | case 'pen_map_tipo_documento_recebimento_visualizar': |
| 255 | require_once dirname(__FILE__) . '/pen_map_tipo_documento_recebimento_cadastrar.php'; | 266 | require_once dirname(__FILE__) . '/pen_map_tipo_documento_recebimento_cadastrar.php'; |
| 256 | - return true; | 267 | + break; |
| 257 | 268 | ||
| 258 | case 'pen_apensados_selecionar_expedir_procedimento': | 269 | case 'pen_apensados_selecionar_expedir_procedimento': |
| 259 | require_once dirname(__FILE__) . '/apensados_selecionar_expedir_procedimento.php'; | 270 | require_once dirname(__FILE__) . '/apensados_selecionar_expedir_procedimento.php'; |
| 260 | - return true; | 271 | + break; |
| 261 | 272 | ||
| 262 | case 'pen_procedimento_estado': | 273 | case 'pen_procedimento_estado': |
| 263 | require_once dirname(__FILE__) . '/pen_procedimento_estado.php'; | 274 | require_once dirname(__FILE__) . '/pen_procedimento_estado.php'; |
| 264 | - return true; | ||
| 265 | - | 275 | + break; |
| 276 | + | ||
| 266 | // Mapeamento de Hipóteses Legais de Envio | 277 | // Mapeamento de Hipóteses Legais de Envio |
| 267 | case 'pen_map_hipotese_legal_envio_cadastrar': | 278 | case 'pen_map_hipotese_legal_envio_cadastrar': |
| 268 | case 'pen_map_hipotese_legal_envio_visualizar': | 279 | case 'pen_map_hipotese_legal_envio_visualizar': |
| 269 | require_once dirname(__FILE__) . '/pen_map_hipotese_legal_envio_cadastrar.php'; | 280 | require_once dirname(__FILE__) . '/pen_map_hipotese_legal_envio_cadastrar.php'; |
| 270 | - return true; | ||
| 271 | - | 281 | + break; |
| 282 | + | ||
| 272 | case 'pen_map_hipotese_legal_envio_listar': | 283 | case 'pen_map_hipotese_legal_envio_listar': |
| 273 | case 'pen_map_hipotese_legal_envio_excluir': | 284 | case 'pen_map_hipotese_legal_envio_excluir': |
| 274 | require_once dirname(__FILE__) . '/pen_map_hipotese_legal_envio_listar.php'; | 285 | require_once dirname(__FILE__) . '/pen_map_hipotese_legal_envio_listar.php'; |
| 275 | - return true; | ||
| 276 | - | 286 | + break; |
| 287 | + | ||
| 277 | // Mapeamento de Hipóteses Legais de Recebimento | 288 | // Mapeamento de Hipóteses Legais de Recebimento |
| 278 | case 'pen_map_hipotese_legal_recebimento_cadastrar': | 289 | case 'pen_map_hipotese_legal_recebimento_cadastrar': |
| 279 | case 'pen_map_hipotese_legal_recebimento_visualizar': | 290 | case 'pen_map_hipotese_legal_recebimento_visualizar': |
| 280 | require_once dirname(__FILE__) . '/pen_map_hipotese_legal_recebimento_cadastrar.php'; | 291 | require_once dirname(__FILE__) . '/pen_map_hipotese_legal_recebimento_cadastrar.php'; |
| 281 | - return true; | ||
| 282 | - | 292 | + break; |
| 293 | + | ||
| 283 | case 'pen_map_hipotese_legal_recebimento_listar': | 294 | case 'pen_map_hipotese_legal_recebimento_listar': |
| 284 | case 'pen_map_hipotese_legal_recebimento_excluir': | 295 | case 'pen_map_hipotese_legal_recebimento_excluir': |
| 285 | require_once dirname(__FILE__) . '/pen_map_hipotese_legal_recebimento_listar.php'; | 296 | require_once dirname(__FILE__) . '/pen_map_hipotese_legal_recebimento_listar.php'; |
| 286 | - return true; | ||
| 287 | - | 297 | + break; |
| 298 | + | ||
| 288 | case 'pen_map_hipotese_legal_padrao_cadastrar': | 299 | case 'pen_map_hipotese_legal_padrao_cadastrar': |
| 289 | case 'pen_map_hipotese_legal_padrao_visualizar': | 300 | case 'pen_map_hipotese_legal_padrao_visualizar': |
| 290 | require_once dirname(__FILE__) . '/pen_map_hipotese_legal_padrao_cadastrar.php'; | 301 | require_once dirname(__FILE__) . '/pen_map_hipotese_legal_padrao_cadastrar.php'; |
| 291 | - return true; | ||
| 292 | - | 302 | + break; |
| 303 | + | ||
| 293 | case 'pen_map_unidade_cadastrar': | 304 | case 'pen_map_unidade_cadastrar': |
| 294 | case 'pen_map_unidade_visualizar': | 305 | case 'pen_map_unidade_visualizar': |
| 295 | require_once dirname(__FILE__) . '/pen_map_unidade_cadastrar.php'; | 306 | require_once dirname(__FILE__) . '/pen_map_unidade_cadastrar.php'; |
| 296 | - return true; | ||
| 297 | - | 307 | + break; |
| 308 | + | ||
| 298 | case 'pen_map_unidade_listar': | 309 | case 'pen_map_unidade_listar': |
| 299 | case 'pen_map_unidade_excluir': | 310 | case 'pen_map_unidade_excluir': |
| 300 | require_once dirname(__FILE__) . '/pen_map_unidade_listar.php'; | 311 | require_once dirname(__FILE__) . '/pen_map_unidade_listar.php'; |
| 301 | - return true; | ||
| 302 | - | 312 | + break; |
| 313 | + | ||
| 303 | case 'pen_parametros_configuracao': | 314 | case 'pen_parametros_configuracao': |
| 304 | case 'pen_parametros_configuracao_salvar': | 315 | case 'pen_parametros_configuracao_salvar': |
| 305 | require_once dirname(__FILE__) . '/pen_parametros_configuracao.php'; | 316 | require_once dirname(__FILE__) . '/pen_parametros_configuracao.php'; |
| 306 | - return true; | 317 | + break; |
| 318 | + default: | ||
| 319 | + return false; | ||
| 320 | + break; | ||
| 307 | } | 321 | } |
| 308 | 322 | ||
| 309 | - return false; | 323 | + return true; |
| 310 | } | 324 | } |
| 311 | 325 | ||
| 312 | public function processarControladorAjax($strAcao) { | 326 | public function processarControladorAjax($strAcao) { |
| @@ -325,7 +339,7 @@ class PENIntegracao extends SeiIntegracao { | @@ -325,7 +339,7 @@ class PENIntegracao extends SeiIntegracao { | ||
| 325 | break; | 339 | break; |
| 326 | 340 | ||
| 327 | case 'pen_apensados_auto_completar_expedir_procedimento': | 341 | case 'pen_apensados_auto_completar_expedir_procedimento': |
| 328 | - //TODO: Validar parâmetros passados via ajax | 342 | + //TODO: Validar parâmetros passados via ajax |
| 329 | $dblIdProcedimentoAtual = $_POST['id_procedimento_atual']; | 343 | $dblIdProcedimentoAtual = $_POST['id_procedimento_atual']; |
| 330 | $numIdUnidadeAtual = SessaoSEI::getInstance()->getNumIdUnidadeAtual(); | 344 | $numIdUnidadeAtual = SessaoSEI::getInstance()->getNumIdUnidadeAtual(); |
| 331 | $arrObjProcedimentoDTO = ProcessoEletronicoINT::autoCompletarProcessosApensados($dblIdProcedimentoAtual, $numIdUnidadeAtual, $_POST['palavras_pesquisa']); | 345 | $arrObjProcedimentoDTO = ProcessoEletronicoINT::autoCompletarProcessosApensados($dblIdProcedimentoAtual, $numIdUnidadeAtual, $_POST['palavras_pesquisa']); |
| @@ -340,4 +354,10 @@ class PENIntegracao extends SeiIntegracao { | @@ -340,4 +354,10 @@ class PENIntegracao extends SeiIntegracao { | ||
| 340 | return $xml; | 354 | return $xml; |
| 341 | } | 355 | } |
| 342 | 356 | ||
| 343 | -} | ||
| 344 | \ No newline at end of file | 357 | \ No newline at end of file |
| 358 | + public static function validarCompatibilidadeModulo($bolGerarExcecao = true, $strVersaoSEI = SEI_VERSAO) { | ||
| 359 | + $objPENIntegracao = new PENIntegracao(); | ||
| 360 | + if(!in_array($strVersaoSEI, self::COMPATIBILIDADE_MODULO_SEI)) { | ||
| 361 | + throw new InfraException(sprintf("Módulo %s (versão %s) não é compatível com a versão %s do SEI.", $objPENIntegracao->getNome(), $objPENIntegracao->getVersao(), $strVersaoSEI)); | ||
| 362 | + } | ||
| 363 | + } | ||
| 364 | +} |
pen_procedimento_expedir.php
| @@ -12,11 +12,11 @@ try { | @@ -12,11 +12,11 @@ try { | ||
| 12 | 12 | ||
| 13 | $objSessaoSEI = SessaoSEI::getInstance(); | 13 | $objSessaoSEI = SessaoSEI::getInstance(); |
| 14 | $objPaginaSEI = PaginaSEI::getInstance(); | 14 | $objPaginaSEI = PaginaSEI::getInstance(); |
| 15 | - | 15 | + |
| 16 | $objSessaoSEI->validarLink(); | 16 | $objSessaoSEI->validarLink(); |
| 17 | $objSessaoSEI->validarPermissao($_GET['acao']); | 17 | $objSessaoSEI->validarPermissao($_GET['acao']); |
| 18 | 18 | ||
| 19 | - | 19 | + |
| 20 | $strParametros = ''; | 20 | $strParametros = ''; |
| 21 | $bolErrosValidacao = false; | 21 | $bolErrosValidacao = false; |
| 22 | $executarExpedicao = false; | 22 | $executarExpedicao = false; |
| @@ -41,21 +41,18 @@ try { | @@ -41,21 +41,18 @@ try { | ||
| 41 | if (isset($_GET['executar'])) { | 41 | if (isset($_GET['executar'])) { |
| 42 | $executarExpedicao = filter_var($_GET['executar'], FILTER_VALIDATE_BOOLEAN); | 42 | $executarExpedicao = filter_var($_GET['executar'], FILTER_VALIDATE_BOOLEAN); |
| 43 | } | 43 | } |
| 44 | - | ||
| 45 | - | ||
| 46 | - | ||
| 47 | - | 44 | + |
| 48 | //$objPaginaSEI->setBolExibirMensagens(false); | 45 | //$objPaginaSEI->setBolExibirMensagens(false); |
| 49 | 46 | ||
| 50 | //$resultProcessosAnexados = $objExpedirProcedimentosRN->consultarProcessosApensados($idProcedimento); | 47 | //$resultProcessosAnexados = $objExpedirProcedimentosRN->consultarProcessosApensados($idProcedimento); |
| 51 | - | 48 | + |
| 52 | //$strLinkAssuntosSelecao = $objSessaoSEI->assinarLink('controlador.php?acao=pen_procedimento_processo_anexado&tipo_selecao=2&id_object=objLupaAssuntos'); | 49 | //$strLinkAssuntosSelecao = $objSessaoSEI->assinarLink('controlador.php?acao=pen_procedimento_processo_anexado&tipo_selecao=2&id_object=objLupaAssuntos'); |
| 53 | 50 | ||
| 54 | - | 51 | + |
| 55 | switch ($_GET['acao']) { | 52 | switch ($_GET['acao']) { |
| 56 | 53 | ||
| 57 | case 'pen_procedimento_expedir': | 54 | case 'pen_procedimento_expedir': |
| 58 | - | 55 | + |
| 59 | $strTitulo = 'Envio Externo de Processo'; | 56 | $strTitulo = 'Envio Externo de Processo'; |
| 60 | $arrComandos[] = '<button type="button" accesskey="E" onclick="enviarForm(this)" value="Enviar" class="infraButton" style="width:8%;"><span class="infraTeclaAtalho">E</span>nviar</button>'; | 57 | $arrComandos[] = '<button type="button" accesskey="E" onclick="enviarForm(this)" value="Enviar" class="infraButton" style="width:8%;"><span class="infraTeclaAtalho">E</span>nviar</button>'; |
| 61 | $arrComandos[] = '<button type="button" accesskey="C" name="btnCancelar" value="Cancelar" onclick="location.href=\'' . $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador.php?acao=' . $objPaginaSEI->getAcaoRetorno() . '&acao_origem=' . $_GET['acao'] . '&acao_destino=' . $_GET['acao'] . $strParametros)) . '\';" class="infraButton"><span class="infraTeclaAtalho">C</span>ancelar</button>'; | 58 | $arrComandos[] = '<button type="button" accesskey="C" name="btnCancelar" value="Cancelar" onclick="location.href=\'' . $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador.php?acao=' . $objPaginaSEI->getAcaoRetorno() . '&acao_origem=' . $_GET['acao'] . '&acao_destino=' . $_GET['acao'] . $strParametros)) . '\';" class="infraButton"><span class="infraTeclaAtalho">C</span>ancelar</button>'; |
| @@ -64,57 +61,57 @@ try { | @@ -64,57 +61,57 @@ try { | ||
| 64 | //Obter dados do repositório em que o SEI está registrado (Repositório de Origem) | 61 | //Obter dados do repositório em que o SEI está registrado (Repositório de Origem) |
| 65 | $objPenParametroRN = new PenParametroRN(); | 62 | $objPenParametroRN = new PenParametroRN(); |
| 66 | $numIdRepositorioOrigem = $objPenParametroRN->getParametro('PEN_ID_REPOSITORIO_ORIGEM'); | 63 | $numIdRepositorioOrigem = $objPenParametroRN->getParametro('PEN_ID_REPOSITORIO_ORIGEM'); |
| 67 | - | 64 | + |
| 68 | //Preparação dos dados para montagem da tela de expedição de processos | 65 | //Preparação dos dados para montagem da tela de expedição de processos |
| 69 | - $repositorios = $objExpedirProcedimentosRN->listarRepositoriosDeEstruturas(); | 66 | + $repositorios = $objExpedirProcedimentosRN->listarRepositoriosDeEstruturas(); |
| 70 | $motivosDeUrgencia = $objExpedirProcedimentosRN->consultarMotivosUrgencia(); | 67 | $motivosDeUrgencia = $objExpedirProcedimentosRN->consultarMotivosUrgencia(); |
| 71 | 68 | ||
| 72 | $idRepositorioSelecionado = (isset($numIdRepositorio)) ? $numIdRepositorio : ''; | 69 | $idRepositorioSelecionado = (isset($numIdRepositorio)) ? $numIdRepositorio : ''; |
| 73 | $strItensSelRepositorioEstruturas = InfraINT::montarSelectArray('', 'Selecione', $idRepositorioSelecionado, $repositorios); | 70 | $strItensSelRepositorioEstruturas = InfraINT::montarSelectArray('', 'Selecione', $idRepositorioSelecionado, $repositorios); |
| 74 | - | 71 | + |
| 75 | $idMotivosUrgenciaSelecionado = (isset($idMotivosUrgenciaSelecionado)) ? $idMotivosUrgenciaSelecionado : ''; | 72 | $idMotivosUrgenciaSelecionado = (isset($idMotivosUrgenciaSelecionado)) ? $idMotivosUrgenciaSelecionado : ''; |
| 76 | - $strItensSelMotivosUrgencia = InfraINT::montarSelectArray('', 'Selecione', $idMotivosUrgenciaSelecionado, $motivosDeUrgencia); | 73 | + $strItensSelMotivosUrgencia = InfraINT::montarSelectArray('', 'Selecione', $idMotivosUrgenciaSelecionado, $motivosDeUrgencia); |
| 77 | 74 | ||
| 78 | - $strLinkAjaxUnidade = $objSessaoSEI->assinarLink('controlador_ajax.php?acao_ajax=pen_unidade_auto_completar_expedir_procedimento'); | 75 | + $strLinkAjaxUnidade = $objSessaoSEI->assinarLink('controlador_ajax.php?acao_ajax=pen_unidade_auto_completar_expedir_procedimento'); |
| 79 | $strLinkAjaxProcedimentoApensado = $objSessaoSEI->assinarLink('controlador_ajax.php?acao_ajax=pen_apensados_auto_completar_expedir_procedimento'); | 76 | $strLinkAjaxProcedimentoApensado = $objSessaoSEI->assinarLink('controlador_ajax.php?acao_ajax=pen_apensados_auto_completar_expedir_procedimento'); |
| 80 | - | 77 | + |
| 81 | //$strLinkUnidadeSelecao = $objSessaoSEI->assinarLink('controlador.php?acao=pen_unidade_sel_expedir_procedimento&tipo_selecao=2&id_object=objLupaUnidades'); | 78 | //$strLinkUnidadeSelecao = $objSessaoSEI->assinarLink('controlador.php?acao=pen_unidade_sel_expedir_procedimento&tipo_selecao=2&id_object=objLupaUnidades'); |
| 82 | //$strLinkRepositorioSelecao = $objSessaoSEI->assinarLink('controlador.php?acao=pen_repositorio_selecionar_expedir_procedimento&tipo_selecao=2&id_object=objLupaProcedimentosApensados'); | 79 | //$strLinkRepositorioSelecao = $objSessaoSEI->assinarLink('controlador.php?acao=pen_repositorio_selecionar_expedir_procedimento&tipo_selecao=2&id_object=objLupaProcedimentosApensados'); |
| 83 | $strLinkProcedimentosApensadosSelecao = $objSessaoSEI->assinarLink('controlador.php?acao=pen_apensados_selecionar_expedir_procedimento&tipo_selecao=2&id_object=objLupaProcedimentosApensados&id_procedimento='.$idProcedimento.''); | 80 | $strLinkProcedimentosApensadosSelecao = $objSessaoSEI->assinarLink('controlador.php?acao=pen_apensados_selecionar_expedir_procedimento&tipo_selecao=2&id_object=objLupaProcedimentosApensados&id_procedimento='.$idProcedimento.''); |
| 84 | 81 | ||
| 85 | //TODO: Obter dados do repositório e unidade de orígem através de serviço do PEN | 82 | //TODO: Obter dados do repositório e unidade de orígem através de serviço do PEN |
| 86 | //Obtenção dos parâmetros selecionados pelo usuário | 83 | //Obtenção dos parâmetros selecionados pelo usuário |
| 87 | - | 84 | + |
| 88 | //TODO: Obter repositório de origem a partir dos parâmetros do sistema | 85 | //TODO: Obter repositório de origem a partir dos parâmetros do sistema |
| 89 | //$numIdRepositorioOrigem = 1; | 86 | //$numIdRepositorioOrigem = 1; |
| 90 | //$numIdUnidadeOrigem = 161313; | 87 | //$numIdUnidadeOrigem = 161313; |
| 91 | - | ||
| 92 | - //TODO: Atualmente, o campo ID Unidade RH irá conter o código da unidade registrado no barramento. | 88 | + |
| 89 | + //TODO: Atualmente, o campo ID Unidade RH irá conter o código da unidade registrado no barramento. | ||
| 93 | //A ideia é que no futura, o campo contenha o código do SIORG e busque no barramento qual o código da estrutura | 90 | //A ideia é que no futura, o campo contenha o código do SIORG e busque no barramento qual o código da estrutura |
| 94 | 91 | ||
| 95 | //$objSessaoSEI->getNumIdUnidadeAtual() | 92 | //$objSessaoSEI->getNumIdUnidadeAtual() |
| 96 | - $objUnidadeDTO = new PenUnidadeDTO(); | 93 | + $objUnidadeDTO = new PenUnidadeDTO(); |
| 97 | $objUnidadeDTO->retNumIdUnidadeRH(); | 94 | $objUnidadeDTO->retNumIdUnidadeRH(); |
| 98 | $objUnidadeDTO->setNumIdUnidade($objSessaoSEI->getNumIdUnidadeAtual()); | 95 | $objUnidadeDTO->setNumIdUnidade($objSessaoSEI->getNumIdUnidadeAtual()); |
| 99 | - | 96 | + |
| 100 | $objUnidadeRN = new UnidadeRN(); | 97 | $objUnidadeRN = new UnidadeRN(); |
| 101 | $objUnidadeDTO = $objUnidadeRN->consultarRN0125($objUnidadeDTO); | 98 | $objUnidadeDTO = $objUnidadeRN->consultarRN0125($objUnidadeDTO); |
| 102 | - | 99 | + |
| 103 | if (!$objUnidadeDTO) { | 100 | if (!$objUnidadeDTO) { |
| 104 | throw new InfraException("A unidade atual não foi mapeada."); | 101 | throw new InfraException("A unidade atual não foi mapeada."); |
| 105 | } | 102 | } |
| 106 | - | ||
| 107 | - $numIdUnidadeOrigem = $objUnidadeDTO->getNumIdUnidadeRH(); | 103 | + |
| 104 | + $numIdUnidadeOrigem = $objUnidadeDTO->getNumIdUnidadeRH(); | ||
| 108 | $numIdProcedimento = $_POST['hdnIdProcedimento']; | 105 | $numIdProcedimento = $_POST['hdnIdProcedimento']; |
| 109 | $strProtocoloProcedimentoFormatado = $_POST['txtProtocoloExibir']; | 106 | $strProtocoloProcedimentoFormatado = $_POST['txtProtocoloExibir']; |
| 110 | $numIdRepositorio = $_POST['selRepositorioEstruturas']; | 107 | $numIdRepositorio = $_POST['selRepositorioEstruturas']; |
| 111 | $strRepositorio = (array_key_exists($numIdRepositorio, $repositorios) ? $repositorios[$numIdRepositorio] : ''); | 108 | $strRepositorio = (array_key_exists($numIdRepositorio, $repositorios) ? $repositorios[$numIdRepositorio] : ''); |
| 112 | $numIdUnidadeDestino = $_POST['hdnIdUnidade']; | 109 | $numIdUnidadeDestino = $_POST['hdnIdUnidade']; |
| 113 | - $strNomeUnidadeDestino = $_POST['txtUnidade']; | 110 | + $strNomeUnidadeDestino = $_POST['txtUnidade']; |
| 114 | $numIdMotivoUrgente = $_POST['selMotivosUrgencia']; | 111 | $numIdMotivoUrgente = $_POST['selMotivosUrgencia']; |
| 115 | - $boolSinUrgente = $objPaginaSEI->getCheckbox($_POST['chkSinUrgente'], true, false); | 112 | + $boolSinUrgente = $objPaginaSEI->getCheckbox($_POST['chkSinUrgente'], true, false); |
| 116 | $arrIdProcedimentosApensados = $objPaginaSEI->getArrValuesSelect($_POST['hdnProcedimentosApensados']); | 113 | $arrIdProcedimentosApensados = $objPaginaSEI->getArrValuesSelect($_POST['hdnProcedimentosApensados']); |
| 117 | - | 114 | + |
| 118 | //Carregar dados do procedimento na primeiro acesso à página | 115 | //Carregar dados do procedimento na primeiro acesso à página |
| 119 | if (!isset($_POST['hdnIdProcedimento'])) { | 116 | if (!isset($_POST['hdnIdProcedimento'])) { |
| 120 | 117 | ||
| @@ -125,13 +122,13 @@ try { | @@ -125,13 +122,13 @@ try { | ||
| 125 | // | 122 | // |
| 126 | // try { | 123 | // try { |
| 127 | // //Validação das pré-condições para que o processo possa ser expedido | 124 | // //Validação das pré-condições para que o processo possa ser expedido |
| 128 | -// $objInfraException = new InfraException(); | 125 | +// $objInfraException = new InfraException(); |
| 129 | // $objExpedirProcedimentosRN->validarPreCondicoesExpedirProcedimento($objInfraException, $objProcedimentoDTO); | 126 | // $objExpedirProcedimentosRN->validarPreCondicoesExpedirProcedimento($objInfraException, $objProcedimentoDTO); |
| 130 | // $objInfraException->lancarValidacoes(); | 127 | // $objInfraException->lancarValidacoes(); |
| 131 | // } catch(Exception $e){ | 128 | // } catch(Exception $e){ |
| 132 | // $bolErrosValidacao = true; | 129 | // $bolErrosValidacao = true; |
| 133 | // $objPaginaSEI->processarExcecao($e); | 130 | // $objPaginaSEI->processarExcecao($e); |
| 134 | -// } | 131 | +// } |
| 135 | 132 | ||
| 136 | $numIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento(); | 133 | $numIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento(); |
| 137 | $strProtocoloProcedimentoFormatado = $objProcedimentoDTO->getStrProtocoloProcedimentoFormatado(); | 134 | $strProtocoloProcedimentoFormatado = $objProcedimentoDTO->getStrProtocoloProcedimentoFormatado(); |
| @@ -141,14 +138,14 @@ try { | @@ -141,14 +138,14 @@ try { | ||
| 141 | // Executado dentro da window | 138 | // Executado dentro da window |
| 142 | //------------------------------------------------------------------ | 139 | //------------------------------------------------------------------ |
| 143 | //Tratamento da ação de expedir o procedimento | 140 | //Tratamento da ação de expedir o procedimento |
| 144 | - if(isset($_POST['sbmExpedir'])) { | 141 | + if(isset($_POST['sbmExpedir'])) { |
| 145 | 142 | ||
| 146 | $strTituloPagina = "Envio externo do processo $strProtocoloProcedimentoFormatado"; | 143 | $strTituloPagina = "Envio externo do processo $strProtocoloProcedimentoFormatado"; |
| 147 | - $objPaginaSEI->prepararBarraProgresso($strTitulo, $strTituloPagina); | ||
| 148 | - | ||
| 149 | - $objExpedirProcedimentoDTO = new ExpedirProcedimentoDTO(); | ||
| 150 | - | ||
| 151 | - //TODO: Remover atribuição de tais parâmetros de | 144 | + $objPaginaSEI->prepararBarraProgresso($strTitulo, $strTituloPagina); |
| 145 | + | ||
| 146 | + $objExpedirProcedimentoDTO = new ExpedirProcedimentoDTO(); | ||
| 147 | + | ||
| 148 | + //TODO: Remover atribuição de tais parâmetros de | ||
| 152 | $objExpedirProcedimentoDTO->setNumIdRepositorioOrigem($numIdRepositorioOrigem); | 149 | $objExpedirProcedimentoDTO->setNumIdRepositorioOrigem($numIdRepositorioOrigem); |
| 153 | $objExpedirProcedimentoDTO->setNumIdUnidadeOrigem($numIdUnidadeOrigem); | 150 | $objExpedirProcedimentoDTO->setNumIdUnidadeOrigem($numIdUnidadeOrigem); |
| 154 | 151 | ||
| @@ -165,10 +162,10 @@ try { | @@ -165,10 +162,10 @@ try { | ||
| 165 | 162 | ||
| 166 | try { | 163 | try { |
| 167 | $respostaExpedir = $objExpedirProcedimentosRN->expedirProcedimento($objExpedirProcedimentoDTO); | 164 | $respostaExpedir = $objExpedirProcedimentosRN->expedirProcedimento($objExpedirProcedimentoDTO); |
| 168 | - | 165 | + |
| 169 | echo '<input type="button" onclick="javascript:window.close()" class="botao_fechar" value="Fechar" ' | 166 | echo '<input type="button" onclick="javascript:window.close()" class="botao_fechar" value="Fechar" ' |
| 170 | . 'style="margin-left: 84%; margin-top: 4%;"/>'; //Botão para fechar a janela | 167 | . 'style="margin-left: 84%; margin-top: 4%;"/>'; //Botão para fechar a janela |
| 171 | - } catch(\Exception $e) { | 168 | + } catch(\Exception $e) { |
| 172 | $objPaginaSEI->processarExcecao($e); | 169 | $objPaginaSEI->processarExcecao($e); |
| 173 | } | 170 | } |
| 174 | 171 | ||
| @@ -181,11 +178,11 @@ try { | @@ -181,11 +178,11 @@ try { | ||
| 181 | throw new InfraException("Ação '" . $_GET['acao'] . "' não reconhecida."); | 178 | throw new InfraException("Ação '" . $_GET['acao'] . "' não reconhecida."); |
| 182 | } | 179 | } |
| 183 | 180 | ||
| 184 | -} catch (Exception $e) { | 181 | +} catch (Exception $e) { |
| 185 | //$objPaginaSEI->finalizarBarraProgresso($objSessaoSEI->assinarLink('controlador.php?acao='.$objPaginaSEI->getAcaoRetorno().'&acao_origem='.$_GET['acao'].'#ID-'.$IdProcedimento)); | 182 | //$objPaginaSEI->finalizarBarraProgresso($objSessaoSEI->assinarLink('controlador.php?acao='.$objPaginaSEI->getAcaoRetorno().'&acao_origem='.$_GET['acao'].'#ID-'.$IdProcedimento)); |
| 186 | //$objPaginaSEI->processarExcecao($e); | 183 | //$objPaginaSEI->processarExcecao($e); |
| 187 | throw new InfraException("Error Processing Request 11", $e); | 184 | throw new InfraException("Error Processing Request 11", $e); |
| 188 | - | 185 | + |
| 189 | } | 186 | } |
| 190 | 187 | ||
| 191 | $objPaginaSEI->montarDocType(); | 188 | $objPaginaSEI->montarDocType(); |
| @@ -231,28 +228,28 @@ var objJanelaExpedir = null; | @@ -231,28 +228,28 @@ var objJanelaExpedir = null; | ||
| 231 | var evnJanelaExpedir = null; | 228 | var evnJanelaExpedir = null; |
| 232 | 229 | ||
| 233 | function inicializar() { | 230 | function inicializar() { |
| 234 | - | 231 | + |
| 235 | objLupaProcedimentosApensados = new infraLupaSelect('selProcedimentosApensados','hdnProcedimentosApensados','<?=$strLinkProcedimentosApensadosSelecao ?>'); | 232 | objLupaProcedimentosApensados = new infraLupaSelect('selProcedimentosApensados','hdnProcedimentosApensados','<?=$strLinkProcedimentosApensadosSelecao ?>'); |
| 236 | - | 233 | + |
| 237 | objAutoCompletarEstrutura = new infraAjaxAutoCompletar('hdnIdUnidade','txtUnidade','<?=$strLinkAjaxUnidade?>', "Nenhuma unidade foi encontrada"); | 234 | objAutoCompletarEstrutura = new infraAjaxAutoCompletar('hdnIdUnidade','txtUnidade','<?=$strLinkAjaxUnidade?>', "Nenhuma unidade foi encontrada"); |
| 238 | objAutoCompletarEstrutura.bolExecucaoAutomatica = false; | 235 | objAutoCompletarEstrutura.bolExecucaoAutomatica = false; |
| 239 | objAutoCompletarEstrutura.mostrarAviso = true; | 236 | objAutoCompletarEstrutura.mostrarAviso = true; |
| 240 | //objAutoCompletarEstrutura.tamanhoMinimo = 3; | 237 | //objAutoCompletarEstrutura.tamanhoMinimo = 3; |
| 241 | - objAutoCompletarEstrutura.limparCampo = false; | 238 | + objAutoCompletarEstrutura.limparCampo = false; |
| 242 | //objAutoCompletarEstrutura.mostrarImagemVerificado = true; | 239 | //objAutoCompletarEstrutura.mostrarImagemVerificado = true; |
| 243 | objAutoCompletarEstrutura.tempoAviso = 10000000; | 240 | objAutoCompletarEstrutura.tempoAviso = 10000000; |
| 244 | 241 | ||
| 245 | objAutoCompletarEstrutura.prepararExecucao = function(){ | 242 | objAutoCompletarEstrutura.prepararExecucao = function(){ |
| 246 | var selRepositorioEstruturas = document.getElementById('selRepositorioEstruturas'); | 243 | var selRepositorioEstruturas = document.getElementById('selRepositorioEstruturas'); |
| 247 | var parametros = 'palavras_pesquisa=' + document.getElementById('txtUnidade').value; | 244 | var parametros = 'palavras_pesquisa=' + document.getElementById('txtUnidade').value; |
| 248 | - parametros += '&id_repositorio=' + selRepositorioEstruturas.options[selRepositorioEstruturas.selectedIndex].value | 245 | + parametros += '&id_repositorio=' + selRepositorioEstruturas.options[selRepositorioEstruturas.selectedIndex].value |
| 249 | return parametros; | 246 | return parametros; |
| 250 | }; | 247 | }; |
| 251 | 248 | ||
| 252 | objAutoCompletarEstrutura.processarResultado = function(id,descricao,complemento){ | 249 | objAutoCompletarEstrutura.processarResultado = function(id,descricao,complemento){ |
| 253 | - window.infraAvisoCancelar(); | 250 | + window.infraAvisoCancelar(); |
| 254 | }; | 251 | }; |
| 255 | - | 252 | + |
| 256 | $('#hdnIdUnidade2').click(function() { | 253 | $('#hdnIdUnidade2').click(function() { |
| 257 | objAutoCompletarEstrutura.executar(); | 254 | objAutoCompletarEstrutura.executar(); |
| 258 | objAutoCompletarEstrutura.procurar(); | 255 | objAutoCompletarEstrutura.procurar(); |
| @@ -367,28 +364,28 @@ function avaliarPreCondicoes() { | @@ -367,28 +364,28 @@ function avaliarPreCondicoes() { | ||
| 367 | infraDesabilitarCamposDiv(document.getElementById('divProcedimentosApensados')); | 364 | infraDesabilitarCamposDiv(document.getElementById('divProcedimentosApensados')); |
| 368 | infraDesabilitarCamposDiv(document.getElementById('divSinUrgente')); | 365 | infraDesabilitarCamposDiv(document.getElementById('divSinUrgente')); |
| 369 | infraDesabilitarCamposDiv(document.getElementById('divMotivosUrgencia')); | 366 | infraDesabilitarCamposDiv(document.getElementById('divMotivosUrgencia')); |
| 370 | - | 367 | + |
| 371 | var smbExpedir = document.getElementById('sbmExpedir'); | 368 | var smbExpedir = document.getElementById('sbmExpedir'); |
| 372 | smbExpedir.disabled = true; | 369 | smbExpedir.disabled = true; |
| 373 | - smbExpedir.className += ' infraReadOnly'; | ||
| 374 | - } | 370 | + smbExpedir.className += ' infraReadOnly'; |
| 371 | + } | ||
| 375 | } | 372 | } |
| 376 | 373 | ||
| 377 | /** | 374 | /** |
| 378 | * Simula o evento onclose do pop-up | 375 | * Simula o evento onclose do pop-up |
| 379 | - * | 376 | + * |
| 380 | * @return {null} | 377 | * @return {null} |
| 381 | */ | 378 | */ |
| 382 | function monitorarJanela(){ | 379 | function monitorarJanela(){ |
| 383 | - | 380 | + |
| 384 | if(objJanelaExpedir.closed) { | 381 | if(objJanelaExpedir.closed) { |
| 385 | - | 382 | + |
| 386 | window.clearInterval(evnJanelaExpedir); | 383 | window.clearInterval(evnJanelaExpedir); |
| 387 | - | 384 | + |
| 388 | jQuery('#divInfraModalFundo', window.parent.document).css('visibility', 'hidden'); | 385 | jQuery('#divInfraModalFundo', window.parent.document).css('visibility', 'hidden'); |
| 389 | 386 | ||
| 390 | var strDestino = '<?php print $objSessaoSEI->assinarLink('controlador.php?acao=procedimento_trabalhar&acao_origem=procedimento_controlar&acao_retorno=procedimento_controlar&id_procedimento='.$idProcedimento); ?>'; | 387 | var strDestino = '<?php print $objSessaoSEI->assinarLink('controlador.php?acao=procedimento_trabalhar&acao_origem=procedimento_controlar&acao_retorno=procedimento_controlar&id_procedimento='.$idProcedimento); ?>'; |
| 391 | - | 388 | + |
| 392 | if(strDestino) { | 389 | if(strDestino) { |
| 393 | window.top.location = strDestino; | 390 | window.top.location = strDestino; |
| 394 | } | 391 | } |
| @@ -397,22 +394,22 @@ function monitorarJanela(){ | @@ -397,22 +394,22 @@ function monitorarJanela(){ | ||
| 397 | 394 | ||
| 398 | /** | 395 | /** |
| 399 | * Gera a pop-up de expedir procedimento e cria os gatilho para o próprio fechamento | 396 | * Gera a pop-up de expedir procedimento e cria os gatilho para o próprio fechamento |
| 400 | - * | 397 | + * |
| 401 | * @return {null} | 398 | * @return {null} |
| 402 | */ | 399 | */ |
| 403 | function abrirJanela(nome,largura,altura){ | 400 | function abrirJanela(nome,largura,altura){ |
| 404 | - | 401 | + |
| 405 | var opcoes = 'location=0,status=0,resizable=0,scrollbars=1,width=' + largura + ',height=' + altura; | 402 | var opcoes = 'location=0,status=0,resizable=0,scrollbars=1,width=' + largura + ',height=' + altura; |
| 406 | var largura = largura || 100; | 403 | var largura = largura || 100; |
| 407 | var altura = altura || 100; | 404 | var altura = altura || 100; |
| 408 | - | 405 | + |
| 409 | var janela = window.open('', nome, opcoes); | 406 | var janela = window.open('', nome, opcoes); |
| 410 | - | 407 | + |
| 411 | try{ | 408 | try{ |
| 412 | if (INFRA_CHROME>17) { | 409 | if (INFRA_CHROME>17) { |
| 413 | setTimeout(function() { | 410 | setTimeout(function() { |
| 414 | janela.moveTo(((screen.availWidth/2) - (largura/2)),((screen.availHeight/2) - (altura/2))); | 411 | janela.moveTo(((screen.availWidth/2) - (largura/2)),((screen.availHeight/2) - (altura/2))); |
| 415 | - },100); | 412 | + },100); |
| 416 | } | 413 | } |
| 417 | else { | 414 | else { |
| 418 | janela.moveTo(((screen.availWidth/2) - (largura/2)),((screen.availHeight/2) - (altura/2))); | 415 | janela.moveTo(((screen.availWidth/2) - (largura/2)),((screen.availHeight/2) - (altura/2))); |
| @@ -420,8 +417,8 @@ function abrirJanela(nome,largura,altura){ | @@ -420,8 +417,8 @@ function abrirJanela(nome,largura,altura){ | ||
| 420 | janela.focus(); | 417 | janela.focus(); |
| 421 | } | 418 | } |
| 422 | catch(e){} | 419 | catch(e){} |
| 423 | - | ||
| 424 | - | 420 | + |
| 421 | + | ||
| 425 | infraJanelaModal = janela; | 422 | infraJanelaModal = janela; |
| 426 | 423 | ||
| 427 | var div = parent.document.getElementById('divInfraModalFundo'); | 424 | var div = parent.document.getElementById('divInfraModalFundo'); |
| @@ -430,11 +427,11 @@ function abrirJanela(nome,largura,altura){ | @@ -430,11 +427,11 @@ function abrirJanela(nome,largura,altura){ | ||
| 430 | div = parent.document.createElement('div'); | 427 | div = parent.document.createElement('div'); |
| 431 | div.id = 'divInfraModalFundo'; | 428 | div.id = 'divInfraModalFundo'; |
| 432 | div.className = 'infraFundoTransparente'; | 429 | div.className = 'infraFundoTransparente'; |
| 433 | - | 430 | + |
| 434 | if (INFRA_IE > 0 && INFRA_IE < 7){ | 431 | if (INFRA_IE > 0 && INFRA_IE < 7){ |
| 435 | ifr = parent.document.createElement('iframe'); | 432 | ifr = parent.document.createElement('iframe'); |
| 436 | ifr.className = 'infraFundoIE'; | 433 | ifr.className = 'infraFundoIE'; |
| 437 | - div.appendChild(ifr); | 434 | + div.appendChild(ifr); |
| 438 | }else{ | 435 | }else{ |
| 439 | div.onclick = function(){ | 436 | div.onclick = function(){ |
| 440 | try{ | 437 | try{ |
| @@ -442,19 +439,19 @@ function abrirJanela(nome,largura,altura){ | @@ -442,19 +439,19 @@ function abrirJanela(nome,largura,altura){ | ||
| 442 | }catch(exc){ } | 439 | }catch(exc){ } |
| 443 | } | 440 | } |
| 444 | } | 441 | } |
| 445 | - parent.document.body.appendChild(div); | 442 | + parent.document.body.appendChild(div); |
| 446 | } | 443 | } |
| 447 | - | 444 | + |
| 448 | if (INFRA_IE==0 || INFRA_IE>=7){ | 445 | if (INFRA_IE==0 || INFRA_IE>=7){ |
| 449 | div.style.position = 'fixed'; | 446 | div.style.position = 'fixed'; |
| 450 | } | 447 | } |
| 451 | - | 448 | + |
| 452 | div.style.width = parent.infraClientWidth() + 'px'; | 449 | div.style.width = parent.infraClientWidth() + 'px'; |
| 453 | div.style.height = parent.infraClientHeight() + 'px'; | 450 | div.style.height = parent.infraClientHeight() + 'px'; |
| 454 | div.style.visibility = 'visible'; | 451 | div.style.visibility = 'visible'; |
| 455 | - | 452 | + |
| 456 | evnJanelaExpedir = window.setInterval('monitorarJanela()', 100); | 453 | evnJanelaExpedir = window.setInterval('monitorarJanela()', 100); |
| 457 | - | 454 | + |
| 458 | return janela; | 455 | return janela; |
| 459 | } | 456 | } |
| 460 | 457 | ||
| @@ -473,58 +470,58 @@ function abrirBarraProgresso(form, action, largura, altura){ | @@ -473,58 +470,58 @@ function abrirBarraProgresso(form, action, largura, altura){ | ||
| 473 | 470 | ||
| 474 | 471 | ||
| 475 | function enviarForm(el){ | 472 | function enviarForm(el){ |
| 476 | - | 473 | + |
| 477 | var button = jQuery(el); | 474 | var button = jQuery(el); |
| 478 | var label = button.html(); | 475 | var label = button.html(); |
| 479 | - | 476 | + |
| 480 | button.attr('disabled', 'disabled').html('Validando...'); | 477 | button.attr('disabled', 'disabled').html('Validando...'); |
| 481 | 478 | ||
| 482 | var strUrl = '<?php print $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador_ajax.php?acao_ajax=pen_procedimento_expedir_validar'.$strParametros)); ?>'; | 479 | var strUrl = '<?php print $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador_ajax.php?acao_ajax=pen_procedimento_expedir_validar'.$strParametros)); ?>'; |
| 483 | - var objData = {}; | 480 | + var objData = {}; |
| 484 | 481 | ||
| 485 | jQuery.each(['txtProtocoloExibir', 'selRepositorioEstruturas', 'hdnIdUnidade'], function(index, name){ | 482 | jQuery.each(['txtProtocoloExibir', 'selRepositorioEstruturas', 'hdnIdUnidade'], function(index, name){ |
| 486 | - | 483 | + |
| 487 | var objInput = jQuery('#' + name); | 484 | var objInput = jQuery('#' + name); |
| 488 | - | 485 | + |
| 489 | objData[name] = objInput.val(); | 486 | objData[name] = objInput.val(); |
| 490 | }); | 487 | }); |
| 491 | - | 488 | + |
| 492 | jQuery('option', 'select#selProcedimentosApensados').each(function(index, element){ | 489 | jQuery('option', 'select#selProcedimentosApensados').each(function(index, element){ |
| 493 | - | 490 | + |
| 494 | objData['selProcedimentosApensados['+ index +']'] = jQuery(element).attr('value'); | 491 | objData['selProcedimentosApensados['+ index +']'] = jQuery(element).attr('value'); |
| 495 | }); | 492 | }); |
| 496 | - | 493 | + |
| 497 | jQuery.ajax({ | 494 | jQuery.ajax({ |
| 498 | - | 495 | + |
| 499 | url:strUrl, | 496 | url:strUrl, |
| 500 | method:'POST', | 497 | method:'POST', |
| 501 | dataType:'json', | 498 | dataType:'json', |
| 502 | data:objData, | 499 | data:objData, |
| 503 | success:function(resp, textStatus, jqXHR) { | 500 | success:function(resp, textStatus, jqXHR) { |
| 504 | - | 501 | + |
| 505 | if(!resp.sucesso) { | 502 | if(!resp.sucesso) { |
| 506 | - | 503 | + |
| 507 | var strRespMensagem = "Verifique alguns erros no processo antes de tramitar:\n\n"; | 504 | var strRespMensagem = "Verifique alguns erros no processo antes de tramitar:\n\n"; |
| 508 | - | 505 | + |
| 509 | jQuery.each(resp.erros, function(strProtocoloFormatado, arrStrMensagem){ | 506 | jQuery.each(resp.erros, function(strProtocoloFormatado, arrStrMensagem){ |
| 510 | - | 507 | + |
| 511 | strRespMensagem += "Nr. Processo: " + strProtocoloFormatado + ".\n"; | 508 | strRespMensagem += "Nr. Processo: " + strProtocoloFormatado + ".\n"; |
| 512 | - | 509 | + |
| 513 | jQuery.each(arrStrMensagem, function(index, strMensagem){ | 510 | jQuery.each(arrStrMensagem, function(index, strMensagem){ |
| 514 | - | 511 | + |
| 515 | strRespMensagem += " - " + strMensagem + "\n"; | 512 | strRespMensagem += " - " + strMensagem + "\n"; |
| 516 | }); | 513 | }); |
| 517 | - | 514 | + |
| 518 | strRespMensagem += "\n"; | 515 | strRespMensagem += "\n"; |
| 519 | }); | 516 | }); |
| 520 | alert(strRespMensagem); | 517 | alert(strRespMensagem); |
| 521 | return false; | 518 | return false; |
| 522 | } | 519 | } |
| 523 | - var strAction = '<?php print $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador.php?acao='.$_GET['acao'] . '&acao_origem=' . $_GET['acao'] . '&acao_destino=' . $_GET['acao'] .'&'.$strParametros.'&executar=1')); ?>'; | 520 | + var strAction = '<?php print $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador.php?acao='.$_GET['acao'] . '&acao_origem=' . $_GET['acao'] . '&acao_destino=' . $_GET['acao'] .'&'.$strParametros.'&executar=1')); ?>'; |
| 524 | abrirBarraProgresso(document.forms['frmExpedirProcedimento'], strAction, 600, 200); | 521 | abrirBarraProgresso(document.forms['frmExpedirProcedimento'], strAction, 600, 200); |
| 525 | } | 522 | } |
| 526 | }).done(function(){ | 523 | }).done(function(){ |
| 527 | - | 524 | + |
| 528 | button.removeAttr('disabled').html(label); | 525 | button.removeAttr('disabled').html(label); |
| 529 | }); | 526 | }); |
| 530 | } | 527 | } |
| @@ -542,55 +539,55 @@ $objPaginaSEI->abrirBody($strTitulo, 'onload="inicializar();"'); | @@ -542,55 +539,55 @@ $objPaginaSEI->abrirBody($strTitulo, 'onload="inicializar();"'); | ||
| 542 | //$objPaginaSEI->montarBarraLocalizacao($strTitulo); | 539 | //$objPaginaSEI->montarBarraLocalizacao($strTitulo); |
| 543 | $objPaginaSEI->montarBarraComandosSuperior($arrComandos); | 540 | $objPaginaSEI->montarBarraComandosSuperior($arrComandos); |
| 544 | //$objPaginaSEI->montarAreaValidacao(); | 541 | //$objPaginaSEI->montarAreaValidacao(); |
| 545 | -?> | 542 | +?> |
| 546 | <div id="divProtocoloExibir" class="infraAreaDados" style="height: 4.5em;"> | 543 | <div id="divProtocoloExibir" class="infraAreaDados" style="height: 4.5em;"> |
| 547 | - <label id="lblProtocoloExibir" for="txtProtocoloExibir" accesskey="" class="infraLabelObrigatorio">Protocolo:</label> | 544 | + <label id="lblProtocoloExibir" for="txtProtocoloExibir" accesskey="" class="infraLabelObrigatorio">Protocolo:</label> |
| 548 | <input type="text" id="txtProtocoloExibir" name="txtProtocoloExibir" class="infraText infraReadOnly" readonly="readonly" value="<?=$strProtocoloProcedimentoFormatado; ?>" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" /> | 545 | <input type="text" id="txtProtocoloExibir" name="txtProtocoloExibir" class="infraText infraReadOnly" readonly="readonly" value="<?=$strProtocoloProcedimentoFormatado; ?>" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" /> |
| 549 | </div> | 546 | </div> |
| 550 | 547 | ||
| 551 | <div id="divRepositorioEstruturas" class="infraAreaDados" style="height: 4.5em;"> | 548 | <div id="divRepositorioEstruturas" class="infraAreaDados" style="height: 4.5em;"> |
| 552 | - <label id="lblRepositorioEstruturas" for="selRepositorioEstruturas" accesskey="" class="infraLabelObrigatorio">Repositório de Estruturas Organizacionais:</label> | 549 | + <label id="lblRepositorioEstruturas" for="selRepositorioEstruturas" accesskey="" class="infraLabelObrigatorio">Repositório de Estruturas Organizacionais:</label> |
| 553 | <select id="selRepositorioEstruturas" name="selRepositorioEstruturas" class="infraSelect" onchange="selecionarRepositorio();" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" > | 550 | <select id="selRepositorioEstruturas" name="selRepositorioEstruturas" class="infraSelect" onchange="selecionarRepositorio();" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" > |
| 554 | <?= $strItensSelRepositorioEstruturas ?> | 551 | <?= $strItensSelRepositorioEstruturas ?> |
| 555 | </select> | 552 | </select> |
| 556 | </div> | 553 | </div> |
| 557 | 554 | ||
| 558 | <div id="divUnidades" class="infraAreaDados" style="height: 4.5em;"> | 555 | <div id="divUnidades" class="infraAreaDados" style="height: 4.5em;"> |
| 559 | - <label id="lblUnidades" for="selUnidades" class="infraLabelObrigatorio">Unidade:</label> | 556 | + <label id="lblUnidades" for="selUnidades" class="infraLabelObrigatorio">Unidade:</label> |
| 560 | <div class="alinhamentoBotaoImput"> | 557 | <div class="alinhamentoBotaoImput"> |
| 561 | <input type="text" id="txtUnidade" name="txtUnidade" class="infraText infraReadOnly" disabled="disabled" value="<?=$strNomeUnidadeDestino ?>" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" value="" /> | 558 | <input type="text" id="txtUnidade" name="txtUnidade" class="infraText infraReadOnly" disabled="disabled" value="<?=$strNomeUnidadeDestino ?>" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" value="" /> |
| 562 | - <button id="hdnIdUnidade2" type="button" class="infraText">Pesquisar</button> | 559 | + <button id="hdnIdUnidade2" type="button" class="infraText">Pesquisar</button> |
| 563 | </div> | 560 | </div> |
| 564 | - | ||
| 565 | - <input type="hidden" id="hdnIdUnidade" name="hdnIdUnidade" class="infraText" value="<?=$numIdUnidadeDestino; ?>" /> | 561 | + |
| 562 | + <input type="hidden" id="hdnIdUnidade" name="hdnIdUnidade" class="infraText" value="<?=$numIdUnidadeDestino; ?>" /> | ||
| 566 | <?php /* ?><img id="imgLupaUnidades" src="/infra_css/imagens/lupa.gif" alt="Selecionar Unidades" title="Selecionar Unidades" class="infraImg" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" /><?php */ ?> | 563 | <?php /* ?><img id="imgLupaUnidades" src="/infra_css/imagens/lupa.gif" alt="Selecionar Unidades" title="Selecionar Unidades" class="infraImg" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" /><?php */ ?> |
| 567 | - | 564 | + |
| 568 | </div> | 565 | </div> |
| 569 | 566 | ||
| 570 | <div id="divProcedimentosApensados" class="infraAreaDados" style="height: 12em; display: none; "> | 567 | <div id="divProcedimentosApensados" class="infraAreaDados" style="height: 12em; display: none; "> |
| 571 | - <label id="lblProcedimentosApensados" for="selProcedimentosApensados" class="infraLabelObrigatorio">Processos Apensados:</label> | ||
| 572 | - <input type="text" id="txtProcedimentoApensado" name="txtProcedimentoApensado" class="infraText" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" /> | ||
| 573 | - <input type="hidden" id="hdnIdProcedimentoApensado" name="hdnIdProcedimentoApensado" class="infraText" value="" /> | ||
| 574 | - <select id="selProcedimentosApensados" name="selProcedimentosApensados[ ]" size="4" multiple="multiple" class="infraSelect" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>"></select> | ||
| 575 | - <img id="imgLupaProcedimentosApensados" onclick="objLupaProcedimentosApensados.selecionar(700,500);" src="/infra_css/imagens/lupa.gif" alt="Selecionar Processos Apensados" title="Selecionar Processos Apensados" class="infraImg" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" /> | 568 | + <label id="lblProcedimentosApensados" for="selProcedimentosApensados" class="infraLabelObrigatorio">Processos Apensados:</label> |
| 569 | + <input type="text" id="txtProcedimentoApensado" name="txtProcedimentoApensado" class="infraText" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" /> | ||
| 570 | + <input type="hidden" id="hdnIdProcedimentoApensado" name="hdnIdProcedimentoApensado" class="infraText" value="" /> | ||
| 571 | + <select id="selProcedimentosApensados" name="selProcedimentosApensados[ ]" size="4" multiple="multiple" class="infraSelect" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>"></select> | ||
| 572 | + <img id="imgLupaProcedimentosApensados" onclick="objLupaProcedimentosApensados.selecionar(700,500);" src="/infra_css/imagens/lupa.gif" alt="Selecionar Processos Apensados" title="Selecionar Processos Apensados" class="infraImg" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" /> | ||
| 576 | <img id="imgExcluirProcedimentosApensados" onclick="objLupaProcedimentosApensados.remover();" src="/infra_css/imagens/remover.gif" alt="Remover Processo Apensado" title="Remover Processo Apensado" class="infraImg" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" /> | 573 | <img id="imgExcluirProcedimentosApensados" onclick="objLupaProcedimentosApensados.remover();" src="/infra_css/imagens/remover.gif" alt="Remover Processo Apensado" title="Remover Processo Apensado" class="infraImg" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" /> |
| 577 | </div> | 574 | </div> |
| 578 | 575 | ||
| 579 | <div id="divSinUrgente" class="infraDivCheckbox"> | 576 | <div id="divSinUrgente" class="infraDivCheckbox"> |
| 580 | - <input type="checkbox" id="chkSinUrgente" name="chkSinUrgente" class="infraCheckbox" onclick="selecionarUrgencia();" <?= $objPaginaSEI->setCheckbox($boolSinUrgente, true, false) ?> tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" /> | 577 | + <input type="checkbox" id="chkSinUrgente" name="chkSinUrgente" class="infraCheckbox" onclick="selecionarUrgencia();" <?= $objPaginaSEI->setCheckbox($boolSinUrgente, true, false) ?> tabindex="<?= $objPaginaSEI->getProxTabDados() ?>" /> |
| 581 | <label id="lblSinUrgente" for="chkSinUrgente" accesskey="" class="infraLabelCheckbox">Urgente</label> | 578 | <label id="lblSinUrgente" for="chkSinUrgente" accesskey="" class="infraLabelCheckbox">Urgente</label> |
| 582 | </div> | 579 | </div> |
| 583 | 580 | ||
| 584 | <div id="divMotivosUrgencia" class="infraAreaDados" style="height: 4.5em; display:none"> | 581 | <div id="divMotivosUrgencia" class="infraAreaDados" style="height: 4.5em; display:none"> |
| 585 | - <label id="lblMotivosUrgencia" for="selMotivosUrgencia" accesskey="" class="infraLabel">Motivo da Urgência:</label> | 582 | + <label id="lblMotivosUrgencia" for="selMotivosUrgencia" accesskey="" class="infraLabel">Motivo da Urgência:</label> |
| 586 | <select id="selMotivosUrgencia" name="selMotivosUrgencia" class="infraSelect infraReadOnly" disabled="disabled" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>"> | 583 | <select id="selMotivosUrgencia" name="selMotivosUrgencia" class="infraSelect infraReadOnly" disabled="disabled" tabindex="<?= $objPaginaSEI->getProxTabDados() ?>"> |
| 587 | <?= $strItensSelMotivosUrgencia ?> | 584 | <?= $strItensSelMotivosUrgencia ?> |
| 588 | </select> | 585 | </select> |
| 589 | </div> | 586 | </div> |
| 590 | 587 | ||
| 591 | - <input type="hidden" id="hdnIdProcedimento" name="hdnIdProcedimento" value="<?=$numIdProcedimento ?>" /> | ||
| 592 | - <input type="hidden" id="hdnErrosValidacao" name="hdnErrosValidacao" value="<?=$bolErrosValidacao ?>" /> | ||
| 593 | - <input type="hidden" id="hdnProcedimentosApensados" name="hdnProcedimentosApensados" value="<?=$_POST['hdnProcedimentosApensados']?>" /> | 588 | + <input type="hidden" id="hdnIdProcedimento" name="hdnIdProcedimento" value="<?=$numIdProcedimento ?>" /> |
| 589 | + <input type="hidden" id="hdnErrosValidacao" name="hdnErrosValidacao" value="<?=$bolErrosValidacao ?>" /> | ||
| 590 | + <input type="hidden" id="hdnProcedimentosApensados" name="hdnProcedimentosApensados" value="<?=$_POST['hdnProcedimentosApensados']?>" /> | ||
| 594 | <? | 591 | <? |
| 595 | //$objPaginaSEI->montarBarraComandosInferior($arrComandos); | 592 | //$objPaginaSEI->montarBarraComandosInferior($arrComandos); |
| 596 | ?> | 593 | ?> |
| @@ -599,4 +596,4 @@ $objPaginaSEI->montarBarraComandosSuperior($arrComandos); | @@ -599,4 +596,4 @@ $objPaginaSEI->montarBarraComandosSuperior($arrComandos); | ||
| 599 | $objPaginaSEI->montarAreaDebug(); | 596 | $objPaginaSEI->montarAreaDebug(); |
| 600 | $objPaginaSEI->fecharBody(); | 597 | $objPaginaSEI->fecharBody(); |
| 601 | $objPaginaSEI->fecharHtml(); | 598 | $objPaginaSEI->fecharHtml(); |
| 602 | -?> | ||
| 603 | \ No newline at end of file | 599 | \ No newline at end of file |
| 600 | +?> |
rn/PENAgendamentoRN.php
| @@ -174,7 +174,7 @@ class PENAgendamentoRN extends InfraRN { | @@ -174,7 +174,7 @@ class PENAgendamentoRN extends InfraRN { | ||
| 174 | 174 | ||
| 175 | if ($objProcessoEletronico) { | 175 | if ($objProcessoEletronico) { |
| 176 | 176 | ||
| 177 | - //Busca o processo | 177 | + //Busca o processo |
| 178 | $objProtocolo = new PenProtocoloDTO(); | 178 | $objProtocolo = new PenProtocoloDTO(); |
| 179 | $objProtocolo->setDblIdProtocolo($objProcessoEletronico->getDblIdProcedimento()); | 179 | $objProtocolo->setDblIdProtocolo($objProcessoEletronico->getDblIdProcedimento()); |
| 180 | 180 | ||
| @@ -242,12 +242,12 @@ class PENAgendamentoRN extends InfraRN { | @@ -242,12 +242,12 @@ class PENAgendamentoRN extends InfraRN { | ||
| 242 | $cont++; | 242 | $cont++; |
| 243 | $servico[] = 'ProcessarPendenciasRN.php'; | 243 | $servico[] = 'ProcessarPendenciasRN.php'; |
| 244 | } | 244 | } |
| 245 | - | 245 | + |
| 246 | $strServicos = array_map(function($item){ return "- $item"; }, $servico); | 246 | $strServicos = array_map(function($item){ return "- $item"; }, $servico); |
| 247 | $strServicos = implode("\n", $strServicos); | 247 | $strServicos = implode("\n", $strServicos); |
| 248 | 248 | ||
| 249 | if ($cont > 0) { | 249 | if ($cont > 0) { |
| 250 | - $msg = "Identificada inconsistência nos serviços de integração com o Processo Eletrônico Nacional - PEN.\n" . | 250 | + $msg = "Identificada inconsistência nos serviços de integração com o Processo Eletrônico Nacional - PEN.\n" . |
| 251 | "Os seguintes serviços necessários para o correto funcionamento da integração não estão ativos: \n $strServicos \n\n" . | 251 | "Os seguintes serviços necessários para o correto funcionamento da integração não estão ativos: \n $strServicos \n\n" . |
| 252 | "Favor, entrar em contato com a equipe de suporte técnico."; | 252 | "Favor, entrar em contato com a equipe de suporte técnico."; |
| 253 | throw new InfraException($msg, $e); | 253 | throw new InfraException($msg, $e); |
| @@ -265,12 +265,14 @@ class PENAgendamentoRN extends InfraRN { | @@ -265,12 +265,14 @@ class PENAgendamentoRN extends InfraRN { | ||
| 265 | */ | 265 | */ |
| 266 | public function atualizarHipotesesLegais() { | 266 | public function atualizarHipotesesLegais() { |
| 267 | try { | 267 | try { |
| 268 | + | ||
| 269 | + PENIntegracao::validarCompatibilidadeModulo(); | ||
| 268 | $objBD = new PenHipoteseLegalBD($this->inicializarObjInfraIBanco()); | 270 | $objBD = new PenHipoteseLegalBD($this->inicializarObjInfraIBanco()); |
| 269 | $processoEletronicoRN = new ProcessoEletronicoRN(); | 271 | $processoEletronicoRN = new ProcessoEletronicoRN(); |
| 270 | $hipotesesPen = $processoEletronicoRN->consultarHipotesesLegais(); | 272 | $hipotesesPen = $processoEletronicoRN->consultarHipotesesLegais(); |
| 271 | 273 | ||
| 272 | if(empty($hipotesesPen)){ | 274 | if(empty($hipotesesPen)){ |
| 273 | - throw new InfraException('Não foi possível obter as hipóteses legais dos serviços de integração'); | 275 | + throw new InfraException('Não foi possível obter as hipóteses legais dos serviços de integração'); |
| 274 | } | 276 | } |
| 275 | 277 | ||
| 276 | //Para cada hipótese vinda do PEN será verificado a existencia. | 278 | //Para cada hipótese vinda do PEN será verificado a existencia. |
rn/PendenciasTramiteRN.php
| 1 | -<?php | ||
| 2 | - | ||
| 3 | -require_once dirname(__FILE__) . '/../../../SEI.php'; | ||
| 4 | - | ||
| 5 | -error_reporting(E_ALL); | ||
| 6 | - | ||
| 7 | -//TODO: Modificar nome da classe e mtodo para outro mais apropriado | ||
| 8 | -class PendenciasTramiteRN extends InfraRN { | ||
| 9 | - | ||
| 10 | - private static $instance = null; | ||
| 11 | - private $strEnderecoServicoPendencias = null; | ||
| 12 | - private $strLocalizacaoCertificadoDigital = null; | ||
| 13 | - private $strSenhaCertificadoDigital = null; | ||
| 14 | - | ||
| 15 | - protected function inicializarObjInfraIBanco(){ | ||
| 16 | - return BancoSEI::getInstance(); | ||
| 17 | - } | ||
| 18 | - | ||
| 19 | - public static function getInstance() { | ||
| 20 | - if (self::$instance == null) { | ||
| 21 | - self::$instance = new PendenciasTramiteRN(ConfiguracaoSEI::getInstance(), SessaoSEI::getInstance(), BancoSEI::getInstance(), LogSEI::getInstance()); | ||
| 22 | - } | ||
| 23 | - | ||
| 24 | - return self::$instance; | ||
| 25 | - } | ||
| 26 | - | ||
| 27 | - public function __construct() { | ||
| 28 | - $objPenParametroRN = new PenParametroRN(); | ||
| 29 | - | ||
| 30 | - $this->strLocalizacaoCertificadoDigital = $objPenParametroRN->getParametro('PEN_LOCALIZACAO_CERTIFICADO_DIGITAL'); | ||
| 31 | - $this->strEnderecoServicoPendencias = $objPenParametroRN->getParametro('PEN_ENDERECO_WEBSERVICE_PENDENCIAS'); | ||
| 32 | - //TODO: Urgente - Remover senha do certificado de autenticao dos servios do PEN da tabela de parâmetros | ||
| 33 | - $this->strSenhaCertificadoDigital = $objPenParametroRN->getParametro('PEN_SENHA_CERTIFICADO_DIGITAL'); | ||
| 34 | - | ||
| 35 | - if (InfraString::isBolVazia($this->strEnderecoServicoPendencias)) { | ||
| 36 | - throw new InfraException('Endereço do serviço de pendências de trâmite do Processo Eletrônico Nacional (PEN) não informado.'); | ||
| 37 | - } | ||
| 38 | - | ||
| 39 | - if (!@file_get_contents($this->strLocalizacaoCertificadoDigital)) { | ||
| 40 | - throw new InfraException("Certificado digital de autenticação do serviço de integração do Processo Eletrônico Nacional(PEN) não encontrado."); | ||
| 41 | - } | ||
| 42 | - | ||
| 43 | - if (InfraString::isBolVazia($this->strSenhaCertificadoDigital)) { | ||
| 44 | - throw new InfraException('Dados de autenticação do serviço de integração do Processo Eletrónico Nacional(PEN) não informados.'); | ||
| 45 | - } | ||
| 46 | - } | ||
| 47 | - | ||
| 48 | - public function monitorarPendencias() { | ||
| 49 | - try{ | ||
| 50 | - ini_set('max_execution_time','0'); | ||
| 51 | - ini_set('memory_limit','-1'); | ||
| 52 | - | ||
| 53 | - InfraDebug::getInstance()->setBolLigado(true); | ||
| 54 | - InfraDebug::getInstance()->setBolDebugInfra(false); | ||
| 55 | - InfraDebug::getInstance()->setBolEcho(false); | ||
| 56 | - InfraDebug::getInstance()->limpar(); | ||
| 57 | - | ||
| 58 | - $objPenParametroRN = new PenParametroRN(); | ||
| 59 | - SessaoSEI::getInstance(false)->simularLogin('SEI', null, null, $objPenParametroRN->getParametro('PEN_UNIDADE_GERADORA_DOCUMENTO_RECEBIDO')); | ||
| 60 | - | ||
| 61 | - $numSeg = InfraUtil::verificarTempoProcessamento(); | ||
| 62 | - InfraDebug::getInstance()->gravar('MONITORANDO OS TRÂMITES PENDENTES ENVIADOS PARA O RGO (PEN)'); | ||
| 63 | - echo "[".date("d/m/Y H:i:s")."] Iniciando serviço de monitoramento de pendências de trâmites de processos...\n"; | ||
| 64 | - | ||
| 65 | - try{ | ||
| 66 | - $numIdTramiteRecebido = 0; | ||
| 67 | - $strStatusTramiteRecebido = ''; | ||
| 68 | - $numQuantidadeErroTramite = 0; | ||
| 69 | - $arrQuantidadeErrosTramite = array(); | ||
| 70 | - | ||
| 71 | - //TODO: Tratar quantidade de erros o sistema consecutivos para um tramite de processo | ||
| 72 | - //Alcanado est quantidade, uma pendncia posterior dever ser obtida do barramento | ||
| 73 | - while (true) { | ||
| 74 | - $objPendenciaDTO = $this->obterPendenciasTramite($numIdTramiteRecebido); | ||
| 75 | - if(isset($objPendenciaDTO)) { | ||
| 76 | - if($numIdTramiteRecebido != $objPendenciaDTO->getNumIdentificacaoTramite() || | ||
| 77 | - $strStatusTramiteRecebido != $objPendenciaDTO->getStrStatus()) { | ||
| 78 | - $numIdTramiteRecebido = $objPendenciaDTO->getNumIdentificacaoTramite(); | ||
| 79 | - $strStatusTramiteRecebido = $objPendenciaDTO->getStrStatus(); | ||
| 80 | - $this->enviarPendenciaFilaProcessamento($objPendenciaDTO); | ||
| 81 | - } | ||
| 82 | - } | ||
| 83 | - sleep(5); | ||
| 84 | - } | ||
| 85 | - } | ||
| 86 | - //TODO: Urgente: Tratar erro especfico de timeout e refazer a requisio | ||
| 87 | - catch(Exception $e) { | ||
| 88 | - $strAssunto = 'Erro monitorando pendências.'; | ||
| 89 | - $strErro = InfraException::inspecionar($e); | ||
| 90 | - LogSEI::getInstance()->gravar($strAssunto."\n\n".$strErro); | ||
| 91 | - } | ||
| 92 | - | ||
| 93 | - $numSeg = InfraUtil::verificarTempoProcessamento($numSeg); | ||
| 94 | - InfraDebug::getInstance()->gravar('TEMPO TOTAL DE EXECUCAO: '.$numSeg.' s'); | ||
| 95 | - InfraDebug::getInstance()->gravar('FIM'); | ||
| 96 | - LogSEI::getInstance()->gravar(InfraDebug::getInstance()->getStrDebug()); | ||
| 97 | - | ||
| 98 | - } | ||
| 99 | - catch(Exception $e) { | ||
| 100 | - InfraDebug::getInstance()->setBolLigado(false); | ||
| 101 | - InfraDebug::getInstance()->setBolDebugInfra(false); | ||
| 102 | - InfraDebug::getInstance()->setBolEcho(false); | ||
| 103 | - throw new InfraException('Erro processando pendências de integração com o PEN - Processo Eletrônico Nacional.',$e); | ||
| 104 | - } | ||
| 105 | - } | ||
| 106 | - | ||
| 107 | - private function configurarRequisicao() | ||
| 108 | - { | ||
| 109 | - $curl = curl_init($this->strEnderecoServicoPendencias); | ||
| 110 | - curl_setopt($curl, CURLOPT_URL, $this->strEnderecoServicoPendencias); | ||
| 111 | - curl_setopt($curl, CURLOPT_HEADER, 0); | ||
| 112 | - curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); | ||
| 113 | - curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); | ||
| 114 | - curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); | ||
| 115 | - curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); | ||
| 116 | - curl_setopt($curl, CURLOPT_SSLCERT, $this->strLocalizacaoCertificadoDigital); | ||
| 117 | - curl_setopt($curl, CURLOPT_SSLCERTPASSWD, $this->strSenhaCertificadoDigital); | ||
| 118 | - curl_setopt($curl, CURLOPT_TIMEOUT, 60); //timeout in seconds | ||
| 119 | - return $curl; | ||
| 120 | - } | ||
| 121 | - | ||
| 122 | - private function obterPendenciasTramite($parNumIdTramiteRecebido) | ||
| 123 | - { | ||
| 124 | - $resultado = null; | ||
| 125 | - $curl = $this->configurarRequisicao(); | ||
| 126 | - | ||
| 127 | - try{ | ||
| 128 | - if(isset($parNumIdTramiteRecebido)) { | ||
| 129 | - curl_setopt($curl, CURLOPT_URL, $this->strEnderecoServicoPendencias . "?idTramiteDaPendenciaRecebida=" . $parNumIdTramiteRecebido); | ||
| 130 | - } | ||
| 131 | - | ||
| 132 | - //A seguinte requisio ir aguardar a notificao do PEN sobre uma nova pendncia | ||
| 133 | - //ou at o lanamento da exceo de timeout definido pela infraestrutura da soluo | ||
| 134 | - //Ambos os comportamentos so esperados para a requisio abaixo. | ||
| 135 | - $strResultadoJSON = curl_exec($curl); | ||
| 136 | - | ||
| 137 | - if(curl_errno($curl)) { | ||
| 138 | - if (curl_errno($curl) != 28) | ||
| 139 | - throw new InfraException("Erro na requisição do serviço de monitoramento de pendências. Curl: " . curl_errno($curl)); | ||
| 140 | - } | ||
| 141 | - | ||
| 142 | - if(!InfraString::isBolVazia($strResultadoJSON)) { | ||
| 143 | - $strResultadoJSON = json_decode($strResultadoJSON); | ||
| 144 | - | ||
| 145 | - if(isset($strResultadoJSON) && $strResultadoJSON->encontrou) { | ||
| 146 | - $objPendenciaDTO = new PendenciaDTO(); | ||
| 147 | - $objPendenciaDTO->setNumIdentificacaoTramite($strResultadoJSON->IDT); | ||
| 148 | - $objPendenciaDTO->setStrStatus($strResultadoJSON->status); | ||
| 149 | - $resultado = $objPendenciaDTO; | ||
| 150 | - } | ||
| 151 | - } | ||
| 152 | - } | ||
| 153 | - catch(Exception $e){ | ||
| 154 | - curl_close($curl); | ||
| 155 | - throw $e; | ||
| 156 | - } | ||
| 157 | - | ||
| 158 | - curl_close($curl); | ||
| 159 | - return $resultado; | ||
| 160 | - } | ||
| 161 | - | ||
| 162 | - private function enviarPendenciaFilaProcessamento($objPendencia) | ||
| 163 | - { | ||
| 164 | - if(isset($objPendencia)) { | ||
| 165 | - | ||
| 166 | - $client = new GearmanClient(); | ||
| 167 | - $client->addServer('localhost', 4730); | ||
| 168 | - //$client->setCreatedCallback("create_change"); | ||
| 169 | - //$client->setDataCallback("data_change"); | ||
| 170 | - //$client->setStatusCallback("status_change"); | ||
| 171 | - //$client->setCompleteCallback("complete_change"); | ||
| 172 | - //$client->setFailCallback("fail_change"); | ||
| 173 | - | ||
| 174 | - $strWorkload = strval($objPendencia->getNumIdentificacaoTramite()); | ||
| 175 | - | ||
| 176 | - switch ($objPendencia->getStrStatus()) { | ||
| 177 | - | ||
| 178 | - case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_INICIADO: | ||
| 179 | - $client->addTaskBackground('enviarComponenteDigital', $strWorkload, null); | ||
| 180 | - break; | ||
| 181 | - | ||
| 182 | - case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_COMPONENTES_ENVIADOS_REMETENTE: | ||
| 183 | - case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_METADADOS_RECEBIDO_DESTINATARIO: | ||
| 184 | - case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_COMPONENTES_RECEBIDOS_DESTINATARIO: | ||
| 185 | - $objPenParametroRN = new PenParametroRN(); | ||
| 186 | - $numTentativas = $objPenParametroRN->getParametro(PenTramiteProcessadoRN::PARAM_NUMERO_TENTATIVAS, false); | ||
| 187 | - $numCont = 0; | ||
| 188 | - // Executa sempre + 1 alm do configurado no parâmetro para executar a recusa | ||
| 189 | - while($numCont <= $numTentativas) { | ||
| 190 | - $client->addTaskBackground('receberProcedimento', $strWorkload, null); | ||
| 191 | - $numCont++; | ||
| 192 | - } | ||
| 193 | - break; | ||
| 194 | - | ||
| 195 | - case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_ENVIADO_DESTINATARIO: | ||
| 196 | - $objPenParametroRN = new PenParametroRN(); | ||
| 197 | - $numTentativas = $objPenParametroRN->getParametro(PenTramiteProcessadoRN::PARAM_NUMERO_TENTATIVAS, false); | ||
| 198 | - $numCont = 0; | ||
| 199 | - | ||
| 200 | - while($numCont < $numTentativas) { | ||
| 201 | - $client->addTaskBackground('receberReciboTramite', $strWorkload, null); | ||
| 202 | - $numCont++; | ||
| 203 | - } | ||
| 204 | - break; | ||
| 205 | - | ||
| 206 | - case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE: | ||
| 207 | - break; | ||
| 208 | - | ||
| 209 | - case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO: | ||
| 210 | - break; | ||
| 211 | - | ||
| 212 | - case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO: | ||
| 213 | - $client->addTaskBackground("receberTramitesRecusados", $strWorkload, null);; | ||
| 214 | - break; | ||
| 215 | - | ||
| 216 | - default: | ||
| 217 | - //TODO: Alterar lgica para no deixar de processar demais pendncias retornadas pelo PEN | ||
| 218 | - throw new Exception('Situação do trâmite não pode ser identificada.'); | ||
| 219 | - break; | ||
| 220 | - } | ||
| 221 | - | ||
| 222 | - $client->runTasks(); | ||
| 223 | - } | ||
| 224 | - } | ||
| 225 | -} | ||
| 226 | - | ||
| 227 | -SessaoSEI::getInstance(false); | ||
| 228 | -PendenciasTramiteRN::getInstance()->monitorarPendencias(); | 1 | +<?php |
| 2 | + | ||
| 3 | +require_once dirname(__FILE__) . '/../../../SEI.php'; | ||
| 4 | + | ||
| 5 | +error_reporting(E_ALL); | ||
| 6 | + | ||
| 7 | +//TODO: Modificar nome da classe e mtodo para outro mais apropriado | ||
| 8 | +class PendenciasTramiteRN extends InfraRN { | ||
| 9 | + | ||
| 10 | + private static $instance = null; | ||
| 11 | + private $strEnderecoServicoPendencias = null; | ||
| 12 | + private $strLocalizacaoCertificadoDigital = null; | ||
| 13 | + private $strSenhaCertificadoDigital = null; | ||
| 14 | + | ||
| 15 | + protected function inicializarObjInfraIBanco(){ | ||
| 16 | + return BancoSEI::getInstance(); | ||
| 17 | + } | ||
| 18 | + | ||
| 19 | + public static function getInstance() { | ||
| 20 | + if (self::$instance == null) { | ||
| 21 | + self::$instance = new PendenciasTramiteRN(ConfiguracaoSEI::getInstance(), SessaoSEI::getInstance(), BancoSEI::getInstance(), LogSEI::getInstance()); | ||
| 22 | + } | ||
| 23 | + | ||
| 24 | + return self::$instance; | ||
| 25 | + } | ||
| 26 | + | ||
| 27 | + public function __construct() { | ||
| 28 | + $objPenParametroRN = new PenParametroRN(); | ||
| 29 | + | ||
| 30 | + $this->strLocalizacaoCertificadoDigital = $objPenParametroRN->getParametro('PEN_LOCALIZACAO_CERTIFICADO_DIGITAL'); | ||
| 31 | + $this->strEnderecoServicoPendencias = $objPenParametroRN->getParametro('PEN_ENDERECO_WEBSERVICE_PENDENCIAS'); | ||
| 32 | + //TODO: Urgente - Remover senha do certificado de autenticao dos servios do PEN da tabela de parâmetros | ||
| 33 | + $this->strSenhaCertificadoDigital = $objPenParametroRN->getParametro('PEN_SENHA_CERTIFICADO_DIGITAL'); | ||
| 34 | + | ||
| 35 | + if (InfraString::isBolVazia($this->strEnderecoServicoPendencias)) { | ||
| 36 | + throw new InfraException('Endereço do serviço de pendências de trâmite do Processo Eletrônico Nacional (PEN) não informado.'); | ||
| 37 | + } | ||
| 38 | + | ||
| 39 | + if (!@file_get_contents($this->strLocalizacaoCertificadoDigital)) { | ||
| 40 | + throw new InfraException("Certificado digital de autenticação do serviço de integração do Processo Eletrônico Nacional(PEN) não encontrado."); | ||
| 41 | + } | ||
| 42 | + | ||
| 43 | + if (InfraString::isBolVazia($this->strSenhaCertificadoDigital)) { | ||
| 44 | + throw new InfraException('Dados de autenticação do serviço de integração do Processo Eletrónico Nacional(PEN) não informados.'); | ||
| 45 | + } | ||
| 46 | + } | ||
| 47 | + | ||
| 48 | + public function monitorarPendencias() { | ||
| 49 | + try{ | ||
| 50 | + ini_set('max_execution_time','0'); | ||
| 51 | + ini_set('memory_limit','-1'); | ||
| 52 | + | ||
| 53 | + InfraDebug::getInstance()->setBolLigado(false); | ||
| 54 | + InfraDebug::getInstance()->setBolDebugInfra(false); | ||
| 55 | + InfraDebug::getInstance()->setBolEcho(false); | ||
| 56 | + InfraDebug::getInstance()->limpar(); | ||
| 57 | + | ||
| 58 | + PENIntegracao::validarCompatibilidadeModulo(); | ||
| 59 | + | ||
| 60 | + $objPenParametroRN = new PenParametroRN(); | ||
| 61 | + SessaoSEI::getInstance(false)->simularLogin('SEI', null, null, $objPenParametroRN->getParametro('PEN_UNIDADE_GERADORA_DOCUMENTO_RECEBIDO')); | ||
| 62 | + | ||
| 63 | + $numSeg = InfraUtil::verificarTempoProcessamento(); | ||
| 64 | + InfraDebug::getInstance()->gravar('MONITORANDO OS TRÂMITES PENDENTES ENVIADOS PARA O RGO (PEN)'); | ||
| 65 | + echo "[".date("d/m/Y H:i:s")."] Iniciando serviço de monitoramento de pendências de trâmites de processos...\n"; | ||
| 66 | + | ||
| 67 | + try{ | ||
| 68 | + $numIdTramiteRecebido = 0; | ||
| 69 | + $strStatusTramiteRecebido = ''; | ||
| 70 | + $numQuantidadeErroTramite = 0; | ||
| 71 | + $arrQuantidadeErrosTramite = array(); | ||
| 72 | + | ||
| 73 | + //TODO: Tratar quantidade de erros o sistema consecutivos para um tramite de processo | ||
| 74 | + //Alcanado est quantidade, uma pendncia posterior dever ser obtida do barramento | ||
| 75 | + while (true) { | ||
| 76 | + $objPendenciaDTO = $this->obterPendenciasTramite($numIdTramiteRecebido); | ||
| 77 | + if(isset($objPendenciaDTO)) { | ||
| 78 | + if($numIdTramiteRecebido != $objPendenciaDTO->getNumIdentificacaoTramite() || | ||
| 79 | + $strStatusTramiteRecebido != $objPendenciaDTO->getStrStatus()) { | ||
| 80 | + $numIdTramiteRecebido = $objPendenciaDTO->getNumIdentificacaoTramite(); | ||
| 81 | + $strStatusTramiteRecebido = $objPendenciaDTO->getStrStatus(); | ||
| 82 | + $this->enviarPendenciaFilaProcessamento($objPendenciaDTO); | ||
| 83 | + } | ||
| 84 | + } | ||
| 85 | + sleep(5); | ||
| 86 | + } | ||
| 87 | + } | ||
| 88 | + //TODO: Urgente: Tratar erro especfico de timeout e refazer a requisio | ||
| 89 | + catch(Exception $e) { | ||
| 90 | + $strAssunto = 'Erro monitorando pendências.'; | ||
| 91 | + $strErro = InfraException::inspecionar($e); | ||
| 92 | + LogSEI::getInstance()->gravar($strAssunto."\n\n".$strErro); | ||
| 93 | + } | ||
| 94 | + | ||
| 95 | + $numSeg = InfraUtil::verificarTempoProcessamento($numSeg); | ||
| 96 | + InfraDebug::getInstance()->gravar('TEMPO TOTAL DE EXECUCAO: '.$numSeg.' s'); | ||
| 97 | + InfraDebug::getInstance()->gravar('FIM'); | ||
| 98 | + LogSEI::getInstance()->gravar(InfraDebug::getInstance()->getStrDebug()); | ||
| 99 | + | ||
| 100 | + } | ||
| 101 | + catch(Exception $e) { | ||
| 102 | + InfraDebug::getInstance()->setBolLigado(false); | ||
| 103 | + InfraDebug::getInstance()->setBolDebugInfra(false); | ||
| 104 | + InfraDebug::getInstance()->setBolEcho(false); | ||
| 105 | + throw new InfraException('Erro processando pendências de integração com o PEN - Processo Eletrônico Nacional.',$e); | ||
| 106 | + } | ||
| 107 | + } | ||
| 108 | + | ||
| 109 | + private function configurarRequisicao() | ||
| 110 | + { | ||
| 111 | + $curl = curl_init($this->strEnderecoServicoPendencias); | ||
| 112 | + curl_setopt($curl, CURLOPT_URL, $this->strEnderecoServicoPendencias); | ||
| 113 | + curl_setopt($curl, CURLOPT_HEADER, 0); | ||
| 114 | + curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); | ||
| 115 | + curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); | ||
| 116 | + curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, false); | ||
| 117 | + curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); | ||
| 118 | + curl_setopt($curl, CURLOPT_SSLCERT, $this->strLocalizacaoCertificadoDigital); | ||
| 119 | + curl_setopt($curl, CURLOPT_SSLCERTPASSWD, $this->strSenhaCertificadoDigital); | ||
| 120 | + curl_setopt($curl, CURLOPT_TIMEOUT, 60); //timeout in seconds | ||
| 121 | + return $curl; | ||
| 122 | + } | ||
| 123 | + | ||
| 124 | + private function obterPendenciasTramite($parNumIdTramiteRecebido) | ||
| 125 | + { | ||
| 126 | + $resultado = null; | ||
| 127 | + $curl = $this->configurarRequisicao(); | ||
| 128 | + | ||
| 129 | + try{ | ||
| 130 | + if(isset($parNumIdTramiteRecebido)) { | ||
| 131 | + curl_setopt($curl, CURLOPT_URL, $this->strEnderecoServicoPendencias . "?idTramiteDaPendenciaRecebida=" . $parNumIdTramiteRecebido); | ||
| 132 | + } | ||
| 133 | + | ||
| 134 | + //A seguinte requisio ir aguardar a notificao do PEN sobre uma nova pendncia | ||
| 135 | + //ou at o lanamento da exceo de timeout definido pela infraestrutura da soluo | ||
| 136 | + //Ambos os comportamentos so esperados para a requisio abaixo. | ||
| 137 | + $strResultadoJSON = curl_exec($curl); | ||
| 138 | + | ||
| 139 | + if(curl_errno($curl)) { | ||
| 140 | + if (curl_errno($curl) != 28) | ||
| 141 | + throw new InfraException("Erro na requisição do serviço de monitoramento de pendências. Curl: " . curl_errno($curl)); | ||
| 142 | + } | ||
| 143 | + | ||
| 144 | + if(!InfraString::isBolVazia($strResultadoJSON)) { | ||
| 145 | + $strResultadoJSON = json_decode($strResultadoJSON); | ||
| 146 | + | ||
| 147 | + if(isset($strResultadoJSON) && $strResultadoJSON->encontrou) { | ||
| 148 | + $objPendenciaDTO = new PendenciaDTO(); | ||
| 149 | + $objPendenciaDTO->setNumIdentificacaoTramite($strResultadoJSON->IDT); | ||
| 150 | + $objPendenciaDTO->setStrStatus($strResultadoJSON->status); | ||
| 151 | + $resultado = $objPendenciaDTO; | ||
| 152 | + } | ||
| 153 | + } | ||
| 154 | + } | ||
| 155 | + catch(Exception $e){ | ||
| 156 | + curl_close($curl); | ||
| 157 | + throw $e; | ||
| 158 | + } | ||
| 159 | + | ||
| 160 | + curl_close($curl); | ||
| 161 | + return $resultado; | ||
| 162 | + } | ||
| 163 | + | ||
| 164 | + private function enviarPendenciaFilaProcessamento($objPendencia) | ||
| 165 | + { | ||
| 166 | + if(isset($objPendencia)) { | ||
| 167 | + | ||
| 168 | + $client = new GearmanClient(); | ||
| 169 | + $client->addServer('localhost', 4730); | ||
| 170 | + //$client->setCreatedCallback("create_change"); | ||
| 171 | + //$client->setDataCallback("data_change"); | ||
| 172 | + //$client->setStatusCallback("status_change"); | ||
| 173 | + //$client->setCompleteCallback("complete_change"); | ||
| 174 | + //$client->setFailCallback("fail_change"); | ||
| 175 | + | ||
| 176 | + $strWorkload = strval($objPendencia->getNumIdentificacaoTramite()); | ||
| 177 | + | ||
| 178 | + switch ($objPendencia->getStrStatus()) { | ||
| 179 | + | ||
| 180 | + case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_INICIADO: | ||
| 181 | + $client->addTaskBackground('enviarComponenteDigital', $strWorkload, null); | ||
| 182 | + break; | ||
| 183 | + | ||
| 184 | + case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_COMPONENTES_ENVIADOS_REMETENTE: | ||
| 185 | + case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_METADADOS_RECEBIDO_DESTINATARIO: | ||
| 186 | + case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_COMPONENTES_RECEBIDOS_DESTINATARIO: | ||
| 187 | + $objPenParametroRN = new PenParametroRN(); | ||
| 188 | + $numTentativas = $objPenParametroRN->getParametro(PenTramiteProcessadoRN::PARAM_NUMERO_TENTATIVAS, false); | ||
| 189 | + $numCont = 0; | ||
| 190 | + // Executa sempre + 1 alm do configurado no parâmetro para executar a recusa | ||
| 191 | + while($numCont <= $numTentativas) { | ||
| 192 | + $client->addTaskBackground('receberProcedimento', $strWorkload, null); | ||
| 193 | + $numCont++; | ||
| 194 | + } | ||
| 195 | + break; | ||
| 196 | + | ||
| 197 | + case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_ENVIADO_DESTINATARIO: | ||
| 198 | + $objPenParametroRN = new PenParametroRN(); | ||
| 199 | + $numTentativas = $objPenParametroRN->getParametro(PenTramiteProcessadoRN::PARAM_NUMERO_TENTATIVAS, false); | ||
| 200 | + $numCont = 0; | ||
| 201 | + | ||
| 202 | + while($numCont < $numTentativas) { | ||
| 203 | + $client->addTaskBackground('receberReciboTramite', $strWorkload, null); | ||
| 204 | + $numCont++; | ||
| 205 | + } | ||
| 206 | + break; | ||
| 207 | + | ||
| 208 | + case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE: | ||
| 209 | + break; | ||
| 210 | + | ||
| 211 | + case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO: | ||
| 212 | + break; | ||
| 213 | + | ||
| 214 | + case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO: | ||
| 215 | + $client->addTaskBackground("receberTramitesRecusados", $strWorkload, null);; | ||
| 216 | + break; | ||
| 217 | + | ||
| 218 | + default: | ||
| 219 | + //TODO: Alterar lgica para no deixar de processar demais pendncias retornadas pelo PEN | ||
| 220 | + throw new Exception('Situação do trâmite não pode ser identificada.'); | ||
| 221 | + break; | ||
| 222 | + } | ||
| 223 | + | ||
| 224 | + $client->runTasks(); | ||
| 225 | + } | ||
| 226 | + } | ||
| 227 | +} | ||
| 228 | + | ||
| 229 | +SessaoSEI::getInstance(false); | ||
| 230 | +PendenciasTramiteRN::getInstance()->monitorarPendencias(); |
rn/ProcessarPendenciasRN.php
| @@ -2,194 +2,176 @@ | @@ -2,194 +2,176 @@ | ||
| 2 | 2 | ||
| 3 | require_once dirname(__FILE__) . '/../../../SEI.php'; | 3 | require_once dirname(__FILE__) . '/../../../SEI.php'; |
| 4 | 4 | ||
| 5 | -class ProcessarPendenciasRN extends InfraAgendamentoTarefa { | ||
| 6 | - | ||
| 7 | - private static $instance = null; | ||
| 8 | - private $objGearmanWorker = null; | ||
| 9 | - | ||
| 10 | - protected function inicializarObjInfraIBanco(){ | ||
| 11 | - return BancoSEI::getInstance(); | ||
| 12 | - } | ||
| 13 | - | ||
| 14 | - public static function getInstance() { | ||
| 15 | - if (self::$instance == null) { | ||
| 16 | - self::$instance = new ProcessarPendenciasRN(ConfiguracaoSEI::getInstance(), SessaoSEI::getInstance(), BancoSEI::getInstance(), LogSEI::getInstance()); | 5 | +class ProcessarPendenciasRN extends InfraAgendamentoTarefa |
| 6 | +{ | ||
| 7 | + private static $instance = null; | ||
| 8 | + private $objGearmanWorker = null; | ||
| 9 | + | ||
| 10 | + protected function inicializarObjInfraIBanco() | ||
| 11 | + { | ||
| 12 | + return BancoSEI::getInstance(); | ||
| 17 | } | 13 | } |
| 18 | - return self::$instance; | ||
| 19 | - } | ||
| 20 | - | ||
| 21 | - public function __construct() { | ||
| 22 | - //Configuração do worker do Gearman para realizar o processamento de tarefas | ||
| 23 | - $this->objGearmanWorker = new GearmanWorker(); | ||
| 24 | - $this->objGearmanWorker->addServer('localhost', 4730); | ||
| 25 | - $this->configurarCallbacks(); | ||
| 26 | - } | ||
| 27 | - | ||
| 28 | - public function processarPendencias() | ||
| 29 | - { | ||
| 30 | - try{ | ||
| 31 | - ini_set('max_execution_time','0'); | ||
| 32 | - ini_set('memory_limit','-1'); | ||
| 33 | - | ||
| 34 | - InfraDebug::getInstance()->setBolLigado(true); | ||
| 35 | - InfraDebug::getInstance()->setBolDebugInfra(true); | ||
| 36 | - InfraDebug::getInstance()->setBolEcho(false); | ||
| 37 | - InfraDebug::getInstance()->limpar(); | ||
| 38 | - | ||
| 39 | - $objPenParametroRN = new PenParametroRN(); | ||
| 40 | - SessaoSEI::getInstance(false)->simularLogin('SEI', null, null, $objPenParametroRN->getParametro('PEN_UNIDADE_GERADORA_DOCUMENTO_RECEBIDO')); | ||
| 41 | - | ||
| 42 | - $numSeg = InfraUtil::verificarTempoProcessamento(); | ||
| 43 | - | ||
| 44 | - InfraDebug::getInstance()->gravar('ANALISANDO OS TRÂMITES PENDENTES ENVIADOS PARA O ÓRGÃO (PEN)'); | ||
| 45 | - echo "[".date("d/m/Y H:i:s")."] Iniciando serviço de processamento de pendências de trâmites de processos...\n"; | ||
| 46 | - | ||
| 47 | - while($this->objGearmanWorker->work()) | ||
| 48 | - { | ||
| 49 | - if ($this->objGearmanWorker->returnCode() != GEARMAN_SUCCESS) | ||
| 50 | - { | ||
| 51 | - $strAssunto = 'Erro executando agendamentos'; | ||
| 52 | - $strErro = InfraException::inspecionar($e); | ||
| 53 | - echo $strAssunto."\n\n".$strErro; | ||
| 54 | - LogSEI::getInstance()->gravar($strAssunto."\n\n".$strErro); | ||
| 55 | - break; | ||
| 56 | - } | 14 | + |
| 15 | + public static function getInstance() | ||
| 16 | + { | ||
| 17 | + if (self::$instance == null) { | ||
| 18 | + self::$instance = new ProcessarPendenciasRN(ConfiguracaoSEI::getInstance(), SessaoSEI::getInstance(), BancoSEI::getInstance(), LogSEI::getInstance()); | ||
| 57 | } | 19 | } |
| 20 | + return self::$instance; | ||
| 21 | + } | ||
| 58 | 22 | ||
| 59 | - $numSeg = InfraUtil::verificarTempoProcessamento($numSeg); | ||
| 60 | - InfraDebug::getInstance()->gravar('TEMPO TOTAL DE EXECUCAO: '.$numSeg.' s'); | ||
| 61 | - InfraDebug::getInstance()->gravar('FIM'); | ||
| 62 | - LogSEI::getInstance()->gravar(InfraDebug::getInstance()->getStrDebug()); | ||
| 63 | - } | ||
| 64 | - catch(Exception $e){ | ||
| 65 | - $strAssunto = 'Agendamento FALHOU'; | ||
| 66 | - $strErro = ''; | ||
| 67 | - $strErro .= 'Servidor: '.gethostname()."\n\n"; | ||
| 68 | - $strErro .= 'Data/Hora: '.InfraData::getStrDataHoraAtual()."\n\n"; | ||
| 69 | - $strErro .= 'Erro: '.InfraException::inspecionar($e); | ||
| 70 | - LogSEI::getInstance()->gravar($strAssunto."\n\n".$strErro); | 23 | + public function __construct() |
| 24 | + { | ||
| 25 | + //Configuração do worker do Gearman para realizar o processamento de tarefas | ||
| 26 | + $this->objGearmanWorker = new GearmanWorker(); | ||
| 27 | + $this->objGearmanWorker->addServer('localhost', 4730); | ||
| 28 | + $this->configurarCallbacks(); | ||
| 71 | } | 29 | } |
| 72 | - } | ||
| 73 | - | ||
| 74 | - private function configurarCallbacks() | ||
| 75 | - { | ||
| 76 | - //PROCESSAMENTO DE TAREFAS RELACIONADAS AO ENVIO DE UM PROCESSO ELETRÔNICO | ||
| 77 | - ////////////////////////////////////////////////////////////////////////// | ||
| 78 | - | ||
| 79 | - //Etapa 01 - Processamento de pendências envio dos metadados do processo | ||
| 80 | - $this->objGearmanWorker->addFunction("enviarProcesso", function ($job) { | ||
| 81 | - | ||
| 82 | - InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [enviarProcesso] " . $job->workload()); | ||
| 83 | - //TODO: Implementar tarefa relacionada | ||
| 84 | - //... | ||
| 85 | - | ||
| 86 | - //Agendamento de nova tarefa para envio dos componentes digitais do processo | ||
| 87 | - //$this->objGearmanClient->addTask("enviarComponenteDigital", $numIdentificacaoTramite, null); | ||
| 88 | - | ||
| 89 | - }); | ||
| 90 | - | ||
| 91 | - //Etapa 02 - Processamento de pendências envio dos componentes digitais do processo | ||
| 92 | - $this->objGearmanWorker->addFunction("enviarComponenteDigital", function ($job) { | ||
| 93 | - | ||
| 94 | - InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [enviarComponenteDigital] " . $job->workload()); | ||
| 95 | - //TODO: Implementar tarefa relacionada | ||
| 96 | - //... | ||
| 97 | - | ||
| 98 | - //Agendamento de nova tarefa para recebimento do recibo de envio do processo | ||
| 99 | - //$this->objGearmanClient->addTask("receberReciboTramite", $numIdentificacaoTramite, null); | ||
| 100 | - | ||
| 101 | - }); | ||
| 102 | - | ||
| 103 | - //Etapa 03 - Processamento de pendências de recebimento do recibo de envio do processo | ||
| 104 | - $this->objGearmanWorker->addFunction("receberReciboTramite", function ($job) { | ||
| 105 | - | ||
| 106 | - $numIdentificacaoTramite = intval($job->workload()); | ||
| 107 | - | ||
| 108 | - InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [receberReciboTramite] " . $job->workload()); | ||
| 109 | - //TODO: Implementar tarefa relacionada | ||
| 110 | - | ||
| 111 | - $objPenTramiteProcessadoRN = new PenTramiteProcessadoRN(PenTramiteProcessadoRN::STR_TIPO_RECIBO); | ||
| 112 | - | ||
| 113 | - if(!$objPenTramiteProcessadoRN->isProcedimentoRecebido($numIdentificacaoTramite)){ | ||
| 114 | - | ||
| 115 | - $objReceberReciboTramiteRN = new ReceberReciboTramiteRN(); | ||
| 116 | - $objReceberReciboTramiteRN->receberReciboDeTramite($numIdentificacaoTramite); | 30 | + |
| 31 | + public function processarPendencias() | ||
| 32 | + { | ||
| 33 | + try{ | ||
| 34 | + ini_set('max_execution_time','0'); | ||
| 35 | + ini_set('memory_limit','-1'); | ||
| 36 | + | ||
| 37 | + InfraDebug::getInstance()->setBolLigado(false); | ||
| 38 | + InfraDebug::getInstance()->setBolDebugInfra(false); | ||
| 39 | + InfraDebug::getInstance()->setBolEcho(false); | ||
| 40 | + InfraDebug::getInstance()->limpar(); | ||
| 41 | + | ||
| 42 | + PENIntegracao::validarCompatibilidadeModulo(); | ||
| 43 | + | ||
| 44 | + $objPenParametroRN = new PenParametroRN(); | ||
| 45 | + SessaoSEI::getInstance(false)->simularLogin('SEI', null, null, $objPenParametroRN->getParametro('PEN_UNIDADE_GERADORA_DOCUMENTO_RECEBIDO')); | ||
| 46 | + | ||
| 47 | + $numSeg = InfraUtil::verificarTempoProcessamento(); | ||
| 48 | + | ||
| 49 | + InfraDebug::getInstance()->gravar('ANALISANDO OS TRÂMITES PENDENTES ENVIADOS PARA O ÓRGÃO (PEN)'); | ||
| 50 | + echo "[".date("d/m/Y H:i:s")."] Iniciando serviço de processamento de pendências de trâmites de processos...\n"; | ||
| 51 | + | ||
| 52 | + while($this->objGearmanWorker->work()) | ||
| 53 | + { | ||
| 54 | + if ($this->objGearmanWorker->returnCode() != GEARMAN_SUCCESS) { | ||
| 55 | + $strErro = 'Erro no processamento de pendências do PEN. ErrorCode: ' . $this->objGearmanWorker->returnCode(); | ||
| 56 | + LogSEI::getInstance()->gravar($strErro); | ||
| 57 | + break; | ||
| 58 | + } | ||
| 59 | + } | ||
| 60 | + | ||
| 61 | + $numSeg = InfraUtil::verificarTempoProcessamento($numSeg); | ||
| 62 | + InfraDebug::getInstance()->gravar('TEMPO TOTAL DE EXECUCAO: '.$numSeg.' s'); | ||
| 63 | + InfraDebug::getInstance()->gravar('FIM'); | ||
| 64 | + LogSEI::getInstance()->gravar(InfraDebug::getInstance()->getStrDebug()); | ||
| 117 | } | 65 | } |
| 118 | - }); | ||
| 119 | - | ||
| 120 | - | ||
| 121 | - //PROCESSAMENTO DE TAREFAS RELACIONADAS AO RECEBIMENTO DE UM PROCESSO ELETRÔNICO | ||
| 122 | - ////////////////////////////////////////////////////////////////////////// | ||
| 123 | - | ||
| 124 | - //Processamento de pendências de recebimento dos metadados do processo | ||
| 125 | - $this->objGearmanWorker->addFunction("receberProcedimento", function ($job) { | ||
| 126 | - | ||
| 127 | - $numIdentificacaoTramite = intval($job->workload()); | ||
| 128 | - | ||
| 129 | - InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [receberProcedimento] " . $job->workload()); | ||
| 130 | - | ||
| 131 | - $objPenTramiteProcessadoRN = new PenTramiteProcessadoRN(PenTramiteProcessadoRN::STR_TIPO_PROCESSO); | ||
| 132 | - | ||
| 133 | - if(!$objPenTramiteProcessadoRN->isProcedimentoRecebido($numIdentificacaoTramite)){ | ||
| 134 | - | ||
| 135 | - $objReceberProcedimentoRN = new ReceberProcedimentoRN(); | ||
| 136 | - $objReceberProcedimentoRN->receberProcedimento($numIdentificacaoTramite); | ||
| 137 | - | ||
| 138 | - //TODO: A próxima etapa deveria ser o recebimento dos componentes digitais, rotina tradada na função receberProcedimento(...) | ||
| 139 | - //Agendamento de nova tarefa para envio do recibo de conclusão do trãmite | ||
| 140 | - //ProcessarPendenciasRN::processarTarefa("enviarReciboTramiteProcesso", $job->workload()); | ||
| 141 | - | ||
| 142 | - /* $objEnviarReciboTramiteRN = new EnviarReciboTramiteRN(); | ||
| 143 | - $objEnviarReciboTramiteRN->enviarReciboTramiteProcesso($numIdentificacaoTramite, $arrayHash);*/ | 66 | + catch(Exception $e) { |
| 67 | + $strAssunto = 'Falha no processamento de pendências do PEN'; | ||
| 68 | + $strErro = ''; | ||
| 69 | + $strErro .= 'Servidor: '.gethostname()."\n\n"; | ||
| 70 | + $strErro .= 'Data/Hora: '.InfraData::getStrDataHoraAtual()."\n\n"; | ||
| 71 | + $strErro .= 'Erro: '.InfraException::inspecionar($e); | ||
| 72 | + LogSEI::getInstance()->gravar($strAssunto."\n\n".$strErro); | ||
| 144 | } | 73 | } |
| 145 | - }); | ||
| 146 | - | ||
| 147 | - // Verifica no barramento os procedimentos que foram enviados por esta unidade | ||
| 148 | - // e foram recusados pelas mesmas | ||
| 149 | - $this->objGearmanWorker->addFunction("receberTramitesRecusados", function ($job) { | ||
| 150 | - | ||
| 151 | - InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [receberRecusaTramite] " . $job->workload()); | ||
| 152 | - $numIdentificacaoTramite = intval($job->workload()); | ||
| 153 | - | ||
| 154 | - $objReceberProcedimentoRN = new ReceberProcedimentoRN(); | ||
| 155 | - $objReceberProcedimentoRN->receberTramitesRecusados($numIdentificacaoTramite); | ||
| 156 | - }); | ||
| 157 | - | ||
| 158 | - //Processamento de pendências de recebimento dos componentes digitais do processo | ||
| 159 | - $this->objGearmanWorker->addFunction("receberComponenteDigital", function ($job) { | ||
| 160 | - | ||
| 161 | - InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [receberComponenteDigital] " . $job->workload()); | ||
| 162 | - //TODO: A próxima etapa deveria ser o recebimento dos componentes digitais, rotina tradada na função receberProcedimento(...) | ||
| 163 | - //... | ||
| 164 | - | ||
| 165 | - //Agendamento de nova tarefa para envio do recibo de conclusão do trâmite | ||
| 166 | - ProcessarPendenciasRN::processarTarefa("enviarReciboTramiteProcesso", $job->workload()); | ||
| 167 | - //$this->objGearmanClient->addTaskBackground("enviarReciboTramiteProcesso", $numIdentificacaoTramite, null); | ||
| 168 | - }); | ||
| 169 | - | ||
| 170 | - //Processamento de pendências de envio do recibo de conclusão do trãmite do processo | ||
| 171 | - $this->objGearmanWorker->addFunction("enviarReciboTramiteProcesso", function ($job) { | ||
| 172 | - | ||
| 173 | - InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [enviarReciboTramiteProcesso] " . $job->workload()); | ||
| 174 | - | ||
| 175 | - $numIdentificacaoTramite = intval($job->workload()); | ||
| 176 | - $objEnviarReciboTramiteRN = new EnviarReciboTramiteRN(); | ||
| 177 | - $objEnviarReciboTramiteRN->enviarReciboTramiteProcesso($numIdentificacaoTramite); | ||
| 178 | - }); | ||
| 179 | - } | ||
| 180 | - | ||
| 181 | - static function processarTarefa($strNomeTarefa, $strWorkload) | ||
| 182 | - { | ||
| 183 | - $objClient = new GearmanClient(); | ||
| 184 | - $objClient->addServer('localhost', 4730); | ||
| 185 | - //$objClient->addTaskBackground($strNomeTarefa, $strWorkload); | ||
| 186 | - //$objClient->runTasks(); | ||
| 187 | - $objClient->doBackground($strNomeTarefa, $strWorkload); | ||
| 188 | - } | 74 | + } |
| 75 | + | ||
| 76 | + private function configurarCallbacks() | ||
| 77 | + { | ||
| 78 | + | ||
| 79 | + //PROCESSAMENTO DE TAREFAS RELACIONADAS AO ENVIO DE UM PROCESSO ELETRÔNICO | ||
| 80 | + ////////////////////////////////////////////////////////////////////////// | ||
| 81 | + | ||
| 82 | + //Etapa 01 - Processamento de pendências envio dos metadados do processo | ||
| 83 | + $this->objGearmanWorker->addFunction("enviarProcesso", function ($job) { | ||
| 84 | + | ||
| 85 | + InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [enviarProcesso] " . $job->workload()); | ||
| 86 | + //TODO: Implementar tarefa relacionada | ||
| 87 | + //... | ||
| 88 | + | ||
| 89 | + //Agendamento de nova tarefa para envio dos componentes digitais do processo | ||
| 90 | + //$this->objGearmanClient->addTask("enviarComponenteDigital", $numIdentificacaoTramite, null); | ||
| 91 | + }); | ||
| 92 | + | ||
| 93 | + //Etapa 02 - Processamento de pendências envio dos componentes digitais do processo | ||
| 94 | + $this->objGearmanWorker->addFunction("enviarComponenteDigital", function ($job) { | ||
| 95 | + | ||
| 96 | + InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [enviarComponenteDigital] " . $job->workload()); | ||
| 97 | + //TODO: Implementar tarefa relacionada | ||
| 98 | + //... | ||
| 99 | + | ||
| 100 | + //Agendamento de nova tarefa para recebimento do recibo de envio do processo | ||
| 101 | + //$this->objGearmanClient->addTask("receberReciboTramite", $numIdentificacaoTramite, null); | ||
| 102 | + }); | ||
| 103 | + | ||
| 104 | + //Etapa 03 - Processamento de pendências de recebimento do recibo de envio do processo | ||
| 105 | + $this->objGearmanWorker->addFunction("receberReciboTramite", function ($job) { | ||
| 106 | + $numIdentificacaoTramite = intval($job->workload()); | ||
| 107 | + InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [receberReciboTramite] " . $job->workload()); | ||
| 108 | + $objPenTramiteProcessadoRN = new PenTramiteProcessadoRN(PenTramiteProcessadoRN::STR_TIPO_RECIBO); | ||
| 109 | + if(!$objPenTramiteProcessadoRN->isProcedimentoRecebido($numIdentificacaoTramite)){ | ||
| 110 | + $objReceberReciboTramiteRN = new ReceberReciboTramiteRN(); | ||
| 111 | + $objReceberReciboTramiteRN->receberReciboDeTramite($numIdentificacaoTramite); | ||
| 112 | + } | ||
| 113 | + }); | ||
| 114 | + | ||
| 115 | + //PROCESSAMENTO DE TAREFAS RELACIONADAS AO RECEBIMENTO DE UM PROCESSO ELETRÔNICO | ||
| 116 | + ////////////////////////////////////////////////////////////////////////// | ||
| 117 | + | ||
| 118 | + //Processamento de pendências de recebimento dos metadados do processo | ||
| 119 | + $this->objGearmanWorker->addFunction("receberProcedimento", function ($job) { | ||
| 120 | + try{ | ||
| 121 | + $numIdentificacaoTramite = intval($job->workload()); | ||
| 122 | + InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [receberProcedimento] " . $job->workload()); | ||
| 123 | + $objPenTramiteProcessadoRN = new PenTramiteProcessadoRN(PenTramiteProcessadoRN::STR_TIPO_PROCESSO); | ||
| 124 | + | ||
| 125 | + if(!$objPenTramiteProcessadoRN->isProcedimentoRecebido($numIdentificacaoTramite)){ | ||
| 126 | + $objReceberProcedimentoRN = new ReceberProcedimentoRN(); | ||
| 127 | + $objReceberProcedimentoRN->receberProcedimento($numIdentificacaoTramite); | ||
| 128 | + } | ||
| 129 | + } | ||
| 130 | + catch(Exception $e){ | ||
| 131 | + LogSEI::getInstance()->gravar(InfraException::inspecionar($e)); | ||
| 132 | + $objProcessoEletronicoRN = new ProcessoEletronicoRN(); | ||
| 133 | + $strMensagem = ($e instanceof InfraException) ? $e->__toString() : $e->getMessage(); | ||
| 134 | + $objProcessoEletronicoRN->recusarTramite($numIdentificacaoTramite, $strMensagem, ProcessoEletronicoRN::MTV_RCSR_TRAM_CD_OUTROU); | ||
| 135 | + } | ||
| 136 | + }); | ||
| 137 | + | ||
| 138 | + // Verifica no barramento os procedimentos que foram enviados por esta unidade e foram recusados pelas mesmas | ||
| 139 | + $this->objGearmanWorker->addFunction("receberTramitesRecusados", function ($job) { | ||
| 140 | + InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [receberRecusaTramite] " . $job->workload()); | ||
| 141 | + $numIdentificacaoTramite = intval($job->workload()); | ||
| 142 | + $objReceberProcedimentoRN = new ReceberProcedimentoRN(); | ||
| 143 | + $objReceberProcedimentoRN->receberTramitesRecusados($numIdentificacaoTramite); | ||
| 144 | + }); | ||
| 145 | + | ||
| 146 | + //Processamento de pendências de recebimento dos componentes digitais do processo | ||
| 147 | + $this->objGearmanWorker->addFunction("receberComponenteDigital", function ($job) { | ||
| 148 | + | ||
| 149 | + InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [receberComponenteDigital] " . $job->workload()); | ||
| 150 | + //TODO: A próxima etapa deveria ser o recebimento dos componentes digitais, rotina tradada na função receberProcedimento(...) | ||
| 151 | + | ||
| 152 | + //Agendamento de nova tarefa para envio do recibo de conclusão do trâmite | ||
| 153 | + ProcessarPendenciasRN::processarTarefa("enviarReciboTramiteProcesso", $job->workload()); | ||
| 154 | + //$this->objGearmanClient->addTaskBackground("enviarReciboTramiteProcesso", $numIdentificacaoTramite, null); | ||
| 155 | + }); | ||
| 156 | + | ||
| 157 | + //Processamento de pendências de envio do recibo de conclusão do trãmite do processo | ||
| 158 | + $this->objGearmanWorker->addFunction("enviarReciboTramiteProcesso", function ($job) { | ||
| 159 | + InfraDebug::getInstance()->gravar("[".date("d/m/Y H:i:s")."] Processando tarefa [enviarReciboTramiteProcesso] " . $job->workload()); | ||
| 160 | + $numIdentificacaoTramite = intval($job->workload()); | ||
| 161 | + $objEnviarReciboTramiteRN = new EnviarReciboTramiteRN(); | ||
| 162 | + $objEnviarReciboTramiteRN->enviarReciboTramiteProcesso($numIdentificacaoTramite); | ||
| 163 | + }); | ||
| 164 | + } | ||
| 165 | + | ||
| 166 | + static function processarTarefa($strNomeTarefa, $strWorkload) | ||
| 167 | + { | ||
| 168 | + $objClient = new GearmanClient(); | ||
| 169 | + $objClient->addServer('localhost', 4730); | ||
| 170 | + $objClient->doBackground($strNomeTarefa, $strWorkload); | ||
| 171 | + } | ||
| 189 | } | 172 | } |
| 190 | 173 | ||
| 191 | -//TODO: Tratar envio de e-mail em caso de falhas de execução | ||
| 192 | SessaoSEI::getInstance(false); | 174 | SessaoSEI::getInstance(false); |
| 193 | ProcessarPendenciasRN::getInstance()->processarPendencias(); | 175 | ProcessarPendenciasRN::getInstance()->processarPendencias(); |
| 194 | 176 | ||
| 195 | -?> | ||
| 196 | \ No newline at end of file | 177 | \ No newline at end of file |
| 178 | +?> |
rn/ProcessoEletronicoRN.php
| 1 | <?php | 1 | <?php |
| 2 | -//@TODOJOIN: VERIFICAR SE NÃO EXISTEM TRY CATCH QUE OCULTAM ERROS. CASO EXISTAM CATCH COM EXEPTION DO PHP, RETIRALOS | 2 | +//@TODOJOIN: VERIFICAR SE NÃO EXISTEM TRY CATCH QUE OCULTAM ERROS. CASO EXISTAM CATCH COM EXEPTION DO PHP, RETIRALOS |
| 3 | class ProcessoEletronicoRN extends InfraRN { | 3 | class ProcessoEletronicoRN extends InfraRN { |
| 4 | 4 | ||
| 5 | //const PEN_WEBSERVICE_LOCATION = 'https://desenv-api-pen.intra.planejamento/interoperabilidade/soap/v1_1/'; | 5 | //const PEN_WEBSERVICE_LOCATION = 'https://desenv-api-pen.intra.planejamento/interoperabilidade/soap/v1_1/'; |
| 6 | - | 6 | + |
| 7 | /* TAREFAS DE EXPEDIÇÃO DE PROCESSOS */ | 7 | /* TAREFAS DE EXPEDIÇÃO DE PROCESSOS */ |
| 8 | //Está definindo o comportamento para a tarefa $TI_PROCESSO_EM_PROCESSAMENTO | 8 | //Está definindo o comportamento para a tarefa $TI_PROCESSO_EM_PROCESSAMENTO |
| 9 | public static $TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO = 'PEN_PROCESSO_EXPEDIDO'; | 9 | public static $TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO = 'PEN_PROCESSO_EXPEDIDO'; |
| @@ -19,21 +19,21 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -19,21 +19,21 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 19 | public static $STA_SIGILO_RESTRITO = '2'; | 19 | public static $STA_SIGILO_RESTRITO = '2'; |
| 20 | public static $STA_SIGILO_SIGILOSO = '3'; | 20 | public static $STA_SIGILO_SIGILOSO = '3'; |
| 21 | 21 | ||
| 22 | - /* RELAÇÃO DE SITUAÇÕES POSSÍVEIS EM UM TRÂMITE */ | ||
| 23 | - public static $STA_SITUACAO_TRAMITE_INICIADO = 1; // Iniciado - Metadados recebidos pela solução | ||
| 24 | - public static $STA_SITUACAO_TRAMITE_COMPONENTES_ENVIADOS_REMETENTE = 2; // Componentes digitais recebidos pela solução | 22 | + /* RELAÇÃO DE SITUAÇÕES POSSÍVEIS EM UM TRÂMITE */ |
| 23 | + public static $STA_SITUACAO_TRAMITE_INICIADO = 1; // Iniciado - Metadados recebidos pela solução | ||
| 24 | + public static $STA_SITUACAO_TRAMITE_COMPONENTES_ENVIADOS_REMETENTE = 2; // Componentes digitais recebidos pela solução | ||
| 25 | public static $STA_SITUACAO_TRAMITE_METADADOS_RECEBIDO_DESTINATARIO = 3; // Metadados recebidos pelo destinatário | 25 | public static $STA_SITUACAO_TRAMITE_METADADOS_RECEBIDO_DESTINATARIO = 3; // Metadados recebidos pelo destinatário |
| 26 | public static $STA_SITUACAO_TRAMITE_COMPONENTES_RECEBIDOS_DESTINATARIO = 4; // Componentes digitais recebidos pelo destinatário | 26 | public static $STA_SITUACAO_TRAMITE_COMPONENTES_RECEBIDOS_DESTINATARIO = 4; // Componentes digitais recebidos pelo destinatário |
| 27 | public static $STA_SITUACAO_TRAMITE_RECIBO_ENVIADO_DESTINATARIO = 5; // Recibo de conclusão do trâmite enviado pelo destinatário do processo | 27 | public static $STA_SITUACAO_TRAMITE_RECIBO_ENVIADO_DESTINATARIO = 5; // Recibo de conclusão do trâmite enviado pelo destinatário do processo |
| 28 | public static $STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE = 6; // Recibo de conclusão do trâmite recebido pelo remetente do processo | 28 | public static $STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE = 6; // Recibo de conclusão do trâmite recebido pelo remetente do processo |
| 29 | - public static $STA_SITUACAO_TRAMITE_CANCELADO = 7; // Trâmite do processo ou documento cancelado pelo usuário (Qualquer situação diferente de 5 e 6) | 29 | + public static $STA_SITUACAO_TRAMITE_CANCELADO = 7; // Trâmite do processo ou documento cancelado pelo usuário (Qualquer situação diferente de 5 e 6) |
| 30 | 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) |
| 31 | 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 |
| 32 | 32 | ||
| 33 | public static $STA_TIPO_RECIBO_ENVIO = '1'; // Recibo de envio | 33 | public static $STA_TIPO_RECIBO_ENVIO = '1'; // Recibo de envio |
| 34 | public static $STA_TIPO_RECIBO_CONCLUSAO_ENVIADO = '2'; // Recibo de recebimento enviado | 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 | 35 | public static $STA_TIPO_RECIBO_CONCLUSAO_RECEBIDO = '3'; // Recibo de recebimento recebido |
| 36 | - | 36 | + |
| 37 | /* OPERAÇÕES DO HISTÓRICO DO PROCESSO */ | 37 | /* OPERAÇÕES DO HISTÓRICO DO PROCESSO */ |
| 38 | // 02 a 18 estão registrados na tabela rel_tarefa_operacao | 38 | // 02 a 18 estão registrados na tabela rel_tarefa_operacao |
| 39 | public static $OP_OPERACAO_REGISTRO = "01"; | 39 | public static $OP_OPERACAO_REGISTRO = "01"; |
| @@ -41,7 +41,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -41,7 +41,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 41 | 41 | ||
| 42 | 42 | ||
| 43 | const ALGORITMO_HASH_DOCUMENTO = 'SHA256'; | 43 | const ALGORITMO_HASH_DOCUMENTO = 'SHA256'; |
| 44 | - | 44 | + |
| 45 | /** | 45 | /** |
| 46 | * Motivo para recusar de tramite de componente digital pelo formato | 46 | * Motivo para recusar de tramite de componente digital pelo formato |
| 47 | */ | 47 | */ |
| @@ -54,17 +54,17 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -54,17 +54,17 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 54 | * Motivo para recusar de tramite de componente digital que não foi enviado | 54 | * Motivo para recusar de tramite de componente digital que não foi enviado |
| 55 | */ | 55 | */ |
| 56 | const MTV_RCSR_TRAM_CD_FALTA = '03'; | 56 | const MTV_RCSR_TRAM_CD_FALTA = '03'; |
| 57 | - | 57 | + |
| 58 | /** | 58 | /** |
| 59 | * Espécie documentoal não mapeada | 59 | * Espécie documentoal não mapeada |
| 60 | */ | 60 | */ |
| 61 | const MTV_RCSR_TRAM_CD_ESPECIE_NAO_MAPEADA = '03'; | 61 | const MTV_RCSR_TRAM_CD_ESPECIE_NAO_MAPEADA = '03'; |
| 62 | - | 62 | + |
| 63 | /** | 63 | /** |
| 64 | * Motivo para recusar de tramite de componente digital | 64 | * Motivo para recusar de tramite de componente digital |
| 65 | */ | 65 | */ |
| 66 | const MTV_RCSR_TRAM_CD_OUTROU = '99'; | 66 | const MTV_RCSR_TRAM_CD_OUTROU = '99'; |
| 67 | - | 67 | + |
| 68 | public static $MOTIVOS_RECUSA = array( | 68 | public static $MOTIVOS_RECUSA = array( |
| 69 | "01" => "Formato de componente digital não suportado", | 69 | "01" => "Formato de componente digital não suportado", |
| 70 | "02" => "Componente digital corrompido", | 70 | "02" => "Componente digital corrompido", |
| @@ -72,7 +72,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -72,7 +72,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 72 | "04" => "Espécie documental não mapeada no destinatário", | 72 | "04" => "Espécie documental não mapeada no destinatário", |
| 73 | "99" => "Outro" | 73 | "99" => "Outro" |
| 74 | ); | 74 | ); |
| 75 | - | 75 | + |
| 76 | 76 | ||
| 77 | private $strWSDL = null; | 77 | private $strWSDL = null; |
| 78 | private $objPenWs = null; | 78 | private $objPenWs = null; |
| @@ -80,7 +80,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -80,7 +80,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 80 | 80 | ||
| 81 | public function __construct() { | 81 | public function __construct() { |
| 82 | $objPenParametroRN = new PenParametroRN(); | 82 | $objPenParametroRN = new PenParametroRN(); |
| 83 | - | 83 | + |
| 84 | $strEnderecoWebService = $objPenParametroRN->getParametro('PEN_ENDERECO_WEBSERVICE'); | 84 | $strEnderecoWebService = $objPenParametroRN->getParametro('PEN_ENDERECO_WEBSERVICE'); |
| 85 | $strLocalizacaoCertificadoDigital = $objPenParametroRN->getParametro('PEN_LOCALIZACAO_CERTIFICADO_DIGITAL'); | 85 | $strLocalizacaoCertificadoDigital = $objPenParametroRN->getParametro('PEN_LOCALIZACAO_CERTIFICADO_DIGITAL'); |
| 86 | $strSenhaCertificadoDigital = $objPenParametroRN->getParametro('PEN_SENHA_CERTIFICADO_DIGITAL'); | 86 | $strSenhaCertificadoDigital = $objPenParametroRN->getParametro('PEN_SENHA_CERTIFICADO_DIGITAL'); |
| @@ -121,17 +121,17 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -121,17 +121,17 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 121 | { | 121 | { |
| 122 | return BancoSEI::getInstance(); | 122 | return BancoSEI::getInstance(); |
| 123 | } | 123 | } |
| 124 | - | 124 | + |
| 125 | /** | 125 | /** |
| 126 | * Verifica se o uma url esta ativa | 126 | * Verifica se o uma url esta ativa |
| 127 | - * | 127 | + * |
| 128 | * @param string $strUrl url a ser testada | 128 | * @param string $strUrl url a ser testada |
| 129 | * @param string $strLocalCert local físico do certificado .pem | 129 | * @param string $strLocalCert local físico do certificado .pem |
| 130 | * @throws InfraException | 130 | * @throws InfraException |
| 131 | * @return null | 131 | * @return null |
| 132 | */ | 132 | */ |
| 133 | private function testaUrl($strUrl = '', $strLocalCert = ''){ | 133 | private function testaUrl($strUrl = '', $strLocalCert = ''){ |
| 134 | - | 134 | + |
| 135 | $arrParseUrl = parse_url($this->strWSDL); | 135 | $arrParseUrl = parse_url($this->strWSDL); |
| 136 | // é melhor a página inicial que todo o arquivo wsdl | 136 | // é melhor a página inicial que todo o arquivo wsdl |
| 137 | $strUrl = $arrParseUrl['scheme'].'://'.$arrParseUrl['host']; | 137 | $strUrl = $arrParseUrl['scheme'].'://'.$arrParseUrl['host']; |
| @@ -147,37 +147,37 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -147,37 +147,37 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 147 | throw new InfraException('Falha de comunicação com o Barramento de Serviços. Por favor, tente novamente mais tarde.', $e); | 147 | throw new InfraException('Falha de comunicação com o Barramento de Serviços. Por favor, tente novamente mais tarde.', $e); |
| 148 | } | 148 | } |
| 149 | } | 149 | } |
| 150 | - | 150 | + |
| 151 | public function testarDisponibilidade(){ | 151 | public function testarDisponibilidade(){ |
| 152 | - | 152 | + |
| 153 | try{ | 153 | try{ |
| 154 | $this->testaUrl($this->strWSDL, $this->options['local_cert']); | 154 | $this->testaUrl($this->strWSDL, $this->options['local_cert']); |
| 155 | return true; | 155 | return true; |
| 156 | } catch (Exception $ex) { | 156 | } catch (Exception $ex) { |
| 157 | return false; | 157 | return false; |
| 158 | } | 158 | } |
| 159 | - | 159 | + |
| 160 | } | 160 | } |
| 161 | - | 161 | + |
| 162 | private function getObjPenWs() { | 162 | private function getObjPenWs() { |
| 163 | - | ||
| 164 | - if($this->objPenWs == null) { | 163 | + |
| 164 | + if($this->objPenWs == null) { | ||
| 165 | $this->testaUrl($this->strWSDL, $this->options['local_cert']); | 165 | $this->testaUrl($this->strWSDL, $this->options['local_cert']); |
| 166 | try { | 166 | try { |
| 167 | - | 167 | + |
| 168 | $objConfig = ConfiguracaoSEI::getInstance(); | 168 | $objConfig = ConfiguracaoSEI::getInstance(); |
| 169 | - | 169 | + |
| 170 | if($objConfig->isSetValor('SEI', 'LogPenWs')){ | 170 | if($objConfig->isSetValor('SEI', 'LogPenWs')){ |
| 171 | - | 171 | + |
| 172 | $this->objPenWs = new LogPenWs($objConfig->getValor('SEI', 'LogPenWs'), $this->strWSDL, $this->options); | 172 | $this->objPenWs = new LogPenWs($objConfig->getValor('SEI', 'LogPenWs'), $this->strWSDL, $this->options); |
| 173 | } | 173 | } |
| 174 | else { | 174 | else { |
| 175 | - | 175 | + |
| 176 | $this->objPenWs = new BeSimple\SoapClient\SoapClient($this->strWSDL, $this->options); | 176 | $this->objPenWs = new BeSimple\SoapClient\SoapClient($this->strWSDL, $this->options); |
| 177 | } | 177 | } |
| 178 | } catch (Exception $e) { | 178 | } catch (Exception $e) { |
| 179 | throw new InfraException('Erro acessando serviço.', $e); | 179 | throw new InfraException('Erro acessando serviço.', $e); |
| 180 | - } | 180 | + } |
| 181 | } | 181 | } |
| 182 | 182 | ||
| 183 | return $this->objPenWs; | 183 | return $this->objPenWs; |
| @@ -198,7 +198,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -198,7 +198,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 198 | if(isset($result->repositoriosEncontrados->repositorio)){ | 198 | if(isset($result->repositoriosEncontrados->repositorio)){ |
| 199 | 199 | ||
| 200 | if(!is_array($result->repositoriosEncontrados->repositorio)) { | 200 | if(!is_array($result->repositoriosEncontrados->repositorio)) { |
| 201 | - $result->repositoriosEncontrados->repositorio = array($result->repositoriosEncontrados->repositorio); | 201 | + $result->repositoriosEncontrados->repositorio = array($result->repositoriosEncontrados->repositorio); |
| 202 | } | 202 | } |
| 203 | 203 | ||
| 204 | foreach ($result->repositoriosEncontrados->repositorio as $repositorio) { | 204 | foreach ($result->repositoriosEncontrados->repositorio as $repositorio) { |
| @@ -211,7 +211,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -211,7 +211,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 211 | } | 211 | } |
| 212 | } | 212 | } |
| 213 | } catch(Exception $e){ | 213 | } catch(Exception $e){ |
| 214 | - throw new InfraException("Erro durante obtenção dos repositórios", $e); | 214 | + throw new InfraException("Erro durante obtenção dos repositórios", $e); |
| 215 | } | 215 | } |
| 216 | 216 | ||
| 217 | return $objRepositorioDTO; | 217 | return $objRepositorioDTO; |
| @@ -231,7 +231,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -231,7 +231,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 231 | if(isset($result->repositoriosEncontrados->repositorio)){ | 231 | if(isset($result->repositoriosEncontrados->repositorio)){ |
| 232 | 232 | ||
| 233 | if(!is_array($result->repositoriosEncontrados->repositorio)) { | 233 | if(!is_array($result->repositoriosEncontrados->repositorio)) { |
| 234 | - $result->repositoriosEncontrados->repositorio = array($result->repositoriosEncontrados->repositorio); | 234 | + $result->repositoriosEncontrados->repositorio = array($result->repositoriosEncontrados->repositorio); |
| 235 | } | 235 | } |
| 236 | 236 | ||
| 237 | foreach ($result->repositoriosEncontrados->repositorio as $repositorio) { | 237 | foreach ($result->repositoriosEncontrados->repositorio as $repositorio) { |
| @@ -243,7 +243,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -243,7 +243,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 243 | } | 243 | } |
| 244 | } | 244 | } |
| 245 | } catch(Exception $e){ | 245 | } catch(Exception $e){ |
| 246 | - throw new InfraException("Erro durante obtenção dos repositórios", $e); | 246 | + throw new InfraException("Erro durante obtenção dos repositórios", $e); |
| 247 | } | 247 | } |
| 248 | 248 | ||
| 249 | return $arrObjRepositorioDTO; | 249 | return $arrObjRepositorioDTO; |
| @@ -257,30 +257,30 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -257,30 +257,30 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 257 | $parametros->filtroDeEstruturas->identificacaoDoRepositorioDeEstruturas = $idRepositorioEstrutura; | 257 | $parametros->filtroDeEstruturas->identificacaoDoRepositorioDeEstruturas = $idRepositorioEstrutura; |
| 258 | $parametros->filtroDeEstruturas->numeroDeIdentificacaoDaEstrutura = $numeroDeIdentificacaoDaEstrutura; | 258 | $parametros->filtroDeEstruturas->numeroDeIdentificacaoDaEstrutura = $numeroDeIdentificacaoDaEstrutura; |
| 259 | $parametros->filtroDeEstruturas->apenasAtivas = false; | 259 | $parametros->filtroDeEstruturas->apenasAtivas = false; |
| 260 | - | 260 | + |
| 261 | $result = $this->getObjPenWs()->consultarEstruturas($parametros); | 261 | $result = $this->getObjPenWs()->consultarEstruturas($parametros); |
| 262 | 262 | ||
| 263 | if ($result->estruturasEncontradas->totalDeRegistros == 1) { | 263 | if ($result->estruturasEncontradas->totalDeRegistros == 1) { |
| 264 | 264 | ||
| 265 | $arrObjEstrutura = is_array($result->estruturasEncontradas->estrutura) ? $result->estruturasEncontradas->estrutura : array($result->estruturasEncontradas->estrutura); | 265 | $arrObjEstrutura = is_array($result->estruturasEncontradas->estrutura) ? $result->estruturasEncontradas->estrutura : array($result->estruturasEncontradas->estrutura); |
| 266 | $objEstrutura = current($arrObjEstrutura); | 266 | $objEstrutura = current($arrObjEstrutura); |
| 267 | - | 267 | + |
| 268 | $objEstrutura->nome = utf8_decode($objEstrutura->nome); | 268 | $objEstrutura->nome = utf8_decode($objEstrutura->nome); |
| 269 | $objEstrutura->sigla = utf8_decode($objEstrutura->sigla); | 269 | $objEstrutura->sigla = utf8_decode($objEstrutura->sigla); |
| 270 | - | 270 | + |
| 271 | if ($bolRetornoRaw !== false) { | 271 | if ($bolRetornoRaw !== false) { |
| 272 | if (isset($objEstrutura->hierarquia) && isset($objEstrutura->hierarquia->nivel)) { | 272 | if (isset($objEstrutura->hierarquia) && isset($objEstrutura->hierarquia->nivel)) { |
| 273 | if (!is_array($objEstrutura->hierarquia->nivel)) { | 273 | if (!is_array($objEstrutura->hierarquia->nivel)) { |
| 274 | $objEstrutura->hierarquia->nivel = array($objEstrutura->hierarquia->nivel); | 274 | $objEstrutura->hierarquia->nivel = array($objEstrutura->hierarquia->nivel); |
| 275 | } | 275 | } |
| 276 | - | 276 | + |
| 277 | $objEstrutura->hierarquia->nivel = (array) $objEstrutura->hierarquia->nivel; | 277 | $objEstrutura->hierarquia->nivel = (array) $objEstrutura->hierarquia->nivel; |
| 278 | foreach ($objEstrutura->hierarquia->nivel as &$objNivel) { | 278 | foreach ($objEstrutura->hierarquia->nivel as &$objNivel) { |
| 279 | $objNivel->nome = utf8_decode($objNivel->nome); | 279 | $objNivel->nome = utf8_decode($objNivel->nome); |
| 280 | - } | 280 | + } |
| 281 | } | 281 | } |
| 282 | return $objEstrutura; | 282 | return $objEstrutura; |
| 283 | - } | 283 | + } |
| 284 | else { | 284 | else { |
| 285 | 285 | ||
| 286 | $objEstruturaDTO = new EstruturaDTO(); | 286 | $objEstruturaDTO = new EstruturaDTO(); |
| @@ -293,27 +293,28 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -293,27 +293,28 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 293 | return $objEstruturaDTO; | 293 | return $objEstruturaDTO; |
| 294 | } | 294 | } |
| 295 | } | 295 | } |
| 296 | - } | 296 | + } |
| 297 | catch (Exception $e) { | 297 | catch (Exception $e) { |
| 298 | throw new InfraException("Erro durante obtenção das unidades", $e); | 298 | throw new InfraException("Erro durante obtenção das unidades", $e); |
| 299 | } | 299 | } |
| 300 | } | 300 | } |
| 301 | 301 | ||
| 302 | - public function listarEstruturas($idRepositorioEstrutura, $nome='') | 302 | + public function listarEstruturas($idRepositorioEstrutura, $nome='') |
| 303 | { | 303 | { |
| 304 | $arrObjEstruturaDTO = array(); | 304 | $arrObjEstruturaDTO = array(); |
| 305 | 305 | ||
| 306 | try{ | 306 | try{ |
| 307 | $idRepositorioEstrutura = filter_var($idRepositorioEstrutura, FILTER_SANITIZE_NUMBER_INT); | 307 | $idRepositorioEstrutura = filter_var($idRepositorioEstrutura, FILTER_SANITIZE_NUMBER_INT); |
| 308 | if(!$idRepositorioEstrutura) { | 308 | if(!$idRepositorioEstrutura) { |
| 309 | - throw new InfraException("Repositório de Estruturas inválido"); | 309 | + throw new InfraException("Repositório de Estruturas inválido"); |
| 310 | } | 310 | } |
| 311 | 311 | ||
| 312 | $parametros = new stdClass(); | 312 | $parametros = new stdClass(); |
| 313 | $parametros->filtroDeEstruturas = new stdClass(); | 313 | $parametros->filtroDeEstruturas = new stdClass(); |
| 314 | $parametros->filtroDeEstruturas->identificacaoDoRepositorioDeEstruturas = $idRepositorioEstrutura; | 314 | $parametros->filtroDeEstruturas->identificacaoDoRepositorioDeEstruturas = $idRepositorioEstrutura; |
| 315 | $parametros->filtroDeEstruturas->apenasAtivas = false; | 315 | $parametros->filtroDeEstruturas->apenasAtivas = false; |
| 316 | - | 316 | + |
| 317 | + $nome = trim($nome); | ||
| 317 | if(is_numeric($nome)) { | 318 | if(is_numeric($nome)) { |
| 318 | $parametros->filtroDeEstruturas->numeroDeIdentificacaoDaEstrutura = intval($nome); | 319 | $parametros->filtroDeEstruturas->numeroDeIdentificacaoDaEstrutura = intval($nome); |
| 319 | } else { | 320 | } else { |
| @@ -325,7 +326,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -325,7 +326,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 325 | if($result->estruturasEncontradas->totalDeRegistros > 0) { | 326 | if($result->estruturasEncontradas->totalDeRegistros > 0) { |
| 326 | 327 | ||
| 327 | if(!is_array($result->estruturasEncontradas->estrutura)) { | 328 | if(!is_array($result->estruturasEncontradas->estrutura)) { |
| 328 | - $result->estruturasEncontradas->estrutura = array($result->estruturasEncontradas->estrutura); | 329 | + $result->estruturasEncontradas->estrutura = array($result->estruturasEncontradas->estrutura); |
| 329 | } | 330 | } |
| 330 | 331 | ||
| 331 | foreach ($result->estruturasEncontradas->estrutura as $estrutura) { | 332 | foreach ($result->estruturasEncontradas->estrutura as $estrutura) { |
| @@ -336,25 +337,25 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -336,25 +337,25 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 336 | $item->setBolAtivo($estrutura->ativo); | 337 | $item->setBolAtivo($estrutura->ativo); |
| 337 | $item->setBolAptoParaReceberTramites($estrutura->aptoParaReceberTramites); | 338 | $item->setBolAptoParaReceberTramites($estrutura->aptoParaReceberTramites); |
| 338 | $item->setStrCodigoNoOrgaoEntidade($estrutura->codigoNoOrgaoEntidade); | 339 | $item->setStrCodigoNoOrgaoEntidade($estrutura->codigoNoOrgaoEntidade); |
| 339 | - | 340 | + |
| 340 | if(!empty($estrutura->hierarquia->nivel)) { | 341 | if(!empty($estrutura->hierarquia->nivel)) { |
| 341 | - | 342 | + |
| 342 | $array = array(); | 343 | $array = array(); |
| 343 | - | 344 | + |
| 344 | foreach($estrutura->hierarquia->nivel as $nivel) { | 345 | foreach($estrutura->hierarquia->nivel as $nivel) { |
| 345 | - | 346 | + |
| 346 | $array[] = utf8_decode($nivel->sigla); | 347 | $array[] = utf8_decode($nivel->sigla); |
| 347 | } | 348 | } |
| 348 | - | 349 | + |
| 349 | $item->setArrHierarquia($array); | 350 | $item->setArrHierarquia($array); |
| 350 | } | 351 | } |
| 351 | - | 352 | + |
| 352 | $arrObjEstruturaDTO[] = $item; | 353 | $arrObjEstruturaDTO[] = $item; |
| 353 | } | 354 | } |
| 354 | - } | 355 | + } |
| 355 | 356 | ||
| 356 | } catch (Exception $e) { | 357 | } catch (Exception $e) { |
| 357 | - throw new InfraException("Erro durante obtenção das unidades", $e); | 358 | + throw new InfraException("Erro durante obtenção das unidades", $e); |
| 358 | } | 359 | } |
| 359 | 360 | ||
| 360 | return $arrObjEstruturaDTO; | 361 | return $arrObjEstruturaDTO; |
| @@ -380,7 +381,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -380,7 +381,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 380 | $xpath = new DOMXPath($dom); | 381 | $xpath = new DOMXPath($dom); |
| 381 | 382 | ||
| 382 | $rootNamespace = $dom->lookupNamespaceUri($dom->namespaceURI); | 383 | $rootNamespace = $dom->lookupNamespaceUri($dom->namespaceURI); |
| 383 | - $xpath->registerNamespace('x', $rootNamespace); | 384 | + $xpath->registerNamespace('x', $rootNamespace); |
| 384 | $entries = $xpath->query('/x:schema/x:simpleType[@name="motivoDaUrgencia"]/x:restriction/x:enumeration'); | 385 | $entries = $xpath->query('/x:schema/x:simpleType[@name="motivoDaUrgencia"]/x:restriction/x:enumeration'); |
| 385 | 386 | ||
| 386 | $resultado = array(); | 387 | $resultado = array(); |
| @@ -394,16 +395,16 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -394,16 +395,16 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 394 | } | 395 | } |
| 395 | 396 | ||
| 396 | return $resultado; | 397 | return $resultado; |
| 397 | - } | 398 | + } |
| 398 | 399 | ||
| 399 | - public function enviarProcesso($parametros) | 400 | + public function enviarProcesso($parametros) |
| 400 | { | 401 | { |
| 401 | try { | 402 | try { |
| 402 | //error_log("PARAMETROS:" . print_r($parametros, true)); | 403 | //error_log("PARAMETROS:" . print_r($parametros, true)); |
| 403 | - return $this->getObjPenWs()->enviarProcesso($parametros); | 404 | + return $this->getObjPenWs()->enviarProcesso($parametros); |
| 404 | } catch (\SoapFault $fault) { | 405 | } catch (\SoapFault $fault) { |
| 405 | - | ||
| 406 | - | 406 | + |
| 407 | + | ||
| 407 | if (!empty($fault->detail->interoperabilidadeException->codigoErro) && $fault->detail->interoperabilidadeException->codigoErro == '0005') { | 408 | if (!empty($fault->detail->interoperabilidadeException->codigoErro) && $fault->detail->interoperabilidadeException->codigoErro == '0005') { |
| 408 | $mensagem = 'O código mapeado para a unidade ' . utf8_decode($parametros->novoTramiteDeProcesso->processo->documento[0]->produtor->unidade->nome) . ' está incorreto.'; | 409 | $mensagem = 'O código mapeado para a unidade ' . utf8_decode($parametros->novoTramiteDeProcesso->processo->documento[0]->produtor->unidade->nome) . ' está incorreto.'; |
| 409 | } else { | 410 | } else { |
| @@ -416,7 +417,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -416,7 +417,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 416 | 417 | ||
| 417 | } catch (\Exception $e) { | 418 | } catch (\Exception $e) { |
| 418 | throw new InfraException("Error Processing Request", $e); | 419 | throw new InfraException("Error Processing Request", $e); |
| 419 | - } | 420 | + } |
| 420 | } | 421 | } |
| 421 | 422 | ||
| 422 | public function listarPendencias($bolTodasPendencias) | 423 | public function listarPendencias($bolTodasPendencias) |
| @@ -427,7 +428,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -427,7 +428,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 427 | try { | 428 | try { |
| 428 | $parametros = new stdClass(); | 429 | $parametros = new stdClass(); |
| 429 | $parametros->filtroDePendencias = new stdClass(); | 430 | $parametros->filtroDePendencias = new stdClass(); |
| 430 | - $parametros->filtroDePendencias->todasAsPendencias = $bolTodasPendencias; | 431 | + $parametros->filtroDePendencias->todasAsPendencias = $bolTodasPendencias; |
| 431 | $result = $this->getObjPenWs()->listarPendencias($parametros); | 432 | $result = $this->getObjPenWs()->listarPendencias($parametros); |
| 432 | 433 | ||
| 433 | if(isset($result->listaDePendencias->IDT)){ | 434 | if(isset($result->listaDePendencias->IDT)){ |
| @@ -441,7 +442,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -441,7 +442,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 441 | $item->setNumIdentificacaoTramite($idt->_); | 442 | $item->setNumIdentificacaoTramite($idt->_); |
| 442 | $item->setStrStatus($idt->status); | 443 | $item->setStrStatus($idt->status); |
| 443 | $arrObjPendenciaDTO[] = $item; | 444 | $arrObjPendenciaDTO[] = $item; |
| 444 | - } | 445 | + } |
| 445 | } | 446 | } |
| 446 | } catch (\SoapFault $fault) { | 447 | } catch (\SoapFault $fault) { |
| 447 | $mensagem = $this->tratarFalhaWebService($fault); | 448 | $mensagem = $this->tratarFalhaWebService($fault); |
| @@ -451,13 +452,13 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -451,13 +452,13 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 451 | } | 452 | } |
| 452 | 453 | ||
| 453 | return $arrObjPendenciaDTO; | 454 | return $arrObjPendenciaDTO; |
| 454 | - } | 455 | + } |
| 455 | 456 | ||
| 456 | //TODO: Tratar cada um dos possíveis erros gerados pelos serviços de integração do PEN | 457 | //TODO: Tratar cada um dos possíveis erros gerados pelos serviços de integração do PEN |
| 457 | private function tratarFalhaWebService(SoapFault $fault) | 458 | private function tratarFalhaWebService(SoapFault $fault) |
| 458 | { | 459 | { |
| 459 | error_log('$e->faultcode:' . $fault->faultcode); | 460 | error_log('$e->faultcode:' . $fault->faultcode); |
| 460 | - error_log('$e->detail:' . print_r($fault->detail, true)); | 461 | + error_log('$e->detail:' . print_r($fault->detail, true)); |
| 461 | 462 | ||
| 462 | $mensagem = $fault->getMessage(); | 463 | $mensagem = $fault->getMessage(); |
| 463 | if(isset($fault->detail->interoperabilidadeException)){ | 464 | if(isset($fault->detail->interoperabilidadeException)){ |
| @@ -477,13 +478,13 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -477,13 +478,13 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 477 | return $mensagem; | 478 | return $mensagem; |
| 478 | } | 479 | } |
| 479 | 480 | ||
| 480 | - public function construirCabecalho($strNumeroRegistro = null, $idRepositorioOrigem = 0, $idUnidadeOrigem = 0, $idRepositorioDestino = 0, | 481 | + public function construirCabecalho($strNumeroRegistro = null, $idRepositorioOrigem = 0, $idUnidadeOrigem = 0, $idRepositorioDestino = 0, |
| 481 | $idUnidadeDestino = 0, $urgente = false, $motivoUrgencia = 0, $enviarTodosDocumentos = false) | 482 | $idUnidadeDestino = 0, $urgente = false, $motivoUrgencia = 0, $enviarTodosDocumentos = false) |
| 482 | { | 483 | { |
| 483 | $cabecalho = new stdClass(); | 484 | $cabecalho = new stdClass(); |
| 484 | 485 | ||
| 485 | if(isset($strNumeroRegistro)) { | 486 | if(isset($strNumeroRegistro)) { |
| 486 | - $cabecalho->NRE = $strNumeroRegistro; | 487 | + $cabecalho->NRE = $strNumeroRegistro; |
| 487 | } | 488 | } |
| 488 | 489 | ||
| 489 | $cabecalho->remetente = new stdClass(); | 490 | $cabecalho->remetente = new stdClass(); |
| @@ -506,7 +507,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -506,7 +507,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 506 | try { | 507 | try { |
| 507 | //error_log('$this->getObjPenWs()->enviarComponenteDigital($parametros)'); | 508 | //error_log('$this->getObjPenWs()->enviarComponenteDigital($parametros)'); |
| 508 | //error_log("||||||||||||||||||" . print_r($parametros, true)); | 509 | //error_log("||||||||||||||||||" . print_r($parametros, true)); |
| 509 | - return $this->getObjPenWs()->enviarComponenteDigital($parametros); | 510 | + return $this->getObjPenWs()->enviarComponenteDigital($parametros); |
| 510 | 511 | ||
| 511 | } catch (\SoapFault $fault) { | 512 | } catch (\SoapFault $fault) { |
| 512 | //error_log("REQUEST:" . $this->getObjPenWs()->__getLastRequest()); | 513 | //error_log("REQUEST:" . $this->getObjPenWs()->__getLastRequest()); |
| @@ -521,7 +522,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -521,7 +522,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 521 | } catch (\Exception $e) { | 522 | } catch (\Exception $e) { |
| 522 | 523 | ||
| 523 | throw new InfraException("Error Processing Request", $e); | 524 | throw new InfraException("Error Processing Request", $e); |
| 524 | - } | 525 | + } |
| 525 | 526 | ||
| 526 | } | 527 | } |
| 527 | 528 | ||
| @@ -529,9 +530,9 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -529,9 +530,9 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 529 | public function solicitarMetadados($parNumIdentificacaoTramite) { | 530 | public function solicitarMetadados($parNumIdentificacaoTramite) { |
| 530 | 531 | ||
| 531 | try | 532 | try |
| 532 | - { | 533 | + { |
| 533 | $parametros = new stdClass(); | 534 | $parametros = new stdClass(); |
| 534 | - $parametros->IDT = $parNumIdentificacaoTramite; | 535 | + $parametros->IDT = $parNumIdentificacaoTramite; |
| 535 | return $this->getObjPenWs()->solicitarMetadados($parametros); | 536 | return $this->getObjPenWs()->solicitarMetadados($parametros); |
| 536 | } catch (\SoapFault $fault) { | 537 | } catch (\SoapFault $fault) { |
| 537 | $mensagem = $this->tratarFalhaWebService($fault); | 538 | $mensagem = $this->tratarFalhaWebService($fault); |
| @@ -542,10 +543,10 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -542,10 +543,10 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 542 | 543 | ||
| 543 | } catch (\Exception $e) { | 544 | } catch (\Exception $e) { |
| 544 | throw new InfraException("Error Processing Request", $e); | 545 | throw new InfraException("Error Processing Request", $e); |
| 545 | - } | ||
| 546 | - } | 546 | + } |
| 547 | + } | ||
| 547 | 548 | ||
| 548 | - public static function converterDataWebService($dataHoraSEI) | 549 | + public static function converterDataWebService($dataHoraSEI) |
| 549 | { | 550 | { |
| 550 | $resultado = ''; | 551 | $resultado = ''; |
| 551 | if(isset($dataHoraSEI)){ | 552 | if(isset($dataHoraSEI)){ |
| @@ -556,7 +557,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -556,7 +557,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 556 | return $resultado; | 557 | return $resultado; |
| 557 | } | 558 | } |
| 558 | 559 | ||
| 559 | - public static function converterDataSEI($dataHoraWebService) | 560 | + public static function converterDataSEI($dataHoraWebService) |
| 560 | { | 561 | { |
| 561 | $resultado = null; | 562 | $resultado = null; |
| 562 | if(isset($dataHoraWebService)){ | 563 | if(isset($dataHoraWebService)){ |
| @@ -566,7 +567,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -566,7 +567,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 566 | 567 | ||
| 567 | return $resultado; | 568 | return $resultado; |
| 568 | } | 569 | } |
| 569 | - | 570 | + |
| 570 | public static function obterIdTarefaModulo($strIdTarefaModulo) | 571 | public static function obterIdTarefaModulo($strIdTarefaModulo) |
| 571 | { | 572 | { |
| 572 | $objTarefaDTO = new TarefaDTO(); | 573 | $objTarefaDTO = new TarefaDTO(); |
| @@ -581,25 +582,25 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -581,25 +582,25 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 581 | }else{ | 582 | }else{ |
| 582 | return false; | 583 | return false; |
| 583 | } | 584 | } |
| 584 | - | 585 | + |
| 585 | } | 586 | } |
| 586 | 587 | ||
| 587 | public function cadastrarTramiteDeProcesso($parDblIdProcedimento, $parStrNumeroRegistro, $parNumIdentificacaoTramite, $parDthRegistroTramite, $parObjProcesso, $parNumTicketComponentesDigitais = null, $parObjComponentesDigitaisSolicitados = null) | 588 | public function cadastrarTramiteDeProcesso($parDblIdProcedimento, $parStrNumeroRegistro, $parNumIdentificacaoTramite, $parDthRegistroTramite, $parObjProcesso, $parNumTicketComponentesDigitais = null, $parObjComponentesDigitaisSolicitados = null) |
| 588 | { | 589 | { |
| 589 | if(!isset($parDblIdProcedimento) || $parDblIdProcedimento == 0) { | 590 | if(!isset($parDblIdProcedimento) || $parDblIdProcedimento == 0) { |
| 590 | - throw new InfraException('Parâmetro $parDblIdProcedimento não informado.'); | 591 | + throw new InfraException('Parâmetro $parDblIdProcedimento não informado.'); |
| 591 | } | 592 | } |
| 592 | 593 | ||
| 593 | if(!isset($parStrNumeroRegistro)) { | 594 | if(!isset($parStrNumeroRegistro)) { |
| 594 | - throw new InfraException('Parâmetro $parStrNumeroRegistro não informado.'); | 595 | + throw new InfraException('Parâmetro $parStrNumeroRegistro não informado.'); |
| 595 | } | 596 | } |
| 596 | 597 | ||
| 597 | if(!isset($parNumIdentificacaoTramite) || $parNumIdentificacaoTramite == 0) { | 598 | if(!isset($parNumIdentificacaoTramite) || $parNumIdentificacaoTramite == 0) { |
| 598 | - throw new InfraException('Parâmetro $parStrNumeroRegistro não informado.'); | 599 | + throw new InfraException('Parâmetro $parStrNumeroRegistro não informado.'); |
| 599 | } | 600 | } |
| 600 | 601 | ||
| 601 | if(!isset($parObjProcesso)) { | 602 | if(!isset($parObjProcesso)) { |
| 602 | - throw new InfraException('Parâmetro $objProcesso não informado.'); | 603 | + throw new InfraException('Parâmetro $objProcesso não informado.'); |
| 603 | } | 604 | } |
| 604 | 605 | ||
| 605 | //Monta dados do processo eletrônico | 606 | //Monta dados do processo eletrônico |
| @@ -607,12 +608,12 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -607,12 +608,12 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 607 | $objProcessoEletronicoDTO->setStrNumeroRegistro($parStrNumeroRegistro); | 608 | $objProcessoEletronicoDTO->setStrNumeroRegistro($parStrNumeroRegistro); |
| 608 | $objProcessoEletronicoDTO->setDblIdProcedimento($parDblIdProcedimento); | 609 | $objProcessoEletronicoDTO->setDblIdProcedimento($parDblIdProcedimento); |
| 609 | 610 | ||
| 610 | - //Montar dados dos procedimentos apensados | 611 | + //Montar dados dos procedimentos apensados |
| 611 | if(isset($parObjProcesso->processoApensado)){ | 612 | if(isset($parObjProcesso->processoApensado)){ |
| 612 | if(!is_array($parObjProcesso->processoApensado)){ | 613 | if(!is_array($parObjProcesso->processoApensado)){ |
| 613 | $parObjProcesso->processoApensado = array($parObjProcesso->processoApensado); | 614 | $parObjProcesso->processoApensado = array($parObjProcesso->processoApensado); |
| 614 | } | 615 | } |
| 615 | - | 616 | + |
| 616 | $arrObjRelProcessoEletronicoApensadoDTO = array(); | 617 | $arrObjRelProcessoEletronicoApensadoDTO = array(); |
| 617 | $objRelProcessoEletronicoApensadoDTO = null; | 618 | $objRelProcessoEletronicoApensadoDTO = null; |
| 618 | foreach ($parObjProcesso->processoApensado as $objProcessoApensado) { | 619 | foreach ($parObjProcesso->processoApensado as $objProcessoApensado) { |
| @@ -631,14 +632,14 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -631,14 +632,14 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 631 | $objTramiteDTO->setStrNumeroRegistro($parStrNumeroRegistro); | 632 | $objTramiteDTO->setStrNumeroRegistro($parStrNumeroRegistro); |
| 632 | $objTramiteDTO->setNumIdTramite($parNumIdentificacaoTramite); | 633 | $objTramiteDTO->setNumIdTramite($parNumIdentificacaoTramite); |
| 633 | $objTramiteDTO->setNumTicketEnvioComponentes($parNumTicketComponentesDigitais); | 634 | $objTramiteDTO->setNumTicketEnvioComponentes($parNumTicketComponentesDigitais); |
| 634 | - $objTramiteDTO->setDthRegistro($this->converterDataSEI($parDthRegistroTramite)); | 635 | + $objTramiteDTO->setDthRegistro($this->converterDataSEI($parDthRegistroTramite)); |
| 635 | $objTramiteDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); | 636 | $objTramiteDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); |
| 636 | $objTramiteDTO->setNumIdUsuario(SessaoSEI::getInstance()->getNumIdUsuario()); | 637 | $objTramiteDTO->setNumIdUsuario(SessaoSEI::getInstance()->getNumIdUsuario()); |
| 637 | $objProcessoEletronicoDTO->setArrObjTramiteDTO(array($objTramiteDTO)); | 638 | $objProcessoEletronicoDTO->setArrObjTramiteDTO(array($objTramiteDTO)); |
| 638 | 639 | ||
| 639 | //Monta dados dos componentes digitais | 640 | //Monta dados dos componentes digitais |
| 640 | $arrObjComponenteDigitalDTO = $this->montarDadosComponenteDigital($parStrNumeroRegistro, $parNumIdentificacaoTramite, $parObjProcesso, $parObjComponentesDigitaisSolicitados); | 641 | $arrObjComponenteDigitalDTO = $this->montarDadosComponenteDigital($parStrNumeroRegistro, $parNumIdentificacaoTramite, $parObjProcesso, $parObjComponentesDigitaisSolicitados); |
| 641 | - | 642 | + |
| 642 | $objTramiteDTO->setArrObjComponenteDigitalDTO($arrObjComponenteDigitalDTO); | 643 | $objTramiteDTO->setArrObjComponenteDigitalDTO($arrObjComponenteDigitalDTO); |
| 643 | $objProcessoEletronicoDTO = $this->cadastrarTramiteDeProcessoInterno($objProcessoEletronicoDTO); | 644 | $objProcessoEletronicoDTO = $this->cadastrarTramiteDeProcessoInterno($objProcessoEletronicoDTO); |
| 644 | 645 | ||
| @@ -650,11 +651,11 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -650,11 +651,11 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 650 | protected function cadastrarTramiteDeProcessoInternoControlado(ProcessoEletronicoDTO $parObjProcessoEletronicoDTO) { | 651 | protected function cadastrarTramiteDeProcessoInternoControlado(ProcessoEletronicoDTO $parObjProcessoEletronicoDTO) { |
| 651 | 652 | ||
| 652 | if(!isset($parObjProcessoEletronicoDTO)) { | 653 | if(!isset($parObjProcessoEletronicoDTO)) { |
| 653 | - throw new InfraException('Parâmetro $parObjProcessoEletronicoDTO não informado.'); | 654 | + throw new InfraException('Parâmetro $parObjProcessoEletronicoDTO não informado.'); |
| 654 | } | 655 | } |
| 655 | 656 | ||
| 656 | $idProcedimento = $parObjProcessoEletronicoDTO->getDblIdProcedimento(); | 657 | $idProcedimento = $parObjProcessoEletronicoDTO->getDblIdProcedimento(); |
| 657 | - | 658 | + |
| 658 | //Registra os dados do processo eletrônico | 659 | //Registra os dados do processo eletrônico |
| 659 | //TODO: Revisar a forma como o barramento tratar o NRE para os processos apensados | 660 | //TODO: Revisar a forma como o barramento tratar o NRE para os processos apensados |
| 660 | $objProcessoEletronicoDTOFiltro = new ProcessoEletronicoDTO(); | 661 | $objProcessoEletronicoDTOFiltro = new ProcessoEletronicoDTO(); |
| @@ -667,7 +668,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -667,7 +668,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 667 | $objProcessoEletronicoDTO = $objProcessoEletronicoBD->consultar($objProcessoEletronicoDTOFiltro); | 668 | $objProcessoEletronicoDTO = $objProcessoEletronicoBD->consultar($objProcessoEletronicoDTOFiltro); |
| 668 | 669 | ||
| 669 | if(empty($objProcessoEletronicoDTO)) { | 670 | if(empty($objProcessoEletronicoDTO)) { |
| 670 | - | 671 | + |
| 671 | $objProcessoEletronicoDTO = $objProcessoEletronicoBD->cadastrar($objProcessoEletronicoDTOFiltro); | 672 | $objProcessoEletronicoDTO = $objProcessoEletronicoBD->cadastrar($objProcessoEletronicoDTOFiltro); |
| 672 | } | 673 | } |
| 673 | 674 | ||
| @@ -675,20 +676,20 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -675,20 +676,20 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 675 | if($parObjProcessoEletronicoDTO->isSetArrObjRelProcessoEletronicoApensado()) { | 676 | if($parObjProcessoEletronicoDTO->isSetArrObjRelProcessoEletronicoApensado()) { |
| 676 | 677 | ||
| 677 | $objRelProcessoEletronicoApensadoBD = new RelProcessoEletronicoApensadoBD($this->getObjInfraIBanco()); | 678 | $objRelProcessoEletronicoApensadoBD = new RelProcessoEletronicoApensadoBD($this->getObjInfraIBanco()); |
| 678 | - | 679 | + |
| 679 | foreach ($parObjProcessoEletronicoDTO->getArrObjRelProcessoEletronicoApensado() as $objRelProcessoEletronicoApensadoDTOFiltro) { | 680 | foreach ($parObjProcessoEletronicoDTO->getArrObjRelProcessoEletronicoApensado() as $objRelProcessoEletronicoApensadoDTOFiltro) { |
| 680 | - | 681 | + |
| 681 | if($objRelProcessoEletronicoApensadoBD->contar($objRelProcessoEletronicoApensadoDTOFiltro) < 1){ | 682 | if($objRelProcessoEletronicoApensadoBD->contar($objRelProcessoEletronicoApensadoDTOFiltro) < 1){ |
| 682 | - | ||
| 683 | - $objRelProcessoEletronicoApensadoBD->cadastrar($objRelProcessoEletronicoApensadoDTOFiltro); | 683 | + |
| 684 | + $objRelProcessoEletronicoApensadoBD->cadastrar($objRelProcessoEletronicoApensadoDTOFiltro); | ||
| 684 | } | 685 | } |
| 685 | } | 686 | } |
| 686 | } | 687 | } |
| 687 | 688 | ||
| 688 | //Registrar informações sobre o trâmite do processo | 689 | //Registrar informações sobre o trâmite do processo |
| 689 | $arrObjTramiteDTO = $parObjProcessoEletronicoDTO->getArrObjTramiteDTO(); | 690 | $arrObjTramiteDTO = $parObjProcessoEletronicoDTO->getArrObjTramiteDTO(); |
| 690 | - $parObjTramiteDTO = $arrObjTramiteDTO[0]; | ||
| 691 | - | 691 | + $parObjTramiteDTO = $arrObjTramiteDTO[0]; |
| 692 | + | ||
| 692 | $objTramiteDTO = new TramiteDTO(); | 693 | $objTramiteDTO = new TramiteDTO(); |
| 693 | $objTramiteDTO->retNumIdTramite(); | 694 | $objTramiteDTO->retNumIdTramite(); |
| 694 | $objTramiteDTO->setStrNumeroRegistro($parObjTramiteDTO->getStrNumeroRegistro()); | 695 | $objTramiteDTO->setStrNumeroRegistro($parObjTramiteDTO->getStrNumeroRegistro()); |
| @@ -699,57 +700,57 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -699,57 +700,57 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 699 | 700 | ||
| 700 | if($objTramiteDTO == null) { | 701 | if($objTramiteDTO == null) { |
| 701 | $objTramiteDTO = $objTramiteBD->cadastrar($parObjTramiteDTO); | 702 | $objTramiteDTO = $objTramiteBD->cadastrar($parObjTramiteDTO); |
| 702 | - } | 703 | + } |
| 703 | 704 | ||
| 704 | $objProcessoEletronicoDTO->setArrObjTramiteDTO(array($objTramiteDTO)); | 705 | $objProcessoEletronicoDTO->setArrObjTramiteDTO(array($objTramiteDTO)); |
| 705 | 706 | ||
| 706 | //Registra informações sobre o componente digital do documento | 707 | //Registra informações sobre o componente digital do documento |
| 707 | $arrObjComponenteDigitalDTO = array(); | 708 | $arrObjComponenteDigitalDTO = array(); |
| 708 | $objComponenteDigitalBD = new ComponenteDigitalBD($this->getObjInfraIBanco()); | 709 | $objComponenteDigitalBD = new ComponenteDigitalBD($this->getObjInfraIBanco()); |
| 709 | - | 710 | + |
| 710 | $numOrdem = 1; | 711 | $numOrdem = 1; |
| 711 | - | 712 | + |
| 712 | foreach ($parObjTramiteDTO->getArrObjComponenteDigitalDTO() as $objComponenteDigitalDTO) { | 713 | foreach ($parObjTramiteDTO->getArrObjComponenteDigitalDTO() as $objComponenteDigitalDTO) { |
| 713 | - | 714 | + |
| 714 | $objComponenteDigitalDTOFiltro = new ComponenteDigitalDTO(); | 715 | $objComponenteDigitalDTOFiltro = new ComponenteDigitalDTO(); |
| 715 | - | 716 | + |
| 716 | $objComponenteDigitalDTOFiltro->setStrNumeroRegistro($objComponenteDigitalDTO->getStrNumeroRegistro()); | 717 | $objComponenteDigitalDTOFiltro->setStrNumeroRegistro($objComponenteDigitalDTO->getStrNumeroRegistro()); |
| 717 | - $objComponenteDigitalDTOFiltro->setDblIdProcedimento($objComponenteDigitalDTO->getDblIdProcedimento()); | ||
| 718 | - $objComponenteDigitalDTOFiltro->setDblIdDocumento($objComponenteDigitalDTO->getDblIdDocumento()); | ||
| 719 | - | 718 | + $objComponenteDigitalDTOFiltro->setDblIdProcedimento($objComponenteDigitalDTO->getDblIdProcedimento()); |
| 719 | + $objComponenteDigitalDTOFiltro->setDblIdDocumento($objComponenteDigitalDTO->getDblIdDocumento()); | ||
| 720 | + | ||
| 720 | if($objComponenteDigitalBD->contar($objComponenteDigitalDTOFiltro) > 0){ | 721 | if($objComponenteDigitalBD->contar($objComponenteDigitalDTOFiltro) > 0){ |
| 721 | $numOrdem++; | 722 | $numOrdem++; |
| 722 | } | 723 | } |
| 723 | - | 724 | + |
| 724 | } | 725 | } |
| 725 | - | 726 | + |
| 726 | foreach ($parObjTramiteDTO->getArrObjComponenteDigitalDTO() as $objComponenteDigitalDTO) { | 727 | foreach ($parObjTramiteDTO->getArrObjComponenteDigitalDTO() as $objComponenteDigitalDTO) { |
| 727 | - | 728 | + |
| 728 | //Verifica se o documento foi inserido pelo trâmite atual | 729 | //Verifica se o documento foi inserido pelo trâmite atual |
| 729 | if($objComponenteDigitalDTO->getDblIdDocumento() != null){ | 730 | if($objComponenteDigitalDTO->getDblIdDocumento() != null){ |
| 730 | - | 731 | + |
| 731 | $objComponenteDigitalDTO->setDblIdProcedimento($idProcedimento); | 732 | $objComponenteDigitalDTO->setDblIdProcedimento($idProcedimento); |
| 732 | - | 733 | + |
| 733 | $objComponenteDigitalDTOFiltro = new ComponenteDigitalDTO(); | 734 | $objComponenteDigitalDTOFiltro = new ComponenteDigitalDTO(); |
| 734 | - | 735 | + |
| 735 | $objComponenteDigitalDTOFiltro->setStrNumeroRegistro($objComponenteDigitalDTO->getStrNumeroRegistro()); | 736 | $objComponenteDigitalDTOFiltro->setStrNumeroRegistro($objComponenteDigitalDTO->getStrNumeroRegistro()); |
| 736 | - $objComponenteDigitalDTOFiltro->setDblIdProcedimento($objComponenteDigitalDTO->getDblIdProcedimento()); | ||
| 737 | - $objComponenteDigitalDTOFiltro->setDblIdDocumento($objComponenteDigitalDTO->getDblIdDocumento()); | ||
| 738 | - | 737 | + $objComponenteDigitalDTOFiltro->setDblIdProcedimento($objComponenteDigitalDTO->getDblIdProcedimento()); |
| 738 | + $objComponenteDigitalDTOFiltro->setDblIdDocumento($objComponenteDigitalDTO->getDblIdDocumento()); | ||
| 739 | + | ||
| 739 | if($objComponenteDigitalBD->contar($objComponenteDigitalDTOFiltro) < 1){ | 740 | if($objComponenteDigitalBD->contar($objComponenteDigitalDTOFiltro) < 1){ |
| 740 | - | 741 | + |
| 741 | $objComponenteDigitalDTO->setNumOrdem($numOrdem); | 742 | $objComponenteDigitalDTO->setNumOrdem($numOrdem); |
| 742 | $objComponenteDigitalDTO->unSetStrDadosComplementares(); | 743 | $objComponenteDigitalDTO->unSetStrDadosComplementares(); |
| 743 | $objComponenteDigitalDTO = $objComponenteDigitalBD->cadastrar($objComponenteDigitalDTO); | 744 | $objComponenteDigitalDTO = $objComponenteDigitalBD->cadastrar($objComponenteDigitalDTO); |
| 744 | $numOrdem++; | 745 | $numOrdem++; |
| 745 | } | 746 | } |
| 746 | else { | 747 | else { |
| 747 | - | 748 | + |
| 748 | //Verifica se foi setado o envio | 749 | //Verifica se foi setado o envio |
| 749 | if(!$objComponenteDigitalDTO->isSetStrSinEnviar()){ | 750 | if(!$objComponenteDigitalDTO->isSetStrSinEnviar()){ |
| 750 | $objComponenteDigitalDTO->setStrSinEnviar('N'); | 751 | $objComponenteDigitalDTO->setStrSinEnviar('N'); |
| 751 | } | 752 | } |
| 752 | - | 753 | + |
| 753 | // Muda a ID do tramite e o arquivo pode ser enviado | 754 | // Muda a ID do tramite e o arquivo pode ser enviado |
| 754 | $objComponenteDigitalBD->alterar($objComponenteDigitalDTO); | 755 | $objComponenteDigitalBD->alterar($objComponenteDigitalDTO); |
| 755 | } | 756 | } |
| @@ -765,17 +766,17 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -765,17 +766,17 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 765 | 766 | ||
| 766 | return $objProcessoEletronicoDTO; | 767 | return $objProcessoEletronicoDTO; |
| 767 | } | 768 | } |
| 768 | - | 769 | + |
| 769 | /** | 770 | /** |
| 770 | * Retorna o hash do objecto do solicitarMetadadosResponse | 771 | * Retorna o hash do objecto do solicitarMetadadosResponse |
| 771 | - * | 772 | + * |
| 772 | * @param object $objMeta tem que ser o componenteDigital->hash | 773 | * @param object $objMeta tem que ser o componenteDigital->hash |
| 773 | * @return string | 774 | * @return string |
| 774 | */ | 775 | */ |
| 775 | public static function getHashFromMetaDados($objMeta){ | 776 | public static function getHashFromMetaDados($objMeta){ |
| 776 | 777 | ||
| 777 | $strHashConteudo = ''; | 778 | $strHashConteudo = ''; |
| 778 | - | 779 | + |
| 779 | if (isset($objMeta)) { | 780 | if (isset($objMeta)) { |
| 780 | $matches = array(); | 781 | $matches = array(); |
| 781 | $strHashConteudo = (isset($objMeta->enc_value)) ? $objMeta->enc_value : $objMeta->_; | 782 | $strHashConteudo = (isset($objMeta->enc_value)) ? $objMeta->enc_value : $objMeta->_; |
| @@ -787,16 +788,16 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -787,16 +788,16 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 787 | 788 | ||
| 788 | return $strHashConteudo; | 789 | return $strHashConteudo; |
| 789 | } | 790 | } |
| 790 | - | ||
| 791 | - private function montarDadosComponenteDigital($parStrNumeroRegistro, $parNumIdentificacaoTramite, $parObjProcesso, $parObjComponentesDigitaisSolicitados) | 791 | + |
| 792 | + private function montarDadosComponenteDigital($parStrNumeroRegistro, $parNumIdentificacaoTramite, $parObjProcesso, $parObjComponentesDigitaisSolicitados) | ||
| 792 | { | 793 | { |
| 793 | //Monta dados dos componentes digitais | 794 | //Monta dados dos componentes digitais |
| 794 | $arrObjComponenteDigitalDTO = array(); | 795 | $arrObjComponenteDigitalDTO = array(); |
| 795 | if(!is_array($parObjProcesso->documento)) { | 796 | if(!is_array($parObjProcesso->documento)) { |
| 796 | $parObjProcesso->documento = array($parObjProcesso->documento); | 797 | $parObjProcesso->documento = array($parObjProcesso->documento); |
| 797 | } | 798 | } |
| 798 | - | ||
| 799 | - foreach ($parObjProcesso->documento as $objDocumento) { | 799 | + |
| 800 | + foreach ($parObjProcesso->documento as $objDocumento) { | ||
| 800 | $objComponenteDigitalDTO = new ComponenteDigitalDTO(); | 801 | $objComponenteDigitalDTO = new ComponenteDigitalDTO(); |
| 801 | $objComponenteDigitalDTO->setStrNumeroRegistro($parStrNumeroRegistro); | 802 | $objComponenteDigitalDTO->setStrNumeroRegistro($parStrNumeroRegistro); |
| 802 | $objComponenteDigitalDTO->setDblIdProcedimento($parObjProcesso->idProcedimentoSEI); //TODO: Error utilizar idProcedimentoSEI devido processos apensados | 803 | $objComponenteDigitalDTO->setDblIdProcedimento($parObjProcesso->idProcedimentoSEI); //TODO: Error utilizar idProcedimentoSEI devido processos apensados |
| @@ -807,12 +808,12 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -807,12 +808,12 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 807 | 808 | ||
| 808 | //Por enquanto, considera que o documento possui apenas um componente digital | 809 | //Por enquanto, considera que o documento possui apenas um componente digital |
| 809 | if(is_array($objDocumento->componenteDigital) && count($objDocumento->componenteDigital) != 1) { | 810 | if(is_array($objDocumento->componenteDigital) && count($objDocumento->componenteDigital) != 1) { |
| 810 | - throw new InfraException("Erro processando componentes digitais do processo " . $parObjProcesso->protocolo . "\n Somente é permitido o recebimento de documentos com apenas um Componente Digital."); | 811 | + throw new InfraException("Erro processando componentes digitais do processo " . $parObjProcesso->protocolo . "\n Somente é permitido o recebimento de documentos com apenas um Componente Digital."); |
| 811 | } | 812 | } |
| 812 | 813 | ||
| 813 | $objComponenteDigital = $objDocumento->componenteDigital; | 814 | $objComponenteDigital = $objDocumento->componenteDigital; |
| 814 | $objComponenteDigitalDTO->setStrNome($objComponenteDigital->nome); | 815 | $objComponenteDigitalDTO->setStrNome($objComponenteDigital->nome); |
| 815 | - | 816 | + |
| 816 | $strHashConteudo = static::getHashFromMetaDados($objComponenteDigital->hash); | 817 | $strHashConteudo = static::getHashFromMetaDados($objComponenteDigital->hash); |
| 817 | 818 | ||
| 818 | $objComponenteDigitalDTO->setStrHashConteudo($strHashConteudo); | 819 | $objComponenteDigitalDTO->setStrHashConteudo($strHashConteudo); |
| @@ -820,8 +821,8 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -820,8 +821,8 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 820 | $objComponenteDigitalDTO->setStrTipoConteudo($objComponenteDigital->tipoDeConteudo); | 821 | $objComponenteDigitalDTO->setStrTipoConteudo($objComponenteDigital->tipoDeConteudo); |
| 821 | $objComponenteDigitalDTO->setStrMimeType($objComponenteDigital->mimeType); | 822 | $objComponenteDigitalDTO->setStrMimeType($objComponenteDigital->mimeType); |
| 822 | $objComponenteDigitalDTO->setStrDadosComplementares($objComponenteDigital->dadosComplementaresDoTipoDeArquivo); | 823 | $objComponenteDigitalDTO->setStrDadosComplementares($objComponenteDigital->dadosComplementaresDoTipoDeArquivo); |
| 823 | - | ||
| 824 | - //Registrar componente digital necessita ser enviado pelo trâmite espefífico //TODO: Teste $parObjComponentesDigitaisSolicitados aqui | 824 | + |
| 825 | + //Registrar componente digital necessita ser enviado pelo trâmite espefífico //TODO: Teste $parObjComponentesDigitaisSolicitados aqui | ||
| 825 | if(isset($parObjComponentesDigitaisSolicitados)){ | 826 | if(isset($parObjComponentesDigitaisSolicitados)){ |
| 826 | $arrObjItensSolicitados = is_array($parObjComponentesDigitaisSolicitados->processo) ? $parObjComponentesDigitaisSolicitados->processo : array($parObjComponentesDigitaisSolicitados->processo); | 827 | $arrObjItensSolicitados = is_array($parObjComponentesDigitaisSolicitados->processo) ? $parObjComponentesDigitaisSolicitados->processo : array($parObjComponentesDigitaisSolicitados->processo); |
| 827 | 828 | ||
| @@ -830,16 +831,16 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -830,16 +831,16 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 830 | $objItemSolicitado->hash = is_array($objItemSolicitado->hash) ? $objItemSolicitado->hash : array($objItemSolicitado->hash); | 831 | $objItemSolicitado->hash = is_array($objItemSolicitado->hash) ? $objItemSolicitado->hash : array($objItemSolicitado->hash); |
| 831 | 832 | ||
| 832 | if($objItemSolicitado->protocolo == $objComponenteDigitalDTO->getStrProtocolo() && in_array($strHashConteudo, $objItemSolicitado->hash) && !$objDocumento->retirado) { | 833 | if($objItemSolicitado->protocolo == $objComponenteDigitalDTO->getStrProtocolo() && in_array($strHashConteudo, $objItemSolicitado->hash) && !$objDocumento->retirado) { |
| 833 | - $objComponenteDigitalDTO->setStrSinEnviar("S"); | 834 | + $objComponenteDigitalDTO->setStrSinEnviar("S"); |
| 834 | } | 835 | } |
| 835 | } | 836 | } |
| 836 | - } | 837 | + } |
| 837 | } | 838 | } |
| 838 | 839 | ||
| 839 | //TODO: Avaliar dados do tamanho do documento em bytes salvo na base de dados | 840 | //TODO: Avaliar dados do tamanho do documento em bytes salvo na base de dados |
| 840 | $objComponenteDigitalDTO->setNumTamanho($objComponenteDigital->tamanhoEmBytes); | 841 | $objComponenteDigitalDTO->setNumTamanho($objComponenteDigital->tamanhoEmBytes); |
| 841 | $objComponenteDigitalDTO->setNumIdAnexo($objComponenteDigital->idAnexo); | 842 | $objComponenteDigitalDTO->setNumIdAnexo($objComponenteDigital->idAnexo); |
| 842 | - | 843 | + |
| 843 | $arrObjComponenteDigitalDTO[] = $objComponenteDigitalDTO; | 844 | $arrObjComponenteDigitalDTO[] = $objComponenteDigitalDTO; |
| 844 | } | 845 | } |
| 845 | 846 | ||
| @@ -847,7 +848,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -847,7 +848,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 847 | if(isset($parObjProcesso->processoApensado) && count($parObjProcesso->processoApensado)) { | 848 | if(isset($parObjProcesso->processoApensado) && count($parObjProcesso->processoApensado)) { |
| 848 | foreach ($parObjProcesso->processoApensado as $objProcessoApensado) { | 849 | foreach ($parObjProcesso->processoApensado as $objProcessoApensado) { |
| 849 | $arrObj = $this->montarDadosComponenteDigital($parStrNumeroRegistro, $parNumIdentificacaoTramite, $objProcessoApensado, $parObjComponentesDigitaisSolicitados); | 850 | $arrObj = $this->montarDadosComponenteDigital($parStrNumeroRegistro, $parNumIdentificacaoTramite, $objProcessoApensado, $parObjComponentesDigitaisSolicitados); |
| 850 | - $arrObjComponenteDigitalDTO = array_merge($arrObjComponenteDigitalDTO, $arrObj); | 851 | + $arrObjComponenteDigitalDTO = array_merge($arrObjComponenteDigitalDTO, $arrObj); |
| 851 | } | 852 | } |
| 852 | } | 853 | } |
| 853 | 854 | ||
| @@ -855,16 +856,16 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -855,16 +856,16 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 855 | } | 856 | } |
| 856 | 857 | ||
| 857 | 858 | ||
| 858 | - public function receberComponenteDigital($parNumIdentificacaoTramite, $parStrHashComponenteDigital, $parStrProtocolo) | 859 | + public function receberComponenteDigital($parNumIdentificacaoTramite, $parStrHashComponenteDigital, $parStrProtocolo) |
| 859 | { | 860 | { |
| 860 | try | 861 | try |
| 861 | - { | 862 | + { |
| 862 | $parametros = new stdClass(); | 863 | $parametros = new stdClass(); |
| 863 | $parametros->parametrosParaRecebimentoDeComponenteDigital = new stdClass(); | 864 | $parametros->parametrosParaRecebimentoDeComponenteDigital = new stdClass(); |
| 864 | $parametros->parametrosParaRecebimentoDeComponenteDigital->identificacaoDoComponenteDigital = new stdClass(); | 865 | $parametros->parametrosParaRecebimentoDeComponenteDigital->identificacaoDoComponenteDigital = new stdClass(); |
| 865 | $parametros->parametrosParaRecebimentoDeComponenteDigital->identificacaoDoComponenteDigital->IDT = $parNumIdentificacaoTramite; | 866 | $parametros->parametrosParaRecebimentoDeComponenteDigital->identificacaoDoComponenteDigital->IDT = $parNumIdentificacaoTramite; |
| 866 | $parametros->parametrosParaRecebimentoDeComponenteDigital->identificacaoDoComponenteDigital->protocolo = $parStrProtocolo; | 867 | $parametros->parametrosParaRecebimentoDeComponenteDigital->identificacaoDoComponenteDigital->protocolo = $parStrProtocolo; |
| 867 | - $parametros->parametrosParaRecebimentoDeComponenteDigital->identificacaoDoComponenteDigital->hashDoComponenteDigital = $parStrHashComponenteDigital; | 868 | + $parametros->parametrosParaRecebimentoDeComponenteDigital->identificacaoDoComponenteDigital->hashDoComponenteDigital = $parStrHashComponenteDigital; |
| 868 | 869 | ||
| 869 | return $this->getObjPenWs()->receberComponenteDigital($parametros); | 870 | return $this->getObjPenWs()->receberComponenteDigital($parametros); |
| 870 | 871 | ||
| @@ -880,40 +881,40 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -880,40 +881,40 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 880 | 881 | ||
| 881 | } catch (\Exception $e) { | 882 | } catch (\Exception $e) { |
| 882 | throw new InfraException("Error Processing Request", $e); | 883 | throw new InfraException("Error Processing Request", $e); |
| 883 | - } | ||
| 884 | - } | 884 | + } |
| 885 | + } | ||
| 885 | 886 | ||
| 886 | - | ||
| 887 | 887 | ||
| 888 | - public function consultarTramites($parNumIdTramite = null, $parNumeroRegistro = null, $parNumeroUnidadeRemetente = null, $parNumeroUnidadeDestino = null, $parProtocolo = null, $parNumeroRepositorioEstruturas = null) | 888 | + |
| 889 | + public function consultarTramites($parNumIdTramite = null, $parNumeroRegistro = null, $parNumeroUnidadeRemetente = null, $parNumeroUnidadeDestino = null, $parProtocolo = null, $parNumeroRepositorioEstruturas = null) | ||
| 889 | { | 890 | { |
| 890 | try | 891 | try |
| 891 | - { | 892 | + { |
| 892 | $arrObjTramite = array(); | 893 | $arrObjTramite = array(); |
| 893 | $parametro = new stdClass(); | 894 | $parametro = new stdClass(); |
| 894 | $parametro->filtroDeConsultaDeTramites = new stdClass(); | 895 | $parametro->filtroDeConsultaDeTramites = new stdClass(); |
| 895 | $parametro->filtroDeConsultaDeTramites->IDT = $parNumIdTramite; | 896 | $parametro->filtroDeConsultaDeTramites->IDT = $parNumIdTramite; |
| 896 | - | 897 | + |
| 897 | if(!is_null($parNumeroRegistro)){ | 898 | if(!is_null($parNumeroRegistro)){ |
| 898 | $parametro->filtroDeConsultaDeTramites->NRE = $parNumeroRegistro; | 899 | $parametro->filtroDeConsultaDeTramites->NRE = $parNumeroRegistro; |
| 899 | } | 900 | } |
| 900 | - | 901 | + |
| 901 | if(!is_null($parNumeroUnidadeRemetente) && !is_null($parNumeroRepositorioEstruturas)){ | 902 | if(!is_null($parNumeroUnidadeRemetente) && !is_null($parNumeroRepositorioEstruturas)){ |
| 902 | $parametro->filtroDeConsultaDeTramites->remetente = new stdClass(); | 903 | $parametro->filtroDeConsultaDeTramites->remetente = new stdClass(); |
| 903 | $parametro->filtroDeConsultaDeTramites->remetente->identificacaoDoRepositorioDeEstruturas = $parNumeroRepositorioEstruturas; | 904 | $parametro->filtroDeConsultaDeTramites->remetente->identificacaoDoRepositorioDeEstruturas = $parNumeroRepositorioEstruturas; |
| 904 | $parametro->filtroDeConsultaDeTramites->remetente->numeroDeIdentificacaoDaEstrutura = $parNumeroUnidadeRemetente; | 905 | $parametro->filtroDeConsultaDeTramites->remetente->numeroDeIdentificacaoDaEstrutura = $parNumeroUnidadeRemetente; |
| 905 | } | 906 | } |
| 906 | - | 907 | + |
| 907 | if(!is_null($parNumeroUnidadeDestino) && !is_null($parNumeroRepositorioEstruturas)){ | 908 | if(!is_null($parNumeroUnidadeDestino) && !is_null($parNumeroRepositorioEstruturas)){ |
| 908 | $parametro->filtroDeConsultaDeTramites->destinatario = new stdClass(); | 909 | $parametro->filtroDeConsultaDeTramites->destinatario = new stdClass(); |
| 909 | $parametro->filtroDeConsultaDeTramites->destinatario->identificacaoDoRepositorioDeEstruturas = $parNumeroRepositorioEstruturas; | 910 | $parametro->filtroDeConsultaDeTramites->destinatario->identificacaoDoRepositorioDeEstruturas = $parNumeroRepositorioEstruturas; |
| 910 | $parametro->filtroDeConsultaDeTramites->destinatario->numeroDeIdentificacaoDaEstrutura = $parNumeroUnidadeDestino; | 911 | $parametro->filtroDeConsultaDeTramites->destinatario->numeroDeIdentificacaoDaEstrutura = $parNumeroUnidadeDestino; |
| 911 | } | 912 | } |
| 912 | - | 913 | + |
| 913 | if(!is_null($parProtocolo)){ | 914 | if(!is_null($parProtocolo)){ |
| 914 | $parametro->filtroDeConsultaDeTramites->protocolo = $parProtocolo; | 915 | $parametro->filtroDeConsultaDeTramites->protocolo = $parProtocolo; |
| 915 | } | 916 | } |
| 916 | - | 917 | + |
| 917 | $objTramitesEncontrados = $this->getObjPenWs()->consultarTramites($parametro); | 918 | $objTramitesEncontrados = $this->getObjPenWs()->consultarTramites($parametro); |
| 918 | 919 | ||
| 919 | if(isset($objTramitesEncontrados->tramitesEncontrados)) { | 920 | if(isset($objTramitesEncontrados->tramitesEncontrados)) { |
| @@ -932,13 +933,13 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -932,13 +933,13 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 932 | 933 | ||
| 933 | } catch (\Exception $e) { | 934 | } catch (\Exception $e) { |
| 934 | throw new InfraException("Error Processing Request", $e); | 935 | throw new InfraException("Error Processing Request", $e); |
| 935 | - } | ||
| 936 | - } | ||
| 937 | - | ||
| 938 | - public function consultarTramitesProtocolo($parProtocoloFormatado) | 936 | + } |
| 937 | + } | ||
| 938 | + | ||
| 939 | + public function consultarTramitesProtocolo($parProtocoloFormatado) | ||
| 939 | { | 940 | { |
| 940 | try | 941 | try |
| 941 | - { | 942 | + { |
| 942 | $arrObjTramite = array(); | 943 | $arrObjTramite = array(); |
| 943 | $parametro = new stdClass(); | 944 | $parametro = new stdClass(); |
| 944 | $parametro->filtroDeConsultaDeTramites = new stdClass(); | 945 | $parametro->filtroDeConsultaDeTramites = new stdClass(); |
| @@ -962,13 +963,13 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -962,13 +963,13 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 962 | 963 | ||
| 963 | } catch (\Exception $e) { | 964 | } catch (\Exception $e) { |
| 964 | throw new InfraException("Error Processing Request", $e); | 965 | throw new InfraException("Error Processing Request", $e); |
| 965 | - } | 966 | + } |
| 966 | } | 967 | } |
| 967 | - | ||
| 968 | - public function cienciaRecusa($parNumIdTramite) | 968 | + |
| 969 | + public function cienciaRecusa($parNumIdTramite) | ||
| 969 | { | 970 | { |
| 970 | try | 971 | try |
| 971 | - { | 972 | + { |
| 972 | $parametro = new stdClass(); | 973 | $parametro = new stdClass(); |
| 973 | $parametro->IDT = $parNumIdTramite; | 974 | $parametro->IDT = $parNumIdTramite; |
| 974 | 975 | ||
| @@ -980,12 +981,12 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -980,12 +981,12 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 980 | 981 | ||
| 981 | } catch (\Exception $e) { | 982 | } catch (\Exception $e) { |
| 982 | throw new InfraException("Error Processing Request", $e); | 983 | throw new InfraException("Error Processing Request", $e); |
| 983 | - } | 984 | + } |
| 984 | } | 985 | } |
| 985 | - | 986 | + |
| 986 | /** | 987 | /** |
| 987 | * Retorna o estado atual do procedimento no api-pen | 988 | * Retorna o estado atual do procedimento no api-pen |
| 988 | - * | 989 | + * |
| 989 | * @param integer $dblIdProcedimento | 990 | * @param integer $dblIdProcedimento |
| 990 | * @param integer $numIdRepositorio | 991 | * @param integer $numIdRepositorio |
| 991 | * @param integer $numIdEstrutura | 992 | * @param integer $numIdEstrutura |
| @@ -994,14 +995,14 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -994,14 +995,14 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 994 | public function consultarEstadoProcedimento($strProtocoloFormatado = '', $numIdRepositorio = null, $numIdEstrutura = null) { | 995 | public function consultarEstadoProcedimento($strProtocoloFormatado = '', $numIdRepositorio = null, $numIdEstrutura = null) { |
| 995 | 996 | ||
| 996 | $objBD = new GenericoBD($this->inicializarObjInfraIBanco()); | 997 | $objBD = new GenericoBD($this->inicializarObjInfraIBanco()); |
| 997 | - | 998 | + |
| 998 | $objProtocoloDTO = new ProtocoloDTO(); | 999 | $objProtocoloDTO = new ProtocoloDTO(); |
| 999 | $objProtocoloDTO->setStrProtocoloFormatado($strProtocoloFormatado); | 1000 | $objProtocoloDTO->setStrProtocoloFormatado($strProtocoloFormatado); |
| 1000 | $objProtocoloDTO->setNumMaxRegistrosRetorno(1); | 1001 | $objProtocoloDTO->setNumMaxRegistrosRetorno(1); |
| 1001 | $objProtocoloDTO->retDblIdProtocolo(); | 1002 | $objProtocoloDTO->retDblIdProtocolo(); |
| 1002 | $objProtocoloDTO->retStrProtocoloFormatado(); | 1003 | $objProtocoloDTO->retStrProtocoloFormatado(); |
| 1003 | $objProtocoloDTO->retStrStaEstado(); | 1004 | $objProtocoloDTO->retStrStaEstado(); |
| 1004 | - | 1005 | + |
| 1005 | $objProtocoloDTO = $objBD->consultar($objProtocoloDTO); | 1006 | $objProtocoloDTO = $objBD->consultar($objProtocoloDTO); |
| 1006 | 1007 | ||
| 1007 | if (empty($objProtocoloDTO)) { | 1008 | if (empty($objProtocoloDTO)) { |
| @@ -1017,24 +1018,24 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1017,24 +1018,24 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1017 | $objTramiteDTO->setOrd('Registro', InfraDTO::$TIPO_ORDENACAO_DESC); | 1018 | $objTramiteDTO->setOrd('Registro', InfraDTO::$TIPO_ORDENACAO_DESC); |
| 1018 | $objTramiteDTO->setNumMaxRegistrosRetorno(1); | 1019 | $objTramiteDTO->setNumMaxRegistrosRetorno(1); |
| 1019 | $objTramiteDTO->retNumIdTramite(); | 1020 | $objTramiteDTO->retNumIdTramite(); |
| 1020 | - | 1021 | + |
| 1021 | $objTramiteBD = new TramiteBD($this->getObjInfraIBanco()); | 1022 | $objTramiteBD = new TramiteBD($this->getObjInfraIBanco()); |
| 1022 | $arrObjTramiteDTO = $objTramiteBD->listar($objTramiteDTO); | 1023 | $arrObjTramiteDTO = $objTramiteBD->listar($objTramiteDTO); |
| 1023 | - | 1024 | + |
| 1024 | if(!$arrObjTramiteDTO){ | 1025 | if(!$arrObjTramiteDTO){ |
| 1025 | throw new InfraException('Trâmite não encontrado'); | 1026 | throw new InfraException('Trâmite não encontrado'); |
| 1026 | } | 1027 | } |
| 1027 | - | 1028 | + |
| 1028 | $objTramiteDTO = $arrObjTramiteDTO[0]; | 1029 | $objTramiteDTO = $arrObjTramiteDTO[0]; |
| 1029 | - | 1030 | + |
| 1030 | $objFiltro = new stdClass(); | 1031 | $objFiltro = new stdClass(); |
| 1031 | $objFiltro->filtroDeConsultaDeTramites = new stdClass(); | 1032 | $objFiltro->filtroDeConsultaDeTramites = new stdClass(); |
| 1032 | $objFiltro->filtroDeConsultaDeTramites->IDT = $objTramiteDTO->getNumIdTramite(); | 1033 | $objFiltro->filtroDeConsultaDeTramites->IDT = $objTramiteDTO->getNumIdTramite(); |
| 1033 | 1034 | ||
| 1034 | $objResultado = $this->getObjPenWs()->consultarTramites($objFiltro); | 1035 | $objResultado = $this->getObjPenWs()->consultarTramites($objFiltro); |
| 1035 | 1036 | ||
| 1036 | - $objTramitesEncontrados = $objResultado->tramitesEncontrados; | ||
| 1037 | - | 1037 | + $objTramitesEncontrados = $objResultado->tramitesEncontrados; |
| 1038 | + | ||
| 1038 | if (empty($objTramitesEncontrados) || !isset($objTramitesEncontrados->tramite)) { | 1039 | if (empty($objTramitesEncontrados) || !isset($objTramitesEncontrados->tramite)) { |
| 1039 | throw new InfraException(utf8_encode(sprintf('Nenhum tramite foi encontrado para o procedimento %s', $strProtocoloFormatado))); | 1040 | throw new InfraException(utf8_encode(sprintf('Nenhum tramite foi encontrado para o procedimento %s', $strProtocoloFormatado))); |
| 1040 | } | 1041 | } |
| @@ -1042,19 +1043,19 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1042,19 +1043,19 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1042 | if(!is_array($objTramitesEncontrados->tramite)){ | 1043 | if(!is_array($objTramitesEncontrados->tramite)){ |
| 1043 | $objTramitesEncontrados->tramite = array($objTramitesEncontrados->tramite); | 1044 | $objTramitesEncontrados->tramite = array($objTramitesEncontrados->tramite); |
| 1044 | } | 1045 | } |
| 1045 | - | 1046 | + |
| 1046 | $arrObjTramite = (array) $objTramitesEncontrados->tramite; | 1047 | $arrObjTramite = (array) $objTramitesEncontrados->tramite; |
| 1047 | - | 1048 | + |
| 1048 | $objTramite = array_pop($arrObjTramite); | 1049 | $objTramite = array_pop($arrObjTramite); |
| 1049 | - | 1050 | + |
| 1050 | if (empty($numIdRepositorio)) { | 1051 | if (empty($numIdRepositorio)) { |
| 1051 | $objPenParametroRN = new PenParametroRN(); | 1052 | $objPenParametroRN = new PenParametroRN(); |
| 1052 | $numIdRepositorio = $objPenParametroRN->getParametro('PEN_ID_REPOSITORIO_ORIGEM'); | 1053 | $numIdRepositorio = $objPenParametroRN->getParametro('PEN_ID_REPOSITORIO_ORIGEM'); |
| 1053 | - | 1054 | + |
| 1054 | } | 1055 | } |
| 1055 | 1056 | ||
| 1056 | if (empty($numIdEstrutura)) { | 1057 | if (empty($numIdEstrutura)) { |
| 1057 | - | 1058 | + |
| 1058 | $objPenUnidadeDTO = new PenUnidadeDTO(); | 1059 | $objPenUnidadeDTO = new PenUnidadeDTO(); |
| 1059 | $objPenUnidadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); | 1060 | $objPenUnidadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); |
| 1060 | $objPenUnidadeDTO->retNumIdUnidadeRH(); | 1061 | $objPenUnidadeDTO->retNumIdUnidadeRH(); |
| @@ -1064,22 +1065,22 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1064,22 +1065,22 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1064 | if (empty($objPenUnidadeDTO)) { | 1065 | if (empty($objPenUnidadeDTO)) { |
| 1065 | throw new InfraException(utf8_encode('Número da Unidade RH não foi encontrado')); | 1066 | throw new InfraException(utf8_encode('Número da Unidade RH não foi encontrado')); |
| 1066 | } | 1067 | } |
| 1067 | - | 1068 | + |
| 1068 | $numIdEstrutura = $objPenUnidadeDTO->getNumIdUnidadeRH(); | 1069 | $numIdEstrutura = $objPenUnidadeDTO->getNumIdUnidadeRH(); |
| 1069 | } | 1070 | } |
| 1070 | 1071 | ||
| 1071 | if ($objTramite->remetente->numeroDeIdentificacaoDaEstrutura != $numIdEstrutura || | 1072 | if ($objTramite->remetente->numeroDeIdentificacaoDaEstrutura != $numIdEstrutura || |
| 1072 | $objTramite->remetente->identificacaoDoRepositorioDeEstruturas != $numIdRepositorio) { | 1073 | $objTramite->remetente->identificacaoDoRepositorioDeEstruturas != $numIdRepositorio) { |
| 1073 | - | 1074 | + |
| 1074 | throw new InfraException(utf8_encode('O último trâmite desse processo não pertence a esse órgão')); | 1075 | throw new InfraException(utf8_encode('O último trâmite desse processo não pertence a esse órgão')); |
| 1075 | } | 1076 | } |
| 1076 | - | 1077 | + |
| 1077 | switch ($objTramite->situacaoAtual) { | 1078 | switch ($objTramite->situacaoAtual) { |
| 1078 | 1079 | ||
| 1079 | case static::$STA_SITUACAO_TRAMITE_RECIBO_ENVIADO_DESTINATARIO: | 1080 | case static::$STA_SITUACAO_TRAMITE_RECIBO_ENVIADO_DESTINATARIO: |
| 1080 | // @todo: caso command-line informar o procedimento que será executado | 1081 | // @todo: caso command-line informar o procedimento que será executado |
| 1081 | $objPenTramiteProcessadoRN = new PenTramiteProcessadoRN(PenTramiteProcessadoRN::STR_TIPO_RECIBO); | 1082 | $objPenTramiteProcessadoRN = new PenTramiteProcessadoRN(PenTramiteProcessadoRN::STR_TIPO_RECIBO); |
| 1082 | - | 1083 | + |
| 1083 | if(!$objPenTramiteProcessadoRN->isProcedimentoRecebido($objTramite->IDT)){ | 1084 | if(!$objPenTramiteProcessadoRN->isProcedimentoRecebido($objTramite->IDT)){ |
| 1084 | 1085 | ||
| 1085 | $objReceberReciboTramiteRN = new ReceberReciboTramiteRN(); | 1086 | $objReceberReciboTramiteRN = new ReceberReciboTramiteRN(); |
| @@ -1104,28 +1105,28 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1104,28 +1105,28 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1104 | 1105 | ||
| 1105 | $objProtocoloDTO->setStrStaEstado(ProtocoloRN::$TE_NORMAL); | 1106 | $objProtocoloDTO->setStrStaEstado(ProtocoloRN::$TE_NORMAL); |
| 1106 | $objBD->alterar($objProtocoloDTO); | 1107 | $objBD->alterar($objProtocoloDTO); |
| 1107 | - | 1108 | + |
| 1108 | if($objTramite->situacaoAtual == static::$STA_SITUACAO_TRAMITE_COMPONENTES_RECEBIDOS_DESTINATARIO && $objTramite->situacaoAtual == static::$STA_SITUACAO_TRAMITE_METADADOS_RECEBIDO_DESTINATARIO){ | 1109 | if($objTramite->situacaoAtual == static::$STA_SITUACAO_TRAMITE_COMPONENTES_RECEBIDOS_DESTINATARIO && $objTramite->situacaoAtual == static::$STA_SITUACAO_TRAMITE_METADADOS_RECEBIDO_DESTINATARIO){ |
| 1109 | $this->cancelarTramite($objTramite->IDT); | 1110 | $this->cancelarTramite($objTramite->IDT); |
| 1110 | } | 1111 | } |
| 1111 | - | ||
| 1112 | - return PenConsoleRN::format(sprintf('Processo %s foi atualizado com sucesso', $objProtocoloDTO->getStrProtocoloFormatado()), 'blue'); | 1112 | + |
| 1113 | + return PenConsoleRN::format(sprintf('Processo %s foi atualizado com sucesso', $objProtocoloDTO->getStrProtocoloFormatado()), 'blue'); | ||
| 1113 | } | 1114 | } |
| 1114 | } | 1115 | } |
| 1115 | 1116 | ||
| 1116 | - public function enviarReciboDeTramite($parNumIdTramite, $parDthRecebimento, $parStrReciboTramite) | 1117 | + public function enviarReciboDeTramite($parNumIdTramite, $parDthRecebimento, $parStrReciboTramite) |
| 1117 | { | 1118 | { |
| 1118 | try | 1119 | try |
| 1119 | - { | 1120 | + { |
| 1120 | $strHashAssinatura = null; | 1121 | $strHashAssinatura = null; |
| 1121 | $objPrivatekey = openssl_pkey_get_private("file://".$this->strLocalCert, $this->strLocalCertPassword); | 1122 | $objPrivatekey = openssl_pkey_get_private("file://".$this->strLocalCert, $this->strLocalCertPassword); |
| 1122 | 1123 | ||
| 1123 | if ($objPrivatekey === FALSE) { | 1124 | if ($objPrivatekey === FALSE) { |
| 1124 | - throw new InfraException("Erro ao obter chave privada do certificado digital."); | 1125 | + throw new InfraException("Erro ao obter chave privada do certificado digital."); |
| 1125 | } | 1126 | } |
| 1126 | 1127 | ||
| 1127 | - | ||
| 1128 | - openssl_sign($parStrReciboTramite, $strHashAssinatura, $objPrivatekey, 'sha256'); | 1128 | + |
| 1129 | + openssl_sign($parStrReciboTramite, $strHashAssinatura, $objPrivatekey, 'sha256'); | ||
| 1129 | $strHashDaAssinaturaBase64 = base64_encode($strHashAssinatura); | 1130 | $strHashDaAssinaturaBase64 = base64_encode($strHashAssinatura); |
| 1130 | 1131 | ||
| 1131 | $parametro = new stdClass(); | 1132 | $parametro = new stdClass(); |
| @@ -1133,21 +1134,21 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1133,21 +1134,21 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1133 | $parametro->dadosDoReciboDeTramite->IDT = $parNumIdTramite; | 1134 | $parametro->dadosDoReciboDeTramite->IDT = $parNumIdTramite; |
| 1134 | $parametro->dadosDoReciboDeTramite->dataDeRecebimento = $parDthRecebimento; | 1135 | $parametro->dadosDoReciboDeTramite->dataDeRecebimento = $parDthRecebimento; |
| 1135 | $parametro->dadosDoReciboDeTramite->hashDaAssinatura = $strHashDaAssinaturaBase64; | 1136 | $parametro->dadosDoReciboDeTramite->hashDaAssinatura = $strHashDaAssinaturaBase64; |
| 1136 | - | ||
| 1137 | - | 1137 | + |
| 1138 | + | ||
| 1138 | $this->getObjPenWs()->enviarReciboDeTramite($parametro); | 1139 | $this->getObjPenWs()->enviarReciboDeTramite($parametro); |
| 1139 | - | 1140 | + |
| 1140 | return $strHashDaAssinaturaBase64; | 1141 | return $strHashDaAssinaturaBase64; |
| 1141 | 1142 | ||
| 1142 | } catch (\SoapFault $fault) { | 1143 | } catch (\SoapFault $fault) { |
| 1143 | - | 1144 | + |
| 1144 | $strMensagem = '[ SOAP Request ]'.PHP_EOL; | 1145 | $strMensagem = '[ SOAP Request ]'.PHP_EOL; |
| 1145 | $strMensagem .= 'Method: enviarReciboDeTramite (FAIL)'.PHP_EOL; | 1146 | $strMensagem .= 'Method: enviarReciboDeTramite (FAIL)'.PHP_EOL; |
| 1146 | $strMensagem .= 'Request: '.$this->getObjPenWs()->__getLastRequest().PHP_EOL; | 1147 | $strMensagem .= 'Request: '.$this->getObjPenWs()->__getLastRequest().PHP_EOL; |
| 1147 | $strMensagem .= 'Response: '.$this->getObjPenWs()->__getLastResponse().PHP_EOL; | 1148 | $strMensagem .= 'Response: '.$this->getObjPenWs()->__getLastResponse().PHP_EOL; |
| 1148 | - | 1149 | + |
| 1149 | file_put_contents('/tmp/pen.log', $strMensagem.PHP_EOL, FILE_APPEND); | 1150 | file_put_contents('/tmp/pen.log', $strMensagem.PHP_EOL, FILE_APPEND); |
| 1150 | - | 1151 | + |
| 1151 | if(isset($objPrivatekey)){ | 1152 | if(isset($objPrivatekey)){ |
| 1152 | openssl_free_key($objPrivatekey); | 1153 | openssl_free_key($objPrivatekey); |
| 1153 | } | 1154 | } |
| @@ -1167,51 +1168,51 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1167,51 +1168,51 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1167 | } | 1168 | } |
| 1168 | 1169 | ||
| 1169 | throw new InfraException("Error Processing Request", $e); | 1170 | throw new InfraException("Error Processing Request", $e); |
| 1170 | - } | ||
| 1171 | - } | 1171 | + } |
| 1172 | + } | ||
| 1172 | 1173 | ||
| 1173 | - public function receberReciboDeTramite($parNumIdTramite) | 1174 | + public function receberReciboDeTramite($parNumIdTramite) |
| 1174 | { | 1175 | { |
| 1175 | try | 1176 | try |
| 1176 | - { | 1177 | + { |
| 1177 | $parametro = new stdClass(); | 1178 | $parametro = new stdClass(); |
| 1178 | $parametro->IDT = $parNumIdTramite; | 1179 | $parametro->IDT = $parNumIdTramite; |
| 1179 | 1180 | ||
| 1180 | $resultado = $this->getObjPenWs()->receberReciboDeTramite($parametro); | 1181 | $resultado = $this->getObjPenWs()->receberReciboDeTramite($parametro); |
| 1181 | 1182 | ||
| 1182 | return $resultado; | 1183 | return $resultado; |
| 1183 | - } | 1184 | + } |
| 1184 | catch (\SoapFault $fault) { | 1185 | catch (\SoapFault $fault) { |
| 1185 | $mensagem = $this->tratarFalhaWebService($fault); | 1186 | $mensagem = $this->tratarFalhaWebService($fault); |
| 1186 | throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | 1187 | throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); |
| 1187 | } catch (\Exception $e) { | 1188 | } catch (\Exception $e) { |
| 1188 | throw new InfraException("Error Processing Request", $e); | 1189 | throw new InfraException("Error Processing Request", $e); |
| 1189 | - } | ||
| 1190 | - } | ||
| 1191 | - | 1190 | + } |
| 1191 | + } | ||
| 1192 | + | ||
| 1192 | /** | 1193 | /** |
| 1193 | * Retorna um objeto DTO do recibo de envio do processo ao barramento | 1194 | * Retorna um objeto DTO do recibo de envio do processo ao barramento |
| 1194 | - * | 1195 | + * |
| 1195 | * @param int $parNumIdTramite | 1196 | * @param int $parNumIdTramite |
| 1196 | * @return ReciboTramiteEnviadoDTO | 1197 | * @return ReciboTramiteEnviadoDTO |
| 1197 | */ | 1198 | */ |
| 1198 | public function receberReciboDeEnvio($parNumIdTramite) { | 1199 | public function receberReciboDeEnvio($parNumIdTramite) { |
| 1199 | - | 1200 | + |
| 1200 | try { | 1201 | try { |
| 1201 | $parametro = new stdClass(); | 1202 | $parametro = new stdClass(); |
| 1202 | $parametro->IDT = $parNumIdTramite; | 1203 | $parametro->IDT = $parNumIdTramite; |
| 1203 | - | 1204 | + |
| 1204 | $resultado = $this->getObjPenWs()->receberReciboDeEnvio($parametro); | 1205 | $resultado = $this->getObjPenWs()->receberReciboDeEnvio($parametro); |
| 1205 | 1206 | ||
| 1206 | return $resultado->conteudoDoReciboDeEnvio; | 1207 | return $resultado->conteudoDoReciboDeEnvio; |
| 1207 | - } | 1208 | + } |
| 1208 | catch (\SoapFault $fault) { | 1209 | catch (\SoapFault $fault) { |
| 1209 | $mensagem = $this->tratarFalhaWebService($fault); | 1210 | $mensagem = $this->tratarFalhaWebService($fault); |
| 1210 | throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | 1211 | throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); |
| 1211 | - } | 1212 | + } |
| 1212 | catch (\Exception $e) { | 1213 | catch (\Exception $e) { |
| 1213 | throw new InfraException("Error Processing Request", $e); | 1214 | throw new InfraException("Error Processing Request", $e); |
| 1214 | - } | 1215 | + } |
| 1215 | throw new InfraException("Error Processing Request", $e); | 1216 | throw new InfraException("Error Processing Request", $e); |
| 1216 | } | 1217 | } |
| 1217 | 1218 | ||
| @@ -1219,7 +1220,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1219,7 +1220,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1219 | public function converterOperacaoDTO($objOperacaoPEN) | 1220 | public function converterOperacaoDTO($objOperacaoPEN) |
| 1220 | { | 1221 | { |
| 1221 | if(!isset($objOperacaoPEN)) { | 1222 | if(!isset($objOperacaoPEN)) { |
| 1222 | - throw new InfraException('Parâmetro $objOperacaoPEN não informado.'); | 1223 | + throw new InfraException('Parâmetro $objOperacaoPEN não informado.'); |
| 1223 | } | 1224 | } |
| 1224 | 1225 | ||
| 1225 | $objOperacaoDTO = new OperacaoDTO(); | 1226 | $objOperacaoDTO = new OperacaoDTO(); |
| @@ -1251,19 +1252,19 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1251,19 +1252,19 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1251 | case "15": $objOperacaoDTO->setStrNome("Desmembramento"); break; | 1252 | case "15": $objOperacaoDTO->setStrNome("Desmembramento"); break; |
| 1252 | case "16": $objOperacaoDTO->setStrNome("Desentranhamento"); break; | 1253 | case "16": $objOperacaoDTO->setStrNome("Desentranhamento"); break; |
| 1253 | case "17": $objOperacaoDTO->setStrNome("Encerramento/abertura de volume no processo"); break; | 1254 | case "17": $objOperacaoDTO->setStrNome("Encerramento/abertura de volume no processo"); break; |
| 1254 | - case "18": $objOperacaoDTO->setStrNome("Registro de extravio"); break; | 1255 | + case "18": $objOperacaoDTO->setStrNome("Registro de extravio"); break; |
| 1255 | default: $objOperacaoDTO->setStrNome("Registro"); break; | 1256 | default: $objOperacaoDTO->setStrNome("Registro"); break; |
| 1256 | } | 1257 | } |
| 1257 | 1258 | ||
| 1258 | return $objOperacaoDTO; | 1259 | return $objOperacaoDTO; |
| 1259 | - } | 1260 | + } |
| 1260 | 1261 | ||
| 1261 | //TODO: Implementar mapeamento entre operações do PEN e tarefas do SEI | 1262 | //TODO: Implementar mapeamento entre operações do PEN e tarefas do SEI |
| 1262 | public function obterCodigoOperacaoPENMapeado($numIdTarefa) | 1263 | public function obterCodigoOperacaoPENMapeado($numIdTarefa) |
| 1263 | { | 1264 | { |
| 1264 | $strCodigoOperacao = self::$OP_OPERACAO_REGISTRO; | 1265 | $strCodigoOperacao = self::$OP_OPERACAO_REGISTRO; |
| 1265 | 1266 | ||
| 1266 | - if(isset($numIdTarefa) && $numIdTarefa != 0) { | 1267 | + if(isset($numIdTarefa) && $numIdTarefa != 0) { |
| 1267 | $objRelTarefaOperacaoDTO = new RelTarefaOperacaoDTO(); | 1268 | $objRelTarefaOperacaoDTO = new RelTarefaOperacaoDTO(); |
| 1268 | $objRelTarefaOperacaoDTO->retStrCodigoOperacao(); | 1269 | $objRelTarefaOperacaoDTO->retStrCodigoOperacao(); |
| 1269 | $objRelTarefaOperacaoDTO->setNumIdTarefa($numIdTarefa); | 1270 | $objRelTarefaOperacaoDTO->setNumIdTarefa($numIdTarefa); |
| @@ -1273,24 +1274,24 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1273,24 +1274,24 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1273 | $objRelTarefaOperacaoDTO = $objRelTarefaOperacaoBD->consultar($objRelTarefaOperacaoDTO); | 1274 | $objRelTarefaOperacaoDTO = $objRelTarefaOperacaoBD->consultar($objRelTarefaOperacaoDTO); |
| 1274 | 1275 | ||
| 1275 | if($objRelTarefaOperacaoDTO != null) { | 1276 | if($objRelTarefaOperacaoDTO != null) { |
| 1276 | - $strCodigoOperacao = $objRelTarefaOperacaoDTO->getStrCodigoOperacao(); | 1277 | + $strCodigoOperacao = $objRelTarefaOperacaoDTO->getStrCodigoOperacao(); |
| 1277 | } | 1278 | } |
| 1278 | } | 1279 | } |
| 1279 | 1280 | ||
| 1280 | return $strCodigoOperacao; | 1281 | return $strCodigoOperacao; |
| 1281 | - } | 1282 | + } |
| 1282 | 1283 | ||
| 1283 | //TODO: Implementar mapeamento entre operações do PEN e tarefas do SEI | 1284 | //TODO: Implementar mapeamento entre operações do PEN e tarefas do SEI |
| 1284 | public function obterIdTarefaSEIMapeado($strCodigoOperacao) | 1285 | public function obterIdTarefaSEIMapeado($strCodigoOperacao) |
| 1285 | { | 1286 | { |
| 1286 | return self::$TI_PROCESSO_ELETRONICO_PROCESSO_TRAMITE_EXTERNO; | 1287 | return self::$TI_PROCESSO_ELETRONICO_PROCESSO_TRAMITE_EXTERNO; |
| 1287 | - } | ||
| 1288 | - | ||
| 1289 | - | 1288 | + } |
| 1289 | + | ||
| 1290 | + | ||
| 1290 | /** | 1291 | /** |
| 1291 | * Cancela um tramite externo de um procedimento para outra unidade, gera | 1292 | * Cancela um tramite externo de um procedimento para outra unidade, gera |
| 1292 | * falha caso a unidade de destino já tenha começado a receber o procedimento. | 1293 | * falha caso a unidade de destino já tenha começado a receber o procedimento. |
| 1293 | - * | 1294 | + * |
| 1294 | * @param type $idTramite | 1295 | * @param type $idTramite |
| 1295 | * @param type $idProtocolo | 1296 | * @param type $idProtocolo |
| 1296 | * @throws Exception|InfraException | 1297 | * @throws Exception|InfraException |
| @@ -1308,18 +1309,18 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1308,18 +1309,18 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1308 | //Requisita o cancelamento | 1309 | //Requisita o cancelamento |
| 1309 | $parametros = new stdClass(); | 1310 | $parametros = new stdClass(); |
| 1310 | $parametros->IDT = $idTramite; | 1311 | $parametros->IDT = $idTramite; |
| 1311 | - | 1312 | + |
| 1312 | try{ | 1313 | try{ |
| 1313 | $this->getObjPenWs()->cancelarEnvioDeTramite($parametros); | 1314 | $this->getObjPenWs()->cancelarEnvioDeTramite($parametros); |
| 1314 | - } | 1315 | + } |
| 1315 | catch(\SoapFault $e) { | 1316 | catch(\SoapFault $e) { |
| 1316 | throw new InfraException($e->getMessage(), null, $e); | 1317 | throw new InfraException($e->getMessage(), null, $e); |
| 1317 | - } | 1318 | + } |
| 1318 | } | 1319 | } |
| 1319 | - | 1320 | + |
| 1320 | /** | 1321 | /** |
| 1321 | * Método que faz a recusa de um trâmite | 1322 | * Método que faz a recusa de um trâmite |
| 1322 | - * | 1323 | + * |
| 1323 | * @param integer $idTramite | 1324 | * @param integer $idTramite |
| 1324 | * @param string $justificativa | 1325 | * @param string $justificativa |
| 1325 | * @param integer $motivo | 1326 | * @param integer $motivo |
| @@ -1328,7 +1329,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1328,7 +1329,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1328 | */ | 1329 | */ |
| 1329 | public function recusarTramite($idTramite, $justificativa, $motivo) { | 1330 | public function recusarTramite($idTramite, $justificativa, $motivo) { |
| 1330 | try { | 1331 | try { |
| 1331 | - | 1332 | + |
| 1332 | //@TODOJOIN: Adicionar a seguinte linha abaixo dessa : $parametros->recusaDeTramite = new stdClass() | 1333 | //@TODOJOIN: Adicionar a seguinte linha abaixo dessa : $parametros->recusaDeTramite = new stdClass() |
| 1333 | $parametros = new stdClass(); | 1334 | $parametros = new stdClass(); |
| 1334 | $parametros->recusaDeTramite = new stdClass(); | 1335 | $parametros->recusaDeTramite = new stdClass(); |
| @@ -1337,12 +1338,12 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1337,12 +1338,12 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1337 | $parametros->recusaDeTramite->motivo = $motivo; | 1338 | $parametros->recusaDeTramite->motivo = $motivo; |
| 1338 | 1339 | ||
| 1339 | $resultado = $this->getObjPenWs()->recusarTramite($parametros); | 1340 | $resultado = $this->getObjPenWs()->recusarTramite($parametros); |
| 1340 | - | 1341 | + |
| 1341 | } catch (SoapFault $fault) { | 1342 | } catch (SoapFault $fault) { |
| 1342 | 1343 | ||
| 1343 | $mensagem = $this->tratarFalhaWebService($fault); | 1344 | $mensagem = $this->tratarFalhaWebService($fault); |
| 1344 | throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); | 1345 | throw new InfraException(InfraString::formatarJavaScript($mensagem), $fault); |
| 1345 | - | 1346 | + |
| 1346 | } catch (Exception $e) { | 1347 | } catch (Exception $e) { |
| 1347 | return $e->getMessage(); | 1348 | return $e->getMessage(); |
| 1348 | } | 1349 | } |
| @@ -1357,7 +1358,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1357,7 +1358,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1357 | 1358 | ||
| 1358 | $tramitePendenteBD = new TramitePendenteBD($this->getObjInfraIBanco()); | 1359 | $tramitePendenteBD = new TramitePendenteBD($this->getObjInfraIBanco()); |
| 1359 | $tramitePendenteBD->cadastrar($tramitePendenteDTO); | 1360 | $tramitePendenteBD->cadastrar($tramitePendenteDTO); |
| 1360 | - | 1361 | + |
| 1361 | } catch (\InfraException $ex) { | 1362 | } catch (\InfraException $ex) { |
| 1362 | throw new InfraException($ex->getStrDescricao()); | 1363 | throw new InfraException($ex->getStrDescricao()); |
| 1363 | } catch (\Exception $ex) { | 1364 | } catch (\Exception $ex) { |
| @@ -1370,38 +1371,38 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1370,38 +1371,38 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1370 | //Obtem o id_rh que representa a unidade no barramento | 1371 | //Obtem o id_rh que representa a unidade no barramento |
| 1371 | $objPenParametroRN = new PenParametroRN(); | 1372 | $objPenParametroRN = new PenParametroRN(); |
| 1372 | $numIdRespositorio = $objPenParametroRN->getParametro('PEN_ID_REPOSITORIO_ORIGEM'); | 1373 | $numIdRespositorio = $objPenParametroRN->getParametro('PEN_ID_REPOSITORIO_ORIGEM'); |
| 1373 | - | 1374 | + |
| 1374 | //Obtem os dados da unidade | 1375 | //Obtem os dados da unidade |
| 1375 | $objPenUnidadeDTO = new PenUnidadeDTO(); | 1376 | $objPenUnidadeDTO = new PenUnidadeDTO(); |
| 1376 | $objPenUnidadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); | 1377 | $objPenUnidadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); |
| 1377 | $objPenUnidadeDTO->retNumIdUnidadeRH(); | 1378 | $objPenUnidadeDTO->retNumIdUnidadeRH(); |
| 1378 | - | 1379 | + |
| 1379 | $objGenericoBD = new GenericoBD($this->inicializarObjInfraIBanco()); | 1380 | $objGenericoBD = new GenericoBD($this->inicializarObjInfraIBanco()); |
| 1380 | $objPenUnidadeDTO = $objGenericoBD->consultar($objPenUnidadeDTO); | 1381 | $objPenUnidadeDTO = $objGenericoBD->consultar($objPenUnidadeDTO); |
| 1381 | - | 1382 | + |
| 1382 | //Obtem os dados do último trâmite desse processo no barramento | 1383 | //Obtem os dados do último trâmite desse processo no barramento |
| 1383 | $objProtocoloDTO = new ProtocoloDTO(); | 1384 | $objProtocoloDTO = new ProtocoloDTO(); |
| 1384 | $objProtocoloDTO->setStrProtocoloFormatado($strProtocolo); | 1385 | $objProtocoloDTO->setStrProtocoloFormatado($strProtocolo); |
| 1385 | $objProtocoloDTO->retDblIdProtocolo(); | 1386 | $objProtocoloDTO->retDblIdProtocolo(); |
| 1386 | - | 1387 | + |
| 1387 | $objProtocoloRN = new ProtocoloRN(); | 1388 | $objProtocoloRN = new ProtocoloRN(); |
| 1388 | $objProtocoloDTO = $objProtocoloRN->consultarRN0186($objProtocoloDTO); | 1389 | $objProtocoloDTO = $objProtocoloRN->consultarRN0186($objProtocoloDTO); |
| 1389 | - | 1390 | + |
| 1390 | $objTramiteDTO = new TramiteDTO(); | 1391 | $objTramiteDTO = new TramiteDTO(); |
| 1391 | $objTramiteDTO->setNumIdProcedimento($objProtocoloDTO->retDblIdProtocolo()); | 1392 | $objTramiteDTO->setNumIdProcedimento($objProtocoloDTO->retDblIdProtocolo()); |
| 1392 | $objTramiteDTO->setOrd('Registro', InfraDTO::$TIPO_ORDENACAO_DESC); | 1393 | $objTramiteDTO->setOrd('Registro', InfraDTO::$TIPO_ORDENACAO_DESC); |
| 1393 | $objTramiteDTO->setNumMaxRegistrosRetorno(1); | 1394 | $objTramiteDTO->setNumMaxRegistrosRetorno(1); |
| 1394 | $objTramiteDTO->retNumIdTramite(); | 1395 | $objTramiteDTO->retNumIdTramite(); |
| 1395 | - | 1396 | + |
| 1396 | $objTramiteBD = new TramiteBD($this->getObjInfraIBanco()); | 1397 | $objTramiteBD = new TramiteBD($this->getObjInfraIBanco()); |
| 1397 | $arrObjTramiteDTO = $objTramiteBD->listar($objTramiteDTO); | 1398 | $arrObjTramiteDTO = $objTramiteBD->listar($objTramiteDTO); |
| 1398 | - | 1399 | + |
| 1399 | if(!$arrObjTramiteDTO){ | 1400 | if(!$arrObjTramiteDTO){ |
| 1400 | return false; | 1401 | return false; |
| 1401 | } | 1402 | } |
| 1402 | - | 1403 | + |
| 1403 | $objTramiteDTO = $arrObjTramiteDTO[0]; | 1404 | $objTramiteDTO = $arrObjTramiteDTO[0]; |
| 1404 | - | 1405 | + |
| 1405 | try { | 1406 | try { |
| 1406 | 1407 | ||
| 1407 | $parametro = (object)array( | 1408 | $parametro = (object)array( |
| @@ -1413,15 +1414,15 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1413,15 +1414,15 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1413 | ), | 1414 | ), |
| 1414 | ) | 1415 | ) |
| 1415 | ); | 1416 | ); |
| 1416 | - | ||
| 1417 | - | 1417 | + |
| 1418 | + | ||
| 1418 | $objMeta = $this->getObjPenWs()->consultarTramites($parametro); | 1419 | $objMeta = $this->getObjPenWs()->consultarTramites($parametro); |
| 1419 | - | ||
| 1420 | - | 1420 | + |
| 1421 | + | ||
| 1421 | if($objMeta->tramitesEncontrados) { | 1422 | if($objMeta->tramitesEncontrados) { |
| 1422 | - | 1423 | + |
| 1423 | $arrObjMetaTramite = !is_array($objMeta->tramitesEncontrados->tramite) ? array($objMeta->tramitesEncontrados->tramite) : $objMeta->tramitesEncontrados->tramite; | 1424 | $arrObjMetaTramite = !is_array($objMeta->tramitesEncontrados->tramite) ? array($objMeta->tramitesEncontrados->tramite) : $objMeta->tramitesEncontrados->tramite; |
| 1424 | - | 1425 | + |
| 1425 | $objMetaTramite = $arrObjMetaTramite[0]; | 1426 | $objMetaTramite = $arrObjMetaTramite[0]; |
| 1426 | 1427 | ||
| 1427 | switch($objMetaTramite->situacaoAtual){ | 1428 | switch($objMetaTramite->situacaoAtual){ |
| @@ -1435,7 +1436,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1435,7 +1436,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1435 | 1436 | ||
| 1436 | } | 1437 | } |
| 1437 | } | 1438 | } |
| 1438 | - | 1439 | + |
| 1439 | return false; | 1440 | return false; |
| 1440 | } | 1441 | } |
| 1441 | catch(SoapFault $e) { | 1442 | catch(SoapFault $e) { |
| @@ -1445,7 +1446,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1445,7 +1446,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1445 | return false; | 1446 | return false; |
| 1446 | } | 1447 | } |
| 1447 | } | 1448 | } |
| 1448 | - | 1449 | + |
| 1449 | public function consultarHipotesesLegais() { | 1450 | public function consultarHipotesesLegais() { |
| 1450 | try{ | 1451 | try{ |
| 1451 | $hipoteses = $this->getObjPenWs()->consultarHipotesesLegais(); | 1452 | $hipoteses = $this->getObjPenWs()->consultarHipotesesLegais(); |
| @@ -1455,7 +1456,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1455,7 +1456,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1455 | return $hipoteses; | 1456 | return $hipoteses; |
| 1456 | 1457 | ||
| 1457 | } catch(Exception $e){ | 1458 | } catch(Exception $e){ |
| 1458 | - throw new InfraException("Erro durante obtenção da resposta das hipóteses legais", $e); | 1459 | + throw new InfraException("Erro durante obtenção da resposta das hipóteses legais", $e); |
| 1459 | } | 1460 | } |
| 1460 | } | 1461 | } |
| 1461 | 1462 | ||
| @@ -1466,7 +1467,7 @@ class ProcessoEletronicoRN extends InfraRN { | @@ -1466,7 +1467,7 @@ class ProcessoEletronicoRN extends InfraRN { | ||
| 1466 | }catch(Exception $e){ | 1467 | }catch(Exception $e){ |
| 1467 | throw new InfraException('Erro contando Processos Externos.',$e); | 1468 | throw new InfraException('Erro contando Processos Externos.',$e); |
| 1468 | } | 1469 | } |
| 1469 | - } | 1470 | + } |
| 1470 | } | 1471 | } |
| 1471 | 1472 | ||
| 1472 | 1473 |
rn/ProcessoExpedidoRN.php
| @@ -13,70 +13,76 @@ class ProcessoExpedidoRN extends InfraRN { | @@ -13,70 +13,76 @@ class ProcessoExpedidoRN extends InfraRN { | ||
| 13 | } | 13 | } |
| 14 | 14 | ||
| 15 | public function listarProcessoExpedido(ProtocoloDTO &$objProtocoloDTO) { | 15 | public function listarProcessoExpedido(ProtocoloDTO &$objProtocoloDTO) { |
| 16 | - | ||
| 17 | - | ||
| 18 | - $sql = "SELECT | ||
| 19 | - p.id_protocolo, | ||
| 20 | - p.protocolo_formatado, | ||
| 21 | - a.id_unidade id_unidade, | ||
| 22 | - atd.valor unidade_destino, | 16 | + |
| 17 | + $bolSqlServer = $this->getObjInfraIBanco() instanceof InfraSqlServer; | ||
| 18 | + $numLimit = $objProtocoloDTO->getNumMaxRegistrosRetorno(); | ||
| 19 | + $numOffset = $objProtocoloDTO->getNumPaginaAtual() * $objProtocoloDTO->getNumMaxRegistrosRetorno(); | ||
| 20 | + | ||
| 21 | + $sql = "SELECT " . | ||
| 22 | + (($bolSqlServer) ? "TOP $numLimit " : "") . | ||
| 23 | + " | ||
| 24 | + p.id_protocolo, | ||
| 25 | + p.protocolo_formatado, | ||
| 26 | + a.id_unidade id_unidade, | ||
| 27 | + atd.valor unidade_destino, | ||
| 23 | us.id_usuario id_usuario, | 28 | us.id_usuario id_usuario, |
| 24 | us.nome nome_usuario, | 29 | us.nome nome_usuario, |
| 25 | a.dth_abertura | 30 | a.dth_abertura |
| 26 | - FROM protocolo p | ||
| 27 | - INNER JOIN atividade a ON a.id_protocolo = p.id_protocolo | 31 | + FROM protocolo p |
| 32 | + INNER JOIN atividade a ON a.id_protocolo = p.id_protocolo | ||
| 28 | INNER JOIN atributo_andamento atd ON a.id_atividade = atd.id_atividade AND atd.nome = 'UNIDADE_DESTINO' | 33 | INNER JOIN atributo_andamento atd ON a.id_atividade = atd.id_atividade AND atd.nome = 'UNIDADE_DESTINO' |
| 29 | INNER JOIN md_pen_processo_eletronico pe ON pe.id_procedimento = p.id_protocolo | 34 | INNER JOIN md_pen_processo_eletronico pe ON pe.id_procedimento = p.id_protocolo |
| 30 | INNER JOIN md_pen_tramite ptra ON ptra.numero_registro = pe.numero_registro | 35 | INNER JOIN md_pen_tramite ptra ON ptra.numero_registro = pe.numero_registro |
| 31 | INNER JOIN usuario us ON ptra.id_usuario = us.id_usuario | 36 | INNER JOIN usuario us ON ptra.id_usuario = us.id_usuario |
| 32 | - WHERE | 37 | + WHERE |
| 33 | p.sta_estado = " . $objProtocoloDTO->getStrStaEstado() . " | 38 | p.sta_estado = " . $objProtocoloDTO->getStrStaEstado() . " |
| 34 | - AND | ||
| 35 | - a.id_tarefa = ". ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_TRAMITE_EXTERNO) ." | ||
| 36 | - AND | 39 | + AND |
| 40 | + a.id_tarefa = ". ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_TRAMITE_EXTERNO) ." | ||
| 41 | + AND | ||
| 37 | ptra.dth_registro = (SELECT MAX(pt.dth_registro) dth_registro FROM md_pen_tramite pt WHERE pt.numero_registro = pe.numero_registro) | 42 | ptra.dth_registro = (SELECT MAX(pt.dth_registro) dth_registro FROM md_pen_tramite pt WHERE pt.numero_registro = pe.numero_registro) |
| 38 | - AND | ||
| 39 | - NOT EXISTS ( | ||
| 40 | - SELECT at2.* FROM atividade as at2 | ||
| 41 | - WHERE at2.id_protocolo = p.id_protocolo | ||
| 42 | - AND at2.id_tarefa = ". ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_RECEBIDO) ." | ||
| 43 | - AND at2.dth_abertura > a.dth_abertura ) | 43 | + AND |
| 44 | + NOT EXISTS ( | ||
| 45 | + SELECT at2.* FROM atividade as at2 | ||
| 46 | + WHERE at2.id_protocolo = p.id_protocolo | ||
| 47 | + AND at2.id_tarefa = ". ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_RECEBIDO) ." | ||
| 48 | + AND at2.dth_abertura > a.dth_abertura ) | ||
| 44 | GROUP BY | 49 | GROUP BY |
| 45 | - p.id_protocolo, p.protocolo_formatado, a.id_unidade , atd.valor , us.id_usuario, us.nome, a.dth_abertura ORDER BY a.dth_abertura DESC LIMIT ".$objProtocoloDTO->getNumPaginaAtual() * $objProtocoloDTO->getNumMaxRegistrosRetorno().",".$objProtocoloDTO->getNumMaxRegistrosRetorno()." "; | ||
| 46 | - | ||
| 47 | - | ||
| 48 | - $sqlCount = "SELECT | 50 | + p.id_protocolo, p.protocolo_formatado, a.id_unidade , atd.valor , us.id_usuario, us.nome, a.dth_abertura ORDER BY a.dth_abertura DESC ". |
| 51 | + (($bolSqlServer) ? "OFFSET $numOffset ROWS" : "LIMIT ".$numOffset.",".$numLimit." "); | ||
| 52 | + | ||
| 53 | + | ||
| 54 | + $sqlCount = "SELECT | ||
| 49 | count(*) total | 55 | count(*) total |
| 50 | - FROM protocolo p | ||
| 51 | - INNER JOIN atividade a ON a.id_protocolo = p.id_protocolo | 56 | + FROM protocolo p |
| 57 | + INNER JOIN atividade a ON a.id_protocolo = p.id_protocolo | ||
| 52 | INNER JOIN atributo_andamento atd ON a.id_atividade = atd.id_atividade AND atd.nome = 'UNIDADE_DESTINO' | 58 | INNER JOIN atributo_andamento atd ON a.id_atividade = atd.id_atividade AND atd.nome = 'UNIDADE_DESTINO' |
| 53 | INNER JOIN md_pen_processo_eletronico pe ON pe.id_procedimento = p.id_protocolo | 59 | INNER JOIN md_pen_processo_eletronico pe ON pe.id_procedimento = p.id_protocolo |
| 54 | INNER JOIN md_pen_tramite ptra ON ptra.numero_registro = pe.numero_registro | 60 | INNER JOIN md_pen_tramite ptra ON ptra.numero_registro = pe.numero_registro |
| 55 | INNER JOIN usuario us ON ptra.id_usuario = us.id_usuario | 61 | INNER JOIN usuario us ON ptra.id_usuario = us.id_usuario |
| 56 | - WHERE | 62 | + WHERE |
| 57 | p.sta_estado = " . $objProtocoloDTO->getStrStaEstado() . " | 63 | p.sta_estado = " . $objProtocoloDTO->getStrStaEstado() . " |
| 58 | - AND | ||
| 59 | - a.id_tarefa = ". ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_TRAMITE_EXTERNO) ." | ||
| 60 | - AND | 64 | + AND |
| 65 | + a.id_tarefa = ". ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_TRAMITE_EXTERNO) ." | ||
| 66 | + AND | ||
| 61 | ptra.dth_registro = (SELECT MAX(pt.dth_registro) dth_registro FROM md_pen_tramite pt WHERE pt.numero_registro = pe.numero_registro) | 67 | ptra.dth_registro = (SELECT MAX(pt.dth_registro) dth_registro FROM md_pen_tramite pt WHERE pt.numero_registro = pe.numero_registro) |
| 62 | - AND | ||
| 63 | - NOT EXISTS ( | ||
| 64 | - SELECT at2.* FROM atividade as at2 | ||
| 65 | - WHERE at2.id_protocolo = p.id_protocolo | ||
| 66 | - AND at2.id_tarefa = ". ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_RECEBIDO) ." | 68 | + AND |
| 69 | + NOT EXISTS ( | ||
| 70 | + SELECT at2.* FROM atividade as at2 | ||
| 71 | + WHERE at2.id_protocolo = p.id_protocolo | ||
| 72 | + AND at2.id_tarefa = ". ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_RECEBIDO) ." | ||
| 67 | AND at2.dth_abertura > a.dth_abertura ) "; | 73 | AND at2.dth_abertura > a.dth_abertura ) "; |
| 68 | - | ||
| 69 | - | 74 | + |
| 75 | + | ||
| 70 | 76 | ||
| 71 | $pag = $this->getObjInfraIBanco()->consultarSql($sql); | 77 | $pag = $this->getObjInfraIBanco()->consultarSql($sql); |
| 72 | $count = $this->getObjInfraIBanco()->consultarSql($sqlCount); | 78 | $count = $this->getObjInfraIBanco()->consultarSql($sqlCount); |
| 73 | $total = $count ? $count[0]['total'] : 0; | 79 | $total = $count ? $count[0]['total'] : 0; |
| 74 | - | 80 | + |
| 75 | $arrProcessosExpedidos = array(); | 81 | $arrProcessosExpedidos = array(); |
| 76 | 82 | ||
| 77 | $objProtocoloDTO->setNumTotalRegistros($total); | 83 | $objProtocoloDTO->setNumTotalRegistros($total); |
| 78 | $objProtocoloDTO->setNumRegistrosPaginaAtual(count($pag)); | 84 | $objProtocoloDTO->setNumRegistrosPaginaAtual(count($pag)); |
| 79 | - | 85 | + |
| 80 | foreach ($pag as $res) { | 86 | foreach ($pag as $res) { |
| 81 | $data = new \DateTime($res['dth_abertura']); | 87 | $data = new \DateTime($res['dth_abertura']); |
| 82 | $objProcessoExpedidoDTO = new ProcessoExpedidoDTO(); | 88 | $objProcessoExpedidoDTO = new ProcessoExpedidoDTO(); |
| @@ -85,14 +91,10 @@ class ProcessoExpedidoRN extends InfraRN { | @@ -85,14 +91,10 @@ class ProcessoExpedidoRN extends InfraRN { | ||
| 85 | $objProcessoExpedidoDTO->setStrNomeUsuario($res['nome_usuario']); | 91 | $objProcessoExpedidoDTO->setStrNomeUsuario($res['nome_usuario']); |
| 86 | $objProcessoExpedidoDTO->setDthExpedido($data->format('d/m/Y H:i:s')); | 92 | $objProcessoExpedidoDTO->setDthExpedido($data->format('d/m/Y H:i:s')); |
| 87 | $objProcessoExpedidoDTO->setStrDestino($res['unidade_destino']); | 93 | $objProcessoExpedidoDTO->setStrDestino($res['unidade_destino']); |
| 88 | - | ||
| 89 | - | ||
| 90 | - | ||
| 91 | - | 94 | + |
| 92 | $arrProcessosExpedidos[] = $objProcessoExpedidoDTO; | 95 | $arrProcessosExpedidos[] = $objProcessoExpedidoDTO; |
| 93 | } | 96 | } |
| 94 | - | 97 | + |
| 95 | return $arrProcessosExpedidos; | 98 | return $arrProcessosExpedidos; |
| 96 | } | 99 | } |
| 97 | - | ||
| 98 | } | 100 | } |
rn/ReceberProcedimentoRN.php
| @@ -3,6 +3,7 @@ require_once dirname(__FILE__) . '/../../../SEI.php'; | @@ -3,6 +3,7 @@ require_once dirname(__FILE__) . '/../../../SEI.php'; | ||
| 3 | 3 | ||
| 4 | //TODO: Implementar validação sobre tamanho do documento a ser recebido (Parâmetros SEI) | 4 | //TODO: Implementar validação sobre tamanho do documento a ser recebido (Parâmetros SEI) |
| 5 | 5 | ||
| 6 | + | ||
| 6 | class ReceberProcedimentoRN extends InfraRN | 7 | class ReceberProcedimentoRN extends InfraRN |
| 7 | { | 8 | { |
| 8 | const STR_APENSACAO_PROCEDIMENTOS = 'Relacionamento representando a apensação de processos recebidos externamente'; | 9 | const STR_APENSACAO_PROCEDIMENTOS = 'Relacionamento representando a apensação de processos recebidos externamente'; |
| @@ -11,7 +12,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -11,7 +12,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 11 | private $objInfraParametro; | 12 | private $objInfraParametro; |
| 12 | private $objProcedimentoAndamentoRN; | 13 | private $objProcedimentoAndamentoRN; |
| 13 | private $documentosRetirados = array(); | 14 | private $documentosRetirados = array(); |
| 14 | - | 15 | + |
| 15 | public $destinatarioReal = null; | 16 | public $destinatarioReal = null; |
| 16 | 17 | ||
| 17 | public function __construct() | 18 | public function __construct() |
| @@ -35,11 +36,11 @@ class ReceberProcedimentoRN extends InfraRN | @@ -35,11 +36,11 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 35 | } | 36 | } |
| 36 | 37 | ||
| 37 | public function fecharProcedimentoEmOutraUnidades(ProcedimentoDTO $objProcedimentoDTO, $parObjMetadadosProcedimento){ | 38 | public function fecharProcedimentoEmOutraUnidades(ProcedimentoDTO $objProcedimentoDTO, $parObjMetadadosProcedimento){ |
| 38 | - | 39 | + |
| 39 | $objPenUnidadeDTO = new PenUnidadeDTO(); | 40 | $objPenUnidadeDTO = new PenUnidadeDTO(); |
| 40 | $objPenUnidadeDTO->setNumIdUnidadeRH($parObjMetadadosProcedimento->metadados->destinatario->numeroDeIdentificacaoDaEstrutura); | 41 | $objPenUnidadeDTO->setNumIdUnidadeRH($parObjMetadadosProcedimento->metadados->destinatario->numeroDeIdentificacaoDaEstrutura); |
| 41 | $objPenUnidadeDTO->retNumIdUnidade(); | 42 | $objPenUnidadeDTO->retNumIdUnidade(); |
| 42 | - | 43 | + |
| 43 | $objGenericoBD = new GenericoBD($this->inicializarObjInfraIBanco()); | 44 | $objGenericoBD = new GenericoBD($this->inicializarObjInfraIBanco()); |
| 44 | $objPenUnidadeDTO = $objGenericoBD->consultar($objPenUnidadeDTO); | 45 | $objPenUnidadeDTO = $objGenericoBD->consultar($objPenUnidadeDTO); |
| 45 | 46 | ||
| @@ -63,40 +64,39 @@ class ReceberProcedimentoRN extends InfraRN | @@ -63,40 +64,39 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 63 | 64 | ||
| 64 | $objAtividadeRN = new AtividadeRN(); | 65 | $objAtividadeRN = new AtividadeRN(); |
| 65 | $arrObjAtividadeDTO = (array)$objAtividadeRN->listarRN0036($objAtividadeDTO); | 66 | $arrObjAtividadeDTO = (array)$objAtividadeRN->listarRN0036($objAtividadeDTO); |
| 66 | - | 67 | + |
| 67 | $objInfraSessao = SessaoSEI::getInstance(); | 68 | $objInfraSessao = SessaoSEI::getInstance(); |
| 68 | $numIdUnidade = $objInfraSessao->getNumIdUnidadeAtual(); | 69 | $numIdUnidade = $objInfraSessao->getNumIdUnidadeAtual(); |
| 69 | - | 70 | + |
| 70 | foreach($arrObjAtividadeDTO as $objAtividadeDTO) { | 71 | foreach($arrObjAtividadeDTO as $objAtividadeDTO) { |
| 71 | 72 | ||
| 72 | $objInfraSessao->setNumIdUnidadeAtual($objAtividadeDTO->getNumIdUnidade()); | 73 | $objInfraSessao->setNumIdUnidadeAtual($objAtividadeDTO->getNumIdUnidade()); |
| 73 | $objInfraSessao->trocarUnidadeAtual(); | 74 | $objInfraSessao->trocarUnidadeAtual(); |
| 74 | - | 75 | + |
| 75 | $objProcedimentoRN = new ProcedimentoRN(); | 76 | $objProcedimentoRN = new ProcedimentoRN(); |
| 76 | $objProcedimentoRN->concluir(array($objProcedimentoDTO)); | 77 | $objProcedimentoRN->concluir(array($objProcedimentoDTO)); |
| 77 | } | 78 | } |
| 78 | $objInfraSessao->setNumIdUnidadeAtual($numIdUnidade); | 79 | $objInfraSessao->setNumIdUnidadeAtual($numIdUnidade); |
| 79 | $objInfraSessao->trocarUnidadeAtual(); | 80 | $objInfraSessao->trocarUnidadeAtual(); |
| 80 | } | 81 | } |
| 81 | - | 82 | + |
| 82 | // TODO: Adicionar comandos de debug. Vide SeiWs.php gerarProcedimento | 83 | // TODO: Adicionar comandos de debug. Vide SeiWs.php gerarProcedimento |
| 83 | protected function receberProcedimentoControlado($parNumIdentificacaoTramite) | 84 | protected function receberProcedimentoControlado($parNumIdentificacaoTramite) |
| 84 | - { | ||
| 85 | - $objPenParametroRN = new PenParametroRN(); | ||
| 86 | - SessaoSEI::getInstance(false)->simularLogin('SEI', null, null, $objPenParametroRN->getParametro('PEN_UNIDADE_GERADORA_DOCUMENTO_RECEBIDO')); | ||
| 87 | - | 85 | + { |
| 86 | + $objPenParametroRN = new PenParametroRN(); | ||
| 87 | + SessaoSEI::getInstance(false)->simularLogin('SEI', null, null, $objPenParametroRN->getParametro('PEN_UNIDADE_GERADORA_DOCUMENTO_RECEBIDO')); | ||
| 88 | + | ||
| 88 | $objSeiRN = new SeiRN(); | 89 | $objSeiRN = new SeiRN(); |
| 89 | - | 90 | + |
| 90 | error_log(__METHOD__.'('.$parNumIdentificacaoTramite.')'); | 91 | error_log(__METHOD__.'('.$parNumIdentificacaoTramite.')'); |
| 91 | - | 92 | + |
| 92 | if (!isset($parNumIdentificacaoTramite)) { | 93 | if (!isset($parNumIdentificacaoTramite)) { |
| 93 | throw new InfraException('Parâmetro $parNumIdentificacaoTramite não informado.'); | 94 | throw new InfraException('Parâmetro $parNumIdentificacaoTramite não informado.'); |
| 94 | } | 95 | } |
| 95 | - | ||
| 96 | - | 96 | + |
| 97 | //TODO: Urgente: Verificar o status do trâmite e verificar se ele já foi salvo na base de dados | 97 | //TODO: Urgente: Verificar o status do trâmite e verificar se ele já foi salvo na base de dados |
| 98 | $objMetadadosProcedimento = $this->objProcessoEletronicoRN->solicitarMetadados($parNumIdentificacaoTramite); | 98 | $objMetadadosProcedimento = $this->objProcessoEletronicoRN->solicitarMetadados($parNumIdentificacaoTramite); |
| 99 | - | 99 | + |
| 100 | //!Substituir a unidade destinatária para a receptora (!1!) | 100 | //!Substituir a unidade destinatária para a receptora (!1!) |
| 101 | if (isset($objMetadadosProcedimento->metadados->unidadeReceptora)) { | 101 | if (isset($objMetadadosProcedimento->metadados->unidadeReceptora)) { |
| 102 | $this->destinatarioReal = $objMetadadosProcedimento->metadados->destinatario; | 102 | $this->destinatarioReal = $objMetadadosProcedimento->metadados->destinatario; |
| @@ -113,108 +113,108 @@ class ReceberProcedimentoRN extends InfraRN | @@ -113,108 +113,108 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 113 | if($this->tramiteRegistrado($strNumeroRegistro, $parNumIdentificacaoTramite)) { | 113 | if($this->tramiteRegistrado($strNumeroRegistro, $parNumIdentificacaoTramite)) { |
| 114 | return ; | 114 | return ; |
| 115 | } | 115 | } |
| 116 | - | 116 | + |
| 117 | // Validação dos dados do processo recebido | 117 | // Validação dos dados do processo recebido |
| 118 | $objInfraException = new InfraException(); | 118 | $objInfraException = new InfraException(); |
| 119 | $this->validarDadosDestinatario($objInfraException, $objMetadadosProcedimento); | 119 | $this->validarDadosDestinatario($objInfraException, $objMetadadosProcedimento); |
| 120 | $objInfraException->lancarValidacoes(); | 120 | $objInfraException->lancarValidacoes(); |
| 121 | - | 121 | + |
| 122 | #############################INICIA O RECEBIMENTO DOS COMPONENTES DIGITAIS US010################################################ | 122 | #############################INICIA O RECEBIMENTO DOS COMPONENTES DIGITAIS US010################################################ |
| 123 | $arrObjTramite = $this->objProcessoEletronicoRN->consultarTramites($parNumIdentificacaoTramite); | 123 | $arrObjTramite = $this->objProcessoEletronicoRN->consultarTramites($parNumIdentificacaoTramite); |
| 124 | $objTramite = $arrObjTramite[0]; | 124 | $objTramite = $arrObjTramite[0]; |
| 125 | - | 125 | + |
| 126 | //Obtém lista de componentes digitais que precisam ser obtidos | 126 | //Obtém lista de componentes digitais que precisam ser obtidos |
| 127 | if(!is_array($objTramite->componenteDigitalPendenteDeRecebimento)){ | 127 | if(!is_array($objTramite->componenteDigitalPendenteDeRecebimento)){ |
| 128 | $objTramite->componenteDigitalPendenteDeRecebimento = array($objTramite->componenteDigitalPendenteDeRecebimento); | 128 | $objTramite->componenteDigitalPendenteDeRecebimento = array($objTramite->componenteDigitalPendenteDeRecebimento); |
| 129 | } | 129 | } |
| 130 | 130 | ||
| 131 | - //Faz a validação do tamanho e espécie dos componentes digitais | 131 | + //Faz a validação do tamanho e espécie dos componentes digitais |
| 132 | $this->validarComponentesDigitais($objProcesso, $parNumIdentificacaoTramite); | 132 | $this->validarComponentesDigitais($objProcesso, $parNumIdentificacaoTramite); |
| 133 | - | 133 | + |
| 134 | //Faz a validação da extensão dos componentes digitais a serem recebidos | 134 | //Faz a validação da extensão dos componentes digitais a serem recebidos |
| 135 | $this->validarExtensaoComponentesDigitais($parNumIdentificacaoTramite, $objProcesso); | 135 | $this->validarExtensaoComponentesDigitais($parNumIdentificacaoTramite, $objProcesso); |
| 136 | - | ||
| 137 | - //Faz a validação das permissões de leitura e escrita | 136 | + |
| 137 | + //Faz a validação das permissões de leitura e escrita | ||
| 138 | $this->verificarPermissoesDiretorios($parNumIdentificacaoTramite); | 138 | $this->verificarPermissoesDiretorios($parNumIdentificacaoTramite); |
| 139 | - | 139 | + |
| 140 | $arrStrNomeDocumento = $this->listarMetaDadosComponentesDigitais($objProcesso); | 140 | $arrStrNomeDocumento = $this->listarMetaDadosComponentesDigitais($objProcesso); |
| 141 | - | 141 | + |
| 142 | //Instancia a RN que faz o recebimento dos componentes digitais | 142 | //Instancia a RN que faz o recebimento dos componentes digitais |
| 143 | $receberComponenteDigitalRN = new ReceberComponenteDigitalRN(); | 143 | $receberComponenteDigitalRN = new ReceberComponenteDigitalRN(); |
| 144 | 144 | ||
| 145 | //Cria o array que receberá os anexos após os arquivos físicos serem salvos | 145 | //Cria o array que receberá os anexos após os arquivos físicos serem salvos |
| 146 | $arrAnexosComponentes = array(); | 146 | $arrAnexosComponentes = array(); |
| 147 | - | 147 | + |
| 148 | //Cria o array com a lista de hash | 148 | //Cria o array com a lista de hash |
| 149 | $arrayHash = array(); | 149 | $arrayHash = array(); |
| 150 | - | ||
| 151 | - | 150 | + |
| 151 | + | ||
| 152 | //Percorre os componentes que precisam ser recebidos | 152 | //Percorre os componentes que precisam ser recebidos |
| 153 | foreach($objTramite->componenteDigitalPendenteDeRecebimento as $key => $componentePendente){ | 153 | foreach($objTramite->componenteDigitalPendenteDeRecebimento as $key => $componentePendente){ |
| 154 | - | 154 | + |
| 155 | if(!is_null($componentePendente)){ | 155 | if(!is_null($componentePendente)){ |
| 156 | - | 156 | + |
| 157 | //Adiciona o hash do componente digital ao array | 157 | //Adiciona o hash do componente digital ao array |
| 158 | $arrayHash[] = $componentePendente; | 158 | $arrayHash[] = $componentePendente; |
| 159 | - | 159 | + |
| 160 | //Obter os dados do componente digital | 160 | //Obter os dados do componente digital |
| 161 | $objComponenteDigital = $this->objProcessoEletronicoRN->receberComponenteDigital($parNumIdentificacaoTramite, $componentePendente, $objTramite->protocolo); | 161 | $objComponenteDigital = $this->objProcessoEletronicoRN->receberComponenteDigital($parNumIdentificacaoTramite, $componentePendente, $objTramite->protocolo); |
| 162 | //Copia o componente para a pasta temporária | 162 | //Copia o componente para a pasta temporária |
| 163 | $arrAnexosComponentes[$key][$componentePendente] = $receberComponenteDigitalRN->copiarComponenteDigitalPastaTemporaria($objComponenteDigital); | 163 | $arrAnexosComponentes[$key][$componentePendente] = $receberComponenteDigitalRN->copiarComponenteDigitalPastaTemporaria($objComponenteDigital); |
| 164 | $arrAnexosComponentes[$key]['recebido'] = false; | 164 | $arrAnexosComponentes[$key]['recebido'] = false; |
| 165 | - | 165 | + |
| 166 | //Valida a integridade do hash | 166 | //Valida a integridade do hash |
| 167 | $receberComponenteDigitalRN->validarIntegridadeDoComponenteDigital($arrAnexosComponentes[$key][$componentePendente], $componentePendente, $parNumIdentificacaoTramite); | 167 | $receberComponenteDigitalRN->validarIntegridadeDoComponenteDigital($arrAnexosComponentes[$key][$componentePendente], $componentePendente, $parNumIdentificacaoTramite); |
| 168 | } | 168 | } |
| 169 | } | 169 | } |
| 170 | - | 170 | + |
| 171 | if(count($arrAnexosComponentes) > 0){ | 171 | if(count($arrAnexosComponentes) > 0){ |
| 172 | - | 172 | + |
| 173 | $receberComponenteDigitalRN->setArrAnexos($arrAnexosComponentes); | 173 | $receberComponenteDigitalRN->setArrAnexos($arrAnexosComponentes); |
| 174 | } | 174 | } |
| 175 | #############################TERMINA O RECEBIMENTO DOS COMPONENTES DIGITAIS US010################################################ | 175 | #############################TERMINA O RECEBIMENTO DOS COMPONENTES DIGITAIS US010################################################ |
| 176 | - | 176 | + |
| 177 | $arrObjTramite = $this->objProcessoEletronicoRN->consultarTramites($parNumIdentificacaoTramite); | 177 | $arrObjTramite = $this->objProcessoEletronicoRN->consultarTramites($parNumIdentificacaoTramite); |
| 178 | $objTramite = $arrObjTramite[0]; | 178 | $objTramite = $arrObjTramite[0]; |
| 179 | - | 179 | + |
| 180 | //Verifica se o trâmite está recusado | 180 | //Verifica se o trâmite está recusado |
| 181 | if($objTramite->situacaoAtual == ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO) { | 181 | if($objTramite->situacaoAtual == ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO) { |
| 182 | return; | 182 | return; |
| 183 | } | 183 | } |
| 184 | - | 184 | + |
| 185 | $objProcedimentoDTO = $this->registrarProcesso($strNumeroRegistro, $parNumIdentificacaoTramite, $objProcesso, $objMetadadosProcedimento); | 185 | $objProcedimentoDTO = $this->registrarProcesso($strNumeroRegistro, $parNumIdentificacaoTramite, $objProcesso, $objMetadadosProcedimento); |
| 186 | 186 | ||
| 187 | - | ||
| 188 | 187 | ||
| 189 | - | ||
| 190 | - | 188 | + |
| 189 | + | ||
| 190 | + | ||
| 191 | // @join_tec US008.08 (#23092) | 191 | // @join_tec US008.08 (#23092) |
| 192 | $this->objProcedimentoAndamentoRN->setOpts($objProcedimentoDTO->getDblIdProcedimento(), $parNumIdentificacaoTramite, ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_RECEBIDO)); | 192 | $this->objProcedimentoAndamentoRN->setOpts($objProcedimentoDTO->getDblIdProcedimento(), $parNumIdentificacaoTramite, ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_RECEBIDO)); |
| 193 | - $this->objProcedimentoAndamentoRN->cadastrar('Obtendo metadados do processo', 'S'); | 193 | + $this->objProcedimentoAndamentoRN->cadastrar('Obtendo metadados do processo', 'S'); |
| 194 | 194 | ||
| 195 | //Verificar se procedimento já existia na base de dados do sistema | 195 | //Verificar se procedimento já existia na base de dados do sistema |
| 196 | //$dblIdProcedimento = $this->consultarProcedimentoExistente($strNumeroRegistro, $strProtocolo); | 196 | //$dblIdProcedimento = $this->consultarProcedimentoExistente($strNumeroRegistro, $strProtocolo); |
| 197 | 197 | ||
| 198 | //if(isset($dblIdProcedimento)){ | 198 | //if(isset($dblIdProcedimento)){ |
| 199 | //TODO: Tratar situação em que o processo (NUP) já existia na base do sistema mas não havia nenhum NRE registrado para ele | 199 | //TODO: Tratar situação em que o processo (NUP) já existia na base do sistema mas não havia nenhum NRE registrado para ele |
| 200 | - // $objProcedimentoDTO = $this->atualizarProcedimento($dblIdProcedimento, $objMetadadosProcedimento, $objProcesso); | 200 | + // $objProcedimentoDTO = $this->atualizarProcedimento($dblIdProcedimento, $objMetadadosProcedimento, $objProcesso); |
| 201 | //} | 201 | //} |
| 202 | - //else { | 202 | + //else { |
| 203 | //TODO: Gerar Procedimento com status BLOQUEADO, aguardando o recebimento dos componentes digitais | 203 | //TODO: Gerar Procedimento com status BLOQUEADO, aguardando o recebimento dos componentes digitais |
| 204 | // $objProcedimentoDTO = $this->gerarProcedimento($objMetadadosProcedimento, $objProcesso); | 204 | // $objProcedimentoDTO = $this->gerarProcedimento($objMetadadosProcedimento, $objProcesso); |
| 205 | //} | 205 | //} |
| 206 | 206 | ||
| 207 | //TODO: Fazer o envio de cada um dos procedimentos apensados (Processo principal e seus apensados, caso exista) | 207 | //TODO: Fazer o envio de cada um dos procedimentos apensados (Processo principal e seus apensados, caso exista) |
| 208 | - //... | 208 | + //... |
| 209 | //TODO: Parei aqui!!! Recebimento de processos apensados | 209 | //TODO: Parei aqui!!! Recebimento de processos apensados |
| 210 | - | ||
| 211 | - $objProcessoEletronicoDTO = $this->objProcessoEletronicoRN->cadastrarTramiteDeProcesso($objProcedimentoDTO->getDblIdProcedimento(), | 210 | + |
| 211 | + $objProcessoEletronicoDTO = $this->objProcessoEletronicoRN->cadastrarTramiteDeProcesso($objProcedimentoDTO->getDblIdProcedimento(), | ||
| 212 | $strNumeroRegistro, $parNumIdentificacaoTramite, null, $objProcesso); | 212 | $strNumeroRegistro, $parNumIdentificacaoTramite, null, $objProcesso); |
| 213 | - | ||
| 214 | 213 | ||
| 215 | - | 214 | + |
| 215 | + | ||
| 216 | //TODO: Passar implementação para outra classe de negócio | 216 | //TODO: Passar implementação para outra classe de negócio |
| 217 | - //Verifica se o tramite se encontra na situação correta | 217 | + //Verifica se o tramite se encontra na situação correta |
| 218 | $arrObjTramite = $this->objProcessoEletronicoRN->consultarTramites($parNumIdentificacaoTramite); | 218 | $arrObjTramite = $this->objProcessoEletronicoRN->consultarTramites($parNumIdentificacaoTramite); |
| 219 | if(!isset($arrObjTramite) || count($arrObjTramite) != 1) { | 219 | if(!isset($arrObjTramite) || count($arrObjTramite) != 1) { |
| 220 | throw new InfraException("Trâmite não pode ser localizado pelo identificado $parNumIdentificacaoTramite."); | 220 | throw new InfraException("Trâmite não pode ser localizado pelo identificado $parNumIdentificacaoTramite."); |
| @@ -222,18 +222,18 @@ class ReceberProcedimentoRN extends InfraRN | @@ -222,18 +222,18 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 222 | 222 | ||
| 223 | 223 | ||
| 224 | $objTramite = $arrObjTramite[0]; | 224 | $objTramite = $arrObjTramite[0]; |
| 225 | - | 225 | + |
| 226 | 226 | ||
| 227 | if($objTramite->situacaoAtual != ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_COMPONENTES_RECEBIDOS_DESTINATARIO) { | 227 | if($objTramite->situacaoAtual != ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_COMPONENTES_RECEBIDOS_DESTINATARIO) { |
| 228 | return; | 228 | return; |
| 229 | } | 229 | } |
| 230 | - | ||
| 231 | 230 | ||
| 232 | - | 231 | + |
| 232 | + | ||
| 233 | // throw new InfraException("COMPONENTES DIGITAIS A SEREM ANEXADOS: ".var_export($arrayHash, true)); | 233 | // throw new InfraException("COMPONENTES DIGITAIS A SEREM ANEXADOS: ".var_export($arrayHash, true)); |
| 234 | if(count($arrayHash) > 0){ | 234 | if(count($arrayHash) > 0){ |
| 235 | - | ||
| 236 | - //Obter dados dos componetes digitais | 235 | + |
| 236 | + //Obter dados dos componetes digitais | ||
| 237 | $objComponenteDigitalDTO = new ComponenteDigitalDTO(); | 237 | $objComponenteDigitalDTO = new ComponenteDigitalDTO(); |
| 238 | $objComponenteDigitalDTO->setStrNumeroRegistro($strNumeroRegistro); | 238 | $objComponenteDigitalDTO->setStrNumeroRegistro($strNumeroRegistro); |
| 239 | $objComponenteDigitalDTO->setNumIdTramite($parNumIdentificacaoTramite); | 239 | $objComponenteDigitalDTO->setNumIdTramite($parNumIdentificacaoTramite); |
| @@ -249,54 +249,54 @@ class ReceberProcedimentoRN extends InfraRN | @@ -249,54 +249,54 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 249 | $objComponenteDigitalDTO->retNumIdTramite(); | 249 | $objComponenteDigitalDTO->retNumIdTramite(); |
| 250 | $objComponenteDigitalDTO->retStrNome(); | 250 | $objComponenteDigitalDTO->retStrNome(); |
| 251 | $objComponenteDigitalDTO->retStrStaEstadoProtocolo(); | 251 | $objComponenteDigitalDTO->retStrStaEstadoProtocolo(); |
| 252 | - | 252 | + |
| 253 | $objComponenteDigitalBD = new ComponenteDigitalBD($this->getObjInfraIBanco()); | 253 | $objComponenteDigitalBD = new ComponenteDigitalBD($this->getObjInfraIBanco()); |
| 254 | $arrObjComponentesDigitaisDTO = $objComponenteDigitalBD->listar($objComponenteDigitalDTO); | 254 | $arrObjComponentesDigitaisDTO = $objComponenteDigitalBD->listar($objComponenteDigitalDTO); |
| 255 | - | 255 | + |
| 256 | // throw new InfraException('Componentes encontrados: '.var_export($arrObjComponentesDigitaisDTO, true)); | 256 | // throw new InfraException('Componentes encontrados: '.var_export($arrObjComponentesDigitaisDTO, true)); |
| 257 | - | 257 | + |
| 258 | if ($objComponenteDigitalBD->contar($objComponenteDigitalDTO) > 0) { | 258 | if ($objComponenteDigitalBD->contar($objComponenteDigitalDTO) > 0) { |
| 259 | - | 259 | + |
| 260 | $objReceberComponenteDigitalRN = $receberComponenteDigitalRN; | 260 | $objReceberComponenteDigitalRN = $receberComponenteDigitalRN; |
| 261 | - | 261 | + |
| 262 | foreach($arrObjComponentesDigitaisDTO as $objComponenteDigitalDTOEnviado) { | 262 | foreach($arrObjComponentesDigitaisDTO as $objComponenteDigitalDTOEnviado) { |
| 263 | if($objComponenteDigitalDTOEnviado->getStrStaEstadoProtocolo() != ProtocoloRN::$TE_DOCUMENTO_CANCELADO){ | 263 | if($objComponenteDigitalDTOEnviado->getStrStaEstadoProtocolo() != ProtocoloRN::$TE_DOCUMENTO_CANCELADO){ |
| 264 | - $strHash = $objComponenteDigitalDTOEnviado->getStrHashConteudo(); | 264 | + $strHash = $objComponenteDigitalDTOEnviado->getStrHashConteudo(); |
| 265 | $strNomeDocumento = (array_key_exists($strHash, $arrStrNomeDocumento)) ? $arrStrNomeDocumento[$strHash]['especieNome'] : '[Desconhecido]'; | 265 | $strNomeDocumento = (array_key_exists($strHash, $arrStrNomeDocumento)) ? $arrStrNomeDocumento[$strHash]['especieNome'] : '[Desconhecido]'; |
| 266 | - | 266 | + |
| 267 | $objReceberComponenteDigitalRN->receberComponenteDigital($objComponenteDigitalDTOEnviado); | 267 | $objReceberComponenteDigitalRN->receberComponenteDigital($objComponenteDigitalDTOEnviado); |
| 268 | 268 | ||
| 269 | // @join_tec US008.09 (#23092) | 269 | // @join_tec US008.09 (#23092) |
| 270 | $this->objProcedimentoAndamentoRN->cadastrar(sprintf('Recebendo %s %s', $strNomeDocumento, $objComponenteDigitalDTOEnviado->getStrProtocoloDocumentoFormatado()), 'S'); | 270 | $this->objProcedimentoAndamentoRN->cadastrar(sprintf('Recebendo %s %s', $strNomeDocumento, $objComponenteDigitalDTOEnviado->getStrProtocoloDocumentoFormatado()), 'S'); |
| 271 | } | 271 | } |
| 272 | - | 272 | + |
| 273 | } | 273 | } |
| 274 | // @join_tec US008.10 (#23092) | 274 | // @join_tec US008.10 (#23092) |
| 275 | $this->objProcedimentoAndamentoRN->cadastrar('Todos os componentes digitais foram recebidos', 'S'); | 275 | $this->objProcedimentoAndamentoRN->cadastrar('Todos os componentes digitais foram recebidos', 'S'); |
| 276 | 276 | ||
| 277 | }else{ | 277 | }else{ |
| 278 | $this->objProcedimentoAndamentoRN->cadastrar('Nenhum componente digital para receber', 'S'); | 278 | $this->objProcedimentoAndamentoRN->cadastrar('Nenhum componente digital para receber', 'S'); |
| 279 | - } | 279 | + } |
| 280 | } | 280 | } |
| 281 | } | 281 | } |
| 282 | - | 282 | + |
| 283 | //$this->fecharProcedimentoEmOutraUnidades($objProcedimentoDTO, $objMetadadosProcedimento); | 283 | //$this->fecharProcedimentoEmOutraUnidades($objProcedimentoDTO, $objMetadadosProcedimento); |
| 284 | - | 284 | + |
| 285 | $objEnviarReciboTramiteRN = new EnviarReciboTramiteRN(); | 285 | $objEnviarReciboTramiteRN = new EnviarReciboTramiteRN(); |
| 286 | $objEnviarReciboTramiteRN->enviarReciboTramiteProcesso($parNumIdentificacaoTramite, $arrayHash); | 286 | $objEnviarReciboTramiteRN->enviarReciboTramiteProcesso($parNumIdentificacaoTramite, $arrayHash); |
| 287 | - | 287 | + |
| 288 | $objPenTramiteProcessadoRN = new PenTramiteProcessadoRN(PenTramiteProcessadoRN::STR_TIPO_PROCESSO); | 288 | $objPenTramiteProcessadoRN = new PenTramiteProcessadoRN(PenTramiteProcessadoRN::STR_TIPO_PROCESSO); |
| 289 | $objPenTramiteProcessadoRN->setRecebido($parNumIdentificacaoTramite); | 289 | $objPenTramiteProcessadoRN->setRecebido($parNumIdentificacaoTramite); |
| 290 | - | 290 | + |
| 291 | } | 291 | } |
| 292 | - | 292 | + |
| 293 | /** | 293 | /** |
| 294 | * Retorna um array com alguns metadados, onde o indice de é o hash do arquivo | 294 | * Retorna um array com alguns metadados, onde o indice de é o hash do arquivo |
| 295 | - * | 295 | + * |
| 296 | * @return array[String] | 296 | * @return array[String] |
| 297 | */ | 297 | */ |
| 298 | private function listarMetaDadosComponentesDigitais($objProcesso){ | 298 | private function listarMetaDadosComponentesDigitais($objProcesso){ |
| 299 | - | 299 | + |
| 300 | $objMapBD = new GenericoBD($this->getObjInfraIBanco()); | 300 | $objMapBD = new GenericoBD($this->getObjInfraIBanco()); |
| 301 | $arrMetadadoDocumento = array(); | 301 | $arrMetadadoDocumento = array(); |
| 302 | $arrObjDocumento = is_array($objProcesso->documento) ? $objProcesso->documento : array($objProcesso->documento); | 302 | $arrObjDocumento = is_array($objProcesso->documento) ? $objProcesso->documento : array($objProcesso->documento); |
| @@ -304,7 +304,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -304,7 +304,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 304 | foreach($arrObjDocumento as $objDocumento){ | 304 | foreach($arrObjDocumento as $objDocumento){ |
| 305 | 305 | ||
| 306 | $strHash = ProcessoEletronicoRN::getHashFromMetaDados($objDocumento->componenteDigital->hash); | 306 | $strHash = ProcessoEletronicoRN::getHashFromMetaDados($objDocumento->componenteDigital->hash); |
| 307 | - | 307 | + |
| 308 | $objMapDTO = new PenRelTipoDocMapRecebidoDTO(true); | 308 | $objMapDTO = new PenRelTipoDocMapRecebidoDTO(true); |
| 309 | $objMapDTO->setNumMaxRegistrosRetorno(1); | 309 | $objMapDTO->setNumMaxRegistrosRetorno(1); |
| 310 | $objMapDTO->setNumCodigoEspecie($objDocumento->especie->codigo); | 310 | $objMapDTO->setNumCodigoEspecie($objDocumento->especie->codigo); |
| @@ -318,15 +318,15 @@ class ReceberProcedimentoRN extends InfraRN | @@ -318,15 +318,15 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 318 | else { | 318 | else { |
| 319 | $strNomeDocumento = $objMapDTO->getStrNomeSerie(); | 319 | $strNomeDocumento = $objMapDTO->getStrNomeSerie(); |
| 320 | } | 320 | } |
| 321 | - | 321 | + |
| 322 | $arrMetadadoDocumento[$strHash] = array( | 322 | $arrMetadadoDocumento[$strHash] = array( |
| 323 | 'especieNome' => $strNomeDocumento | 323 | 'especieNome' => $strNomeDocumento |
| 324 | - ); | 324 | + ); |
| 325 | } | 325 | } |
| 326 | - | 326 | + |
| 327 | return $arrMetadadoDocumento; | 327 | return $arrMetadadoDocumento; |
| 328 | } | 328 | } |
| 329 | - | 329 | + |
| 330 | /** | 330 | /** |
| 331 | * Valida cada componente digital, se não algum não for aceito recusa o tramite | 331 | * Valida cada componente digital, se não algum não for aceito recusa o tramite |
| 332 | * do procedimento para esta unidade | 332 | * do procedimento para esta unidade |
| @@ -334,7 +334,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -334,7 +334,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 334 | private function validarComponentesDigitais($objProcesso, $parNumIdentificacaoTramite){ | 334 | private function validarComponentesDigitais($objProcesso, $parNumIdentificacaoTramite){ |
| 335 | 335 | ||
| 336 | $arrObjDocumentos = is_array($objProcesso->documento) ? $objProcesso->documento : array($objProcesso->documento); | 336 | $arrObjDocumentos = is_array($objProcesso->documento) ? $objProcesso->documento : array($objProcesso->documento); |
| 337 | - | 337 | + |
| 338 | foreach($arrObjDocumentos as $objDocument){ | 338 | foreach($arrObjDocumentos as $objDocument){ |
| 339 | 339 | ||
| 340 | $objPenRelTipoDocMapEnviadoDTO = new PenRelTipoDocMapRecebidoDTO(); | 340 | $objPenRelTipoDocMapEnviadoDTO = new PenRelTipoDocMapRecebidoDTO(); |
| @@ -349,7 +349,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -349,7 +349,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 349 | if($numContador <= 0) { | 349 | if($numContador <= 0) { |
| 350 | $this->objProcessoEletronicoRN->recusarTramite($parNumIdentificacaoTramite, sprintf('Documento do tipo %s não está mapeado', utf8_decode($objDocument->especie->nomeNoProdutor)), ProcessoEletronicoRN::MTV_RCSR_TRAM_CD_ESPECIE_NAO_MAPEADA); | 350 | $this->objProcessoEletronicoRN->recusarTramite($parNumIdentificacaoTramite, sprintf('Documento do tipo %s não está mapeado', utf8_decode($objDocument->especie->nomeNoProdutor)), ProcessoEletronicoRN::MTV_RCSR_TRAM_CD_ESPECIE_NAO_MAPEADA); |
| 351 | throw new InfraException(sprintf('Documento do tipo %s não está mapeado. Motivo da Recusa no Barramento: %s', $objDocument->especie->nomeNoProdutor, ProcessoEletronicoRN::$MOTIVOS_RECUSA[ProcessoEletronicoRN::MTV_RCSR_TRAM_CD_ESPECIE_NAO_MAPEADA])); | 351 | throw new InfraException(sprintf('Documento do tipo %s não está mapeado. Motivo da Recusa no Barramento: %s', $objDocument->especie->nomeNoProdutor, ProcessoEletronicoRN::$MOTIVOS_RECUSA[ProcessoEletronicoRN::MTV_RCSR_TRAM_CD_ESPECIE_NAO_MAPEADA])); |
| 352 | - } | 352 | + } |
| 353 | } | 353 | } |
| 354 | 354 | ||
| 355 | 355 | ||
| @@ -362,10 +362,10 @@ class ReceberProcedimentoRN extends InfraRN | @@ -362,10 +362,10 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 362 | foreach($arrObjDocumentos as $objDocument) { | 362 | foreach($arrObjDocumentos as $objDocument) { |
| 363 | 363 | ||
| 364 | 364 | ||
| 365 | - if (is_null($objDocument->componenteDigital->tamanhoEmBytes) || $objDocument->componenteDigital->tamanhoEmBytes == 0){ | ||
| 366 | - | 365 | + if (is_null($objDocument->componenteDigital->tamanhoEmBytes) || $objDocument->componenteDigital->tamanhoEmBytes == 0){ |
| 366 | + | ||
| 367 | throw new InfraException('Tamanho de componente digital não informado.', null, 'RECUSA: '.ProcessoEletronicoRN::MTV_RCSR_TRAM_CD_OUTROU); | 367 | throw new InfraException('Tamanho de componente digital não informado.', null, 'RECUSA: '.ProcessoEletronicoRN::MTV_RCSR_TRAM_CD_OUTROU); |
| 368 | - | 368 | + |
| 369 | } | 369 | } |
| 370 | 370 | ||
| 371 | if($objDocument->componenteDigital->tamanhoEmBytes > ($numTamDocExterno * 1024 * 1024)){ | 371 | if($objDocument->componenteDigital->tamanhoEmBytes > ($numTamDocExterno * 1024 * 1024)){ |
| @@ -376,20 +376,20 @@ class ReceberProcedimentoRN extends InfraRN | @@ -376,20 +376,20 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 376 | 376 | ||
| 377 | } | 377 | } |
| 378 | } | 378 | } |
| 379 | - | 379 | + |
| 380 | } | 380 | } |
| 381 | 381 | ||
| 382 | 382 | ||
| 383 | private function registrarProcesso($parStrNumeroRegistro, $parNumIdentificacaoTramite, $parObjProcesso, $parObjMetadadosProcedimento) | 383 | private function registrarProcesso($parStrNumeroRegistro, $parNumIdentificacaoTramite, $parObjProcesso, $parObjMetadadosProcedimento) |
| 384 | { | 384 | { |
| 385 | - | ||
| 386 | - | 385 | + |
| 386 | + | ||
| 387 | // Validação dos dados do processo recebido | 387 | // Validação dos dados do processo recebido |
| 388 | $objInfraException = new InfraException(); | 388 | $objInfraException = new InfraException(); |
| 389 | $this->validarDadosProcesso($objInfraException, $parObjProcesso); | 389 | $this->validarDadosProcesso($objInfraException, $parObjProcesso); |
| 390 | $this->validarDadosDocumentos($objInfraException, $parObjProcesso); | 390 | $this->validarDadosDocumentos($objInfraException, $parObjProcesso); |
| 391 | 391 | ||
| 392 | - //TODO: Regra de Negócio - Processos recebidos pelo Barramento não poderão disponibilizar a opção de reordenação e cancelamento de documentos | 392 | + //TODO: Regra de Negócio - Processos recebidos pelo Barramento não poderão disponibilizar a opção de reordenação e cancelamento de documentos |
| 393 | //para o usuário final, mesmo possuindo permissão para isso | 393 | //para o usuário final, mesmo possuindo permissão para isso |
| 394 | 394 | ||
| 395 | $objInfraException->lancarValidacoes(); | 395 | $objInfraException->lancarValidacoes(); |
| @@ -398,18 +398,18 @@ class ReceberProcedimentoRN extends InfraRN | @@ -398,18 +398,18 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 398 | $dblIdProcedimento = $this->consultarProcedimentoExistente($parStrNumeroRegistro, $parObjProcesso->protocolo); | 398 | $dblIdProcedimento = $this->consultarProcedimentoExistente($parStrNumeroRegistro, $parObjProcesso->protocolo); |
| 399 | 399 | ||
| 400 | if(isset($dblIdProcedimento)){ | 400 | if(isset($dblIdProcedimento)){ |
| 401 | - | 401 | + |
| 402 | //TODO: Tratar situação em que o processo (NUP) já existia na base do sistema mas não havia nenhum NRE registrado para ele | 402 | //TODO: Tratar situação em que o processo (NUP) já existia na base do sistema mas não havia nenhum NRE registrado para ele |
| 403 | - $objProcedimentoDTO = $this->atualizarProcedimento($dblIdProcedimento, $parObjMetadadosProcedimento, $parObjProcesso); | 403 | + $objProcedimentoDTO = $this->atualizarProcedimento($dblIdProcedimento, $parObjMetadadosProcedimento, $parObjProcesso); |
| 404 | } | 404 | } |
| 405 | - else { | ||
| 406 | - | 405 | + else { |
| 406 | + | ||
| 407 | //TODO: Gerar Procedimento com status BLOQUEADO, aguardando o recebimento dos componentes digitais | 407 | //TODO: Gerar Procedimento com status BLOQUEADO, aguardando o recebimento dos componentes digitais |
| 408 | $objProcedimentoDTO = $this->gerarProcedimento($parObjMetadadosProcedimento, $parObjProcesso); | 408 | $objProcedimentoDTO = $this->gerarProcedimento($parObjMetadadosProcedimento, $parObjProcesso); |
| 409 | } | 409 | } |
| 410 | 410 | ||
| 411 | //TODO: Fazer o envio de cada um dos procedimentos apensados (Processo principal e seus apensados, caso exista) | 411 | //TODO: Fazer o envio de cada um dos procedimentos apensados (Processo principal e seus apensados, caso exista) |
| 412 | - //... | 412 | + //... |
| 413 | 413 | ||
| 414 | //Chamada recursiva para registro dos processos apensados | 414 | //Chamada recursiva para registro dos processos apensados |
| 415 | if(isset($objProcesso->processoApensado)) { | 415 | if(isset($objProcesso->processoApensado)) { |
| @@ -419,7 +419,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -419,7 +419,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 419 | 419 | ||
| 420 | foreach ($objProcesso->processoApensado as $objProcessoApensado) { | 420 | foreach ($objProcesso->processoApensado as $objProcessoApensado) { |
| 421 | $this->registrarProcesso($parStrNumeroRegistro, $parNumIdentificacaoTramite, $objProcessoApensado, $parObjMetadadosProcedimento); | 421 | $this->registrarProcesso($parStrNumeroRegistro, $parNumIdentificacaoTramite, $objProcessoApensado, $parObjMetadadosProcedimento); |
| 422 | - } | 422 | + } |
| 423 | } | 423 | } |
| 424 | 424 | ||
| 425 | return $objProcedimentoDTO; | 425 | return $objProcedimentoDTO; |
| @@ -437,7 +437,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -437,7 +437,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 437 | 437 | ||
| 438 | private function consultarProcedimentoExistente($parStrNumeroRegistro, $parStrProtocolo = null) { | 438 | private function consultarProcedimentoExistente($parStrNumeroRegistro, $parStrProtocolo = null) { |
| 439 | 439 | ||
| 440 | - $dblIdProcedimento = null; | 440 | + $dblIdProcedimento = null; |
| 441 | 441 | ||
| 442 | $objProcessoEletronicoDTO = new ProcessoEletronicoDTO(); | 442 | $objProcessoEletronicoDTO = new ProcessoEletronicoDTO(); |
| 443 | $objProcessoEletronicoDTO->retDblIdProcedimento(); | 443 | $objProcessoEletronicoDTO->retDblIdProcedimento(); |
| @@ -455,31 +455,31 @@ class ReceberProcedimentoRN extends InfraRN | @@ -455,31 +455,31 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 455 | } | 455 | } |
| 456 | 456 | ||
| 457 | private function atualizarProcedimento($parDblIdProcedimento, $objMetadadosProcedimento, $objProcesso){ | 457 | private function atualizarProcedimento($parDblIdProcedimento, $objMetadadosProcedimento, $objProcesso){ |
| 458 | - | ||
| 459 | - | 458 | + |
| 459 | + | ||
| 460 | if(!isset($parDblIdProcedimento)){ | 460 | if(!isset($parDblIdProcedimento)){ |
| 461 | throw new InfraException('Parâmetro $parDblIdProcedimento não informado.'); | 461 | throw new InfraException('Parâmetro $parDblIdProcedimento não informado.'); |
| 462 | - } | 462 | + } |
| 463 | 463 | ||
| 464 | if(!isset($objMetadadosProcedimento)){ | 464 | if(!isset($objMetadadosProcedimento)){ |
| 465 | throw new InfraException('Parâmetro $objMetadadosProcedimento não informado.'); | 465 | throw new InfraException('Parâmetro $objMetadadosProcedimento não informado.'); |
| 466 | } | 466 | } |
| 467 | - | ||
| 468 | - | 467 | + |
| 468 | + | ||
| 469 | if ($this->destinatarioReal) { | 469 | if ($this->destinatarioReal) { |
| 470 | $objDestinatario = $this->destinatarioReal; | 470 | $objDestinatario = $this->destinatarioReal; |
| 471 | } else { | 471 | } else { |
| 472 | $objDestinatario = $objMetadadosProcedimento->metadados->destinatario; | 472 | $objDestinatario = $objMetadadosProcedimento->metadados->destinatario; |
| 473 | } | 473 | } |
| 474 | - | 474 | + |
| 475 | //TODO: Refatorar código para criar método de pesquisa do procedimento e reutilizá-la | 475 | //TODO: Refatorar código para criar método de pesquisa do procedimento e reutilizá-la |
| 476 | 476 | ||
| 477 | //$objProcedimentoDTO = new ProcedimentoDTO(); | 477 | //$objProcedimentoDTO = new ProcedimentoDTO(); |
| 478 | //$objProcedimentoDTO->setDblIdProcedimento($parDblIdProcedimento); | 478 | //$objProcedimentoDTO->setDblIdProcedimento($parDblIdProcedimento); |
| 479 | //$objProcedimentoDTO->retTodos(); | 479 | //$objProcedimentoDTO->retTodos(); |
| 480 | - //$objProcedimentoDTO->retStrProtocoloProcedimentoFormatado(); | 480 | + //$objProcedimentoDTO->retStrProtocoloProcedimentoFormatado(); |
| 481 | //$objProcedimentoDTO->setStrSinDocTodos('S'); | 481 | //$objProcedimentoDTO->setStrSinDocTodos('S'); |
| 482 | - | 482 | + |
| 483 | //$objProcedimentoRN = new ProcedimentoRN(); | 483 | //$objProcedimentoRN = new ProcedimentoRN(); |
| 484 | //$arrObjProcedimentoDTO = $objProcedimentoRN->listarCompleto($objProcedimentoDTO); | 484 | //$arrObjProcedimentoDTO = $objProcedimentoRN->listarCompleto($objProcedimentoDTO); |
| 485 | 485 | ||
| @@ -488,25 +488,25 @@ class ReceberProcedimentoRN extends InfraRN | @@ -488,25 +488,25 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 488 | //} | 488 | //} |
| 489 | 489 | ||
| 490 | //$objProcedimentoDTO = $arrObjProcedimentoDTO[0]; | 490 | //$objProcedimentoDTO = $arrObjProcedimentoDTO[0]; |
| 491 | - | 491 | + |
| 492 | $objAtividadeDTO = new AtividadeDTO(); | 492 | $objAtividadeDTO = new AtividadeDTO(); |
| 493 | $objAtividadeDTO->setStrIdTarefaModuloTarefa(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO); | 493 | $objAtividadeDTO->setStrIdTarefaModuloTarefa(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO); |
| 494 | $objAtividadeDTO->setDblIdProcedimentoProtocolo($parDblIdProcedimento); | 494 | $objAtividadeDTO->setDblIdProcedimentoProtocolo($parDblIdProcedimento); |
| 495 | $objAtividadeDTO->setOrd('Conclusao', InfraDTO::$TIPO_ORDENACAO_DESC); | 495 | $objAtividadeDTO->setOrd('Conclusao', InfraDTO::$TIPO_ORDENACAO_DESC); |
| 496 | $objAtividadeDTO->setNumMaxRegistrosRetorno(1); | 496 | $objAtividadeDTO->setNumMaxRegistrosRetorno(1); |
| 497 | $objAtividadeDTO->retNumIdUnidade(); | 497 | $objAtividadeDTO->retNumIdUnidade(); |
| 498 | - | 498 | + |
| 499 | $objAtividadeRN = new AtividadeRN(); | 499 | $objAtividadeRN = new AtividadeRN(); |
| 500 | $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); | 500 | $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); |
| 501 | $numIdUnidade = SessaoSEI::getInstance()->getNumIdUnidadeAtual(); | 501 | $numIdUnidade = SessaoSEI::getInstance()->getNumIdUnidadeAtual(); |
| 502 | - | 502 | + |
| 503 | if($arrObjAtividadeDTO){ | 503 | if($arrObjAtividadeDTO){ |
| 504 | $objAtividadeDTO = $arrObjAtividadeDTO[0]; | 504 | $objAtividadeDTO = $arrObjAtividadeDTO[0]; |
| 505 | $numIdUnidade = $objAtividadeDTO->getNumIdUnidade(); | 505 | $numIdUnidade = $objAtividadeDTO->getNumIdUnidade(); |
| 506 | } | 506 | } |
| 507 | - | 507 | + |
| 508 | $objSeiRN = new SeiRN(); | 508 | $objSeiRN = new SeiRN(); |
| 509 | - | 509 | + |
| 510 | $objAtividadeDTO = new AtividadeDTO(); | 510 | $objAtividadeDTO = new AtividadeDTO(); |
| 511 | $objAtividadeDTO->retDthConclusao(); | 511 | $objAtividadeDTO->retDthConclusao(); |
| 512 | $objAtividadeDTO->setDblIdProtocolo($parDblIdProcedimento); | 512 | $objAtividadeDTO->setDblIdProtocolo($parDblIdProcedimento); |
| @@ -514,13 +514,13 @@ class ReceberProcedimentoRN extends InfraRN | @@ -514,13 +514,13 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 514 | 514 | ||
| 515 | $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); | 515 | $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); |
| 516 | $flgReabrir = true; | 516 | $flgReabrir = true; |
| 517 | - | 517 | + |
| 518 | foreach ($arrObjAtividadeDTO as $objAtividadeDTO) { | 518 | foreach ($arrObjAtividadeDTO as $objAtividadeDTO) { |
| 519 | if ($objAtividadeDTO->getDthConclusao() == null) { | 519 | if ($objAtividadeDTO->getDthConclusao() == null) { |
| 520 | $flgReabrir = false; | 520 | $flgReabrir = false; |
| 521 | } | 521 | } |
| 522 | } | 522 | } |
| 523 | - | 523 | + |
| 524 | $objProcedimentoDTO = new ProcedimentoDTO(); | 524 | $objProcedimentoDTO = new ProcedimentoDTO(); |
| 525 | $objProcedimentoDTO->setDblIdProcedimento($parDblIdProcedimento); | 525 | $objProcedimentoDTO->setDblIdProcedimento($parDblIdProcedimento); |
| 526 | $objProcedimentoDTO->retTodos(); | 526 | $objProcedimentoDTO->retTodos(); |
| @@ -528,40 +528,40 @@ class ReceberProcedimentoRN extends InfraRN | @@ -528,40 +528,40 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 528 | 528 | ||
| 529 | $objProcedimentoRN = new ProcedimentoRN(); | 529 | $objProcedimentoRN = new ProcedimentoRN(); |
| 530 | $objProcedimentoDTO = $objProcedimentoRN->consultarRN0201($objProcedimentoDTO); | 530 | $objProcedimentoDTO = $objProcedimentoRN->consultarRN0201($objProcedimentoDTO); |
| 531 | - | 531 | + |
| 532 | $this->registrarAndamentoRecebimentoProcesso($objProcedimentoDTO, $objMetadadosProcedimento); | 532 | $this->registrarAndamentoRecebimentoProcesso($objProcedimentoDTO, $objMetadadosProcedimento); |
| 533 | - | ||
| 534 | - | 533 | + |
| 534 | + | ||
| 535 | if($flgReabrir){ | 535 | if($flgReabrir){ |
| 536 | $objEntradaReabrirProcessoAPI = new EntradaReabrirProcessoAPI(); | 536 | $objEntradaReabrirProcessoAPI = new EntradaReabrirProcessoAPI(); |
| 537 | $objEntradaReabrirProcessoAPI->setIdProcedimento($parDblIdProcedimento); | 537 | $objEntradaReabrirProcessoAPI->setIdProcedimento($parDblIdProcedimento); |
| 538 | $objSeiRN->reabrirProcesso($objEntradaReabrirProcessoAPI); | 538 | $objSeiRN->reabrirProcesso($objEntradaReabrirProcessoAPI); |
| 539 | } | 539 | } |
| 540 | - | 540 | + |
| 541 | //Cadastro das atividades para quando o destinatário é desviado pelo receptor (!3!) | 541 | //Cadastro das atividades para quando o destinatário é desviado pelo receptor (!3!) |
| 542 | if ($this->destinatarioReal->numeroDeIdentificacaoDaEstrutura) { | 542 | if ($this->destinatarioReal->numeroDeIdentificacaoDaEstrutura) { |
| 543 | $this->gerarAndamentoUnidadeReceptora($parDblIdProcedimento); | 543 | $this->gerarAndamentoUnidadeReceptora($parDblIdProcedimento); |
| 544 | } | 544 | } |
| 545 | 545 | ||
| 546 | - | 546 | + |
| 547 | $objEntradaDesbloquearProcessoAPI = new EntradaDesbloquearProcessoAPI(); | 547 | $objEntradaDesbloquearProcessoAPI = new EntradaDesbloquearProcessoAPI(); |
| 548 | - $objEntradaDesbloquearProcessoAPI->setIdProcedimento($parDblIdProcedimento); | 548 | + $objEntradaDesbloquearProcessoAPI->setIdProcedimento($parDblIdProcedimento); |
| 549 | $objSeiRN->desbloquearProcesso($objEntradaDesbloquearProcessoAPI); | 549 | $objSeiRN->desbloquearProcesso($objEntradaDesbloquearProcessoAPI); |
| 550 | - | 550 | + |
| 551 | //TODO: Obter código da unidade através de mapeamento entre SEI e Barramento | 551 | //TODO: Obter código da unidade através de mapeamento entre SEI e Barramento |
| 552 | $objUnidadeDTO = $this->atribuirDadosUnidade($objProcedimentoDTO, $objDestinatario); | 552 | $objUnidadeDTO = $this->atribuirDadosUnidade($objProcedimentoDTO, $objDestinatario); |
| 553 | 553 | ||
| 554 | - $this->atribuirDocumentos($objProcedimentoDTO, $objProcesso, $objUnidadeDTO, $objMetadadosProcedimento); | 554 | + $this->atribuirDocumentos($objProcedimentoDTO, $objProcesso, $objUnidadeDTO, $objMetadadosProcedimento); |
| 555 | $this->registrarProcedimentoNaoVisualizado($objProcedimentoDTO); | 555 | $this->registrarProcedimentoNaoVisualizado($objProcedimentoDTO); |
| 556 | 556 | ||
| 557 | //TODO: Avaliar necessidade de restringir referência circular entre processos | 557 | //TODO: Avaliar necessidade de restringir referência circular entre processos |
| 558 | //TODO: Registrar que o processo foi recebido com outros apensados. Necessário para posterior reenvio | 558 | //TODO: Registrar que o processo foi recebido com outros apensados. Necessário para posterior reenvio |
| 559 | $this->atribuirProcessosApensados($objProcedimentoDTO, $objProcesso->processoApensado); | 559 | $this->atribuirProcessosApensados($objProcedimentoDTO, $objProcesso->processoApensado); |
| 560 | - | 560 | + |
| 561 | //Realiza a alteração dos metadados do processo | 561 | //Realiza a alteração dos metadados do processo |
| 562 | //TODO: Implementar alteração de todos os metadados | 562 | //TODO: Implementar alteração de todos os metadados |
| 563 | $this->alterarMetadadosProcedimento($objProcedimentoDTO->getDblIdProcedimento(), $objProcesso); | 563 | $this->alterarMetadadosProcedimento($objProcedimentoDTO->getDblIdProcedimento(), $objProcesso); |
| 564 | - | 564 | + |
| 565 | //TODO: Finalizar o envio do documento para a respectiva unidade | 565 | //TODO: Finalizar o envio do documento para a respectiva unidade |
| 566 | $this->enviarProcedimentoUnidade($objProcedimentoDTO, true); | 566 | $this->enviarProcedimentoUnidade($objProcedimentoDTO, true); |
| 567 | 567 | ||
| @@ -578,14 +578,14 @@ class ReceberProcedimentoRN extends InfraRN | @@ -578,14 +578,14 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 578 | 578 | ||
| 579 | 579 | ||
| 580 | } | 580 | } |
| 581 | - | 581 | + |
| 582 | private function gerarAndamentoUnidadeReceptora($parNumIdProcedimento) { | 582 | private function gerarAndamentoUnidadeReceptora($parNumIdProcedimento) { |
| 583 | - | 583 | + |
| 584 | $objUnidadeDTO = new PenUnidadeDTO(); | 584 | $objUnidadeDTO = new PenUnidadeDTO(); |
| 585 | $objUnidadeDTO->setNumIdUnidadeRH($this->destinatarioReal->numeroDeIdentificacaoDaEstrutura); | 585 | $objUnidadeDTO->setNumIdUnidadeRH($this->destinatarioReal->numeroDeIdentificacaoDaEstrutura); |
| 586 | $objUnidadeDTO->setStrSinAtivo('S'); | 586 | $objUnidadeDTO->setStrSinAtivo('S'); |
| 587 | $objUnidadeDTO->retStrDescricao(); //descricao | 587 | $objUnidadeDTO->retStrDescricao(); //descricao |
| 588 | - | 588 | + |
| 589 | $objUnidadeRN = new UnidadeRN(); | 589 | $objUnidadeRN = new UnidadeRN(); |
| 590 | $objUnidadeDTO = $objUnidadeRN->consultarRN0125($objUnidadeDTO); | 590 | $objUnidadeDTO = $objUnidadeRN->consultarRN0125($objUnidadeDTO); |
| 591 | 591 | ||
| @@ -617,7 +617,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -617,7 +617,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 617 | } | 617 | } |
| 618 | 618 | ||
| 619 | //TODO: Usar dados do destinatário em outro método específico para envio | 619 | //TODO: Usar dados do destinatário em outro método específico para envio |
| 620 | - // Dados do procedimento enviados pelos órgão externo integrado ao PEN | 620 | + // Dados do procedimento enviados pelos órgão externo integrado ao PEN |
| 621 | //$objProcesso = $objMetadadosProcedimento->metadados->processo; | 621 | //$objProcesso = $objMetadadosProcedimento->metadados->processo; |
| 622 | $objRemetente = $objMetadadosProcedimento->metadados->remetente; | 622 | $objRemetente = $objMetadadosProcedimento->metadados->remetente; |
| 623 | $objDestinatario = $objMetadadosProcedimento->metadados->destinatario; | 623 | $objDestinatario = $objMetadadosProcedimento->metadados->destinatario; |
| @@ -632,16 +632,16 @@ class ReceberProcedimentoRN extends InfraRN | @@ -632,16 +632,16 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 632 | $objProtocoloDTO->setDblIdProtocolo(null); | 632 | $objProtocoloDTO->setDblIdProtocolo(null); |
| 633 | $objProtocoloDTO->setStrDescricao(utf8_decode($objProcesso->descricao)); | 633 | $objProtocoloDTO->setStrDescricao(utf8_decode($objProcesso->descricao)); |
| 634 | $objProtocoloDTO->setStrStaNivelAcessoLocal($this->obterNivelSigiloSEI($objProcesso->nivelDeSigilo)); | 634 | $objProtocoloDTO->setStrStaNivelAcessoLocal($this->obterNivelSigiloSEI($objProcesso->nivelDeSigilo)); |
| 635 | - | 635 | + |
| 636 | if($this->obterNivelSigiloSEI($objProcesso->nivelDeSigilo) == ProtocoloRN::$NA_RESTRITO){ | 636 | if($this->obterNivelSigiloSEI($objProcesso->nivelDeSigilo) == ProtocoloRN::$NA_RESTRITO){ |
| 637 | $objHipoteseLegalRecebido = new PenRelHipoteseLegalRecebidoRN(); | 637 | $objHipoteseLegalRecebido = new PenRelHipoteseLegalRecebidoRN(); |
| 638 | $objPenParametroRN = new PenParametroRN(); | 638 | $objPenParametroRN = new PenParametroRN(); |
| 639 | $numIdHipoteseLegalPadrao = $objPenParametroRN->getParametro('HIPOTESE_LEGAL_PADRAO'); | 639 | $numIdHipoteseLegalPadrao = $objPenParametroRN->getParametro('HIPOTESE_LEGAL_PADRAO'); |
| 640 | - | 640 | + |
| 641 | if (!isset($objProcesso->hipoteseLegal) || (isset($objProcesso->hipoteseLegal) && empty($objProcesso->hipoteseLegal->identificacao))) { | 641 | if (!isset($objProcesso->hipoteseLegal) || (isset($objProcesso->hipoteseLegal) && empty($objProcesso->hipoteseLegal->identificacao))) { |
| 642 | $objProtocoloDTO->setNumIdHipoteseLegal($numIdHipoteseLegalPadrao); | 642 | $objProtocoloDTO->setNumIdHipoteseLegal($numIdHipoteseLegalPadrao); |
| 643 | } else { | 643 | } else { |
| 644 | - | 644 | + |
| 645 | $numIdHipoteseLegal = $objHipoteseLegalRecebido->getIdHipoteseLegalSEI($objProcesso->hipoteseLegal->identificacao); | 645 | $numIdHipoteseLegal = $objHipoteseLegalRecebido->getIdHipoteseLegalSEI($objProcesso->hipoteseLegal->identificacao); |
| 646 | if (empty($numIdHipoteseLegal)) { | 646 | if (empty($numIdHipoteseLegal)) { |
| 647 | $objProtocoloDTO->setNumIdHipoteseLegal($numIdHipoteseLegalPadrao); | 647 | $objProtocoloDTO->setNumIdHipoteseLegal($numIdHipoteseLegalPadrao); |
| @@ -650,7 +650,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -650,7 +650,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 650 | } | 650 | } |
| 651 | } | 651 | } |
| 652 | } | 652 | } |
| 653 | - | 653 | + |
| 654 | $objProtocoloDTO->setStrProtocoloFormatado(utf8_decode($objProcesso->protocolo)); | 654 | $objProtocoloDTO->setStrProtocoloFormatado(utf8_decode($objProcesso->protocolo)); |
| 655 | $objProtocoloDTO->setDtaGeracao($this->objProcessoEletronicoRN->converterDataSEI($objProcesso->dataHoraDeProducao)); | 655 | $objProtocoloDTO->setDtaGeracao($this->objProcessoEletronicoRN->converterDataSEI($objProcesso->dataHoraDeProducao)); |
| 656 | $objProtocoloDTO->setArrObjAnexoDTO(array()); | 656 | $objProtocoloDTO->setArrObjAnexoDTO(array()); |
| @@ -659,18 +659,18 @@ class ReceberProcedimentoRN extends InfraRN | @@ -659,18 +659,18 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 659 | //$objProtocoloDTO->setStrStaEstado(ProtocoloRN::$TE_BLOQUEADO); | 659 | //$objProtocoloDTO->setStrStaEstado(ProtocoloRN::$TE_BLOQUEADO); |
| 660 | $this->atribuirRemetente($objProtocoloDTO, $objRemetente); | 660 | $this->atribuirRemetente($objProtocoloDTO, $objRemetente); |
| 661 | $this->atribuirParticipantes($objProtocoloDTO, $objProcesso->interessado); | 661 | $this->atribuirParticipantes($objProtocoloDTO, $objProcesso->interessado); |
| 662 | - | ||
| 663 | - | ||
| 664 | - | 662 | + |
| 663 | + | ||
| 664 | + | ||
| 665 | $strDescricao = sprintf('Tipo de processo no órgão de origem: %s', utf8_decode($objProcesso->processoDeNegocio)).PHP_EOL; | 665 | $strDescricao = sprintf('Tipo de processo no órgão de origem: %s', utf8_decode($objProcesso->processoDeNegocio)).PHP_EOL; |
| 666 | $strDescricao .= $objProcesso->observacao; | 666 | $strDescricao .= $objProcesso->observacao; |
| 667 | - | 667 | + |
| 668 | $objObservacaoDTO = new ObservacaoDTO(); | 668 | $objObservacaoDTO = new ObservacaoDTO(); |
| 669 | - | 669 | + |
| 670 | //!Criação da observação de aviso para qual é a real unidade emitida (!2!) | 670 | //!Criação da observação de aviso para qual é a real unidade emitida (!2!) |
| 671 | if ($this->destinatarioReal) { | 671 | if ($this->destinatarioReal) { |
| 672 | $objUnidadeDTO = new PenUnidadeDTO(); | 672 | $objUnidadeDTO = new PenUnidadeDTO(); |
| 673 | - $objUnidadeDTO->setNumIdUnidadeRH($this->destinatarioReal->numeroDeIdentificacaoDaEstrutura); | 673 | + $objUnidadeDTO->setNumIdUnidadeRH($this->destinatarioReal->numeroDeIdentificacaoDaEstrutura); |
| 674 | $objUnidadeDTO->setStrSinAtivo('S'); | 674 | $objUnidadeDTO->setStrSinAtivo('S'); |
| 675 | $objUnidadeDTO->retStrDescricao(); | 675 | $objUnidadeDTO->retStrDescricao(); |
| 676 | 676 | ||
| @@ -680,48 +680,48 @@ class ReceberProcedimentoRN extends InfraRN | @@ -680,48 +680,48 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 680 | } else { | 680 | } else { |
| 681 | $objObservacaoDTO->setStrDescricao($strDescricao); | 681 | $objObservacaoDTO->setStrDescricao($strDescricao); |
| 682 | } | 682 | } |
| 683 | - | 683 | + |
| 684 | //throw new InfraException(var_export($objObservacaoDTO, true)); | 684 | //throw new InfraException(var_export($objObservacaoDTO, true)); |
| 685 | - | 685 | + |
| 686 | $objProtocoloDTO->setArrObjObservacaoDTO(array($objObservacaoDTO)); | 686 | $objProtocoloDTO->setArrObjObservacaoDTO(array($objObservacaoDTO)); |
| 687 | - | 687 | + |
| 688 | //Atribuição de dados do procedimento | 688 | //Atribuição de dados do procedimento |
| 689 | //TODO: Validar cada uma das informações de entrada do webservice | 689 | //TODO: Validar cada uma das informações de entrada do webservice |
| 690 | - $objProcedimentoDTO = new ProcedimentoDTO(); | 690 | + $objProcedimentoDTO = new ProcedimentoDTO(); |
| 691 | $objProcedimentoDTO->setDblIdProcedimento(null); | 691 | $objProcedimentoDTO->setDblIdProcedimento(null); |
| 692 | - $objProcedimentoDTO->setObjProtocoloDTO($objProtocoloDTO); | 692 | + $objProcedimentoDTO->setObjProtocoloDTO($objProtocoloDTO); |
| 693 | $objProcedimentoDTO->setStrNomeTipoProcedimento(utf8_decode($objProcesso->processoDeNegocio)); | 693 | $objProcedimentoDTO->setStrNomeTipoProcedimento(utf8_decode($objProcesso->processoDeNegocio)); |
| 694 | $objProcedimentoDTO->setDtaGeracaoProtocolo($this->objProcessoEletronicoRN->converterDataSEI($objProcesso->dataHoraDeProducao)); | 694 | $objProcedimentoDTO->setDtaGeracaoProtocolo($this->objProcessoEletronicoRN->converterDataSEI($objProcesso->dataHoraDeProducao)); |
| 695 | $objProcedimentoDTO->setStrProtocoloProcedimentoFormatado(utf8_decode($objProcesso->protocolo)); | 695 | $objProcedimentoDTO->setStrProtocoloProcedimentoFormatado(utf8_decode($objProcesso->protocolo)); |
| 696 | $objProcedimentoDTO->setStrSinGerarPendencia('S'); | 696 | $objProcedimentoDTO->setStrSinGerarPendencia('S'); |
| 697 | // $objProcedimentoDTO->setNumVersaoLock(0); //TODO: Avaliar o comportamento desse campo no cadastro do processo | 697 | // $objProcedimentoDTO->setNumVersaoLock(0); //TODO: Avaliar o comportamento desse campo no cadastro do processo |
| 698 | $objProcedimentoDTO->setArrObjDocumentoDTO(array()); | 698 | $objProcedimentoDTO->setArrObjDocumentoDTO(array()); |
| 699 | - | 699 | + |
| 700 | //TODO: Identificar o tipo de procedimento correto para atribuição ao novo processo | 700 | //TODO: Identificar o tipo de procedimento correto para atribuição ao novo processo |
| 701 | $objPenParametroRN = new PenParametroRN(); | 701 | $objPenParametroRN = new PenParametroRN(); |
| 702 | $numIdTipoProcedimento = $objPenParametroRN->getParametro('PEN_TIPO_PROCESSO_EXTERNO'); | 702 | $numIdTipoProcedimento = $objPenParametroRN->getParametro('PEN_TIPO_PROCESSO_EXTERNO'); |
| 703 | - $this->atribuirTipoProcedimento($objProcedimentoDTO, $numIdTipoProcedimento, $objProcesso->processoDeNegocio); | 703 | + $this->atribuirTipoProcedimento($objProcedimentoDTO, $numIdTipoProcedimento, $objProcesso->processoDeNegocio); |
| 704 | 704 | ||
| 705 | //TODO: Obter código da unidade através de mapeamento entre SEI e Barramento | 705 | //TODO: Obter código da unidade através de mapeamento entre SEI e Barramento |
| 706 | $objUnidadeDTO = $this->atribuirDadosUnidade($objProcedimentoDTO, $objDestinatario); | 706 | $objUnidadeDTO = $this->atribuirDadosUnidade($objProcedimentoDTO, $objDestinatario); |
| 707 | 707 | ||
| 708 | //TODO: Tratar processamento de atributos procedimento_cadastro:177 | 708 | //TODO: Tratar processamento de atributos procedimento_cadastro:177 |
| 709 | //... | 709 | //... |
| 710 | - | 710 | + |
| 711 | //TODO: Atribuir Dados do produtor do processo | 711 | //TODO: Atribuir Dados do produtor do processo |
| 712 | - //$this->atribuirProdutorProcesso($objProcesso, | ||
| 713 | - // $objProcedimentoDTO->getNumIdUsuarioGeradorProtocolo(), | ||
| 714 | - // $objProcedimentoDTO->getNumIdUnidadeGeradoraProtocolo()); | 712 | + //$this->atribuirProdutorProcesso($objProcesso, |
| 713 | + // $objProcedimentoDTO->getNumIdUsuarioGeradorProtocolo(), | ||
| 714 | + // $objProcedimentoDTO->getNumIdUnidadeGeradoraProtocolo()); | ||
| 715 | + | ||
| 715 | 716 | ||
| 716 | 717 | ||
| 717 | - | ||
| 718 | 718 | ||
| 719 | //TODO:Adicionar demais informações do processo | 719 | //TODO:Adicionar demais informações do processo |
| 720 | //<protocoloAnterior> | 720 | //<protocoloAnterior> |
| 721 | //<historico> | 721 | //<historico> |
| 722 | - | 722 | + |
| 723 | //$objProcesso->idProcedimentoSEI = $dblIdProcedimento; | 723 | //$objProcesso->idProcedimentoSEI = $dblIdProcedimento; |
| 724 | - | 724 | + |
| 725 | //TODO: Avaliar necessidade de tal recurso | 725 | //TODO: Avaliar necessidade de tal recurso |
| 726 | //FeedSEIProtocolos::getInstance()->setBolAcumularFeeds(true); | 726 | //FeedSEIProtocolos::getInstance()->setBolAcumularFeeds(true); |
| 727 | 727 | ||
| @@ -735,9 +735,9 @@ class ReceberProcedimentoRN extends InfraRN | @@ -735,9 +735,9 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 735 | $objProcedimentoDTO->setDblIdProcedimento($objProcedimentoDTOGerado->getDblIdProcedimento()); | 735 | $objProcedimentoDTO->setDblIdProcedimento($objProcedimentoDTOGerado->getDblIdProcedimento()); |
| 736 | 736 | ||
| 737 | $this->registrarAndamentoRecebimentoProcesso($objProcedimentoDTO, $objMetadadosProcedimento); | 737 | $this->registrarAndamentoRecebimentoProcesso($objProcedimentoDTO, $objMetadadosProcedimento); |
| 738 | - $this->atribuirDocumentos($objProcedimentoDTO, $objProcesso, $objUnidadeDTO, $objMetadadosProcedimento); | 738 | + $this->atribuirDocumentos($objProcedimentoDTO, $objProcesso, $objUnidadeDTO, $objMetadadosProcedimento); |
| 739 | $this->registrarProcedimentoNaoVisualizado($objProcedimentoDTOGerado); | 739 | $this->registrarProcedimentoNaoVisualizado($objProcedimentoDTOGerado); |
| 740 | - | 740 | + |
| 741 | //TODO: Avaliar necessidade de restringir referência circular entre processos | 741 | //TODO: Avaliar necessidade de restringir referência circular entre processos |
| 742 | //TODO: Registrar que o processo foi recebido com outros apensados. Necessário para posterior reenvio | 742 | //TODO: Registrar que o processo foi recebido com outros apensados. Necessário para posterior reenvio |
| 743 | $this->atribuirProcessosApensados($objProcedimentoDTO, $objProcesso->processoApensado); | 743 | $this->atribuirProcessosApensados($objProcedimentoDTO, $objProcesso->processoApensado); |
| @@ -758,37 +758,37 @@ class ReceberProcedimentoRN extends InfraRN | @@ -758,37 +758,37 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 758 | } | 758 | } |
| 759 | 759 | ||
| 760 | private function alterarMetadadosProcedimento($parNumIdProcedimento, $parObjMetadadoProcedimento){ | 760 | private function alterarMetadadosProcedimento($parNumIdProcedimento, $parObjMetadadoProcedimento){ |
| 761 | - | 761 | + |
| 762 | //Realiza a alteração dos metadados do processo(Por hora, apenas do nível de sigilo e hipótese legal) | 762 | //Realiza a alteração dos metadados do processo(Por hora, apenas do nível de sigilo e hipótese legal) |
| 763 | $objProtocoloDTO = new ProtocoloDTO(); | 763 | $objProtocoloDTO = new ProtocoloDTO(); |
| 764 | $objProtocoloDTO->setDblIdProtocolo($parNumIdProcedimento); | 764 | $objProtocoloDTO->setDblIdProtocolo($parNumIdProcedimento); |
| 765 | $objProtocoloDTO->setStrStaNivelAcessoLocal($this->obterNivelSigiloSEI($parObjMetadadoProcedimento->nivelDeSigilo)); | 765 | $objProtocoloDTO->setStrStaNivelAcessoLocal($this->obterNivelSigiloSEI($parObjMetadadoProcedimento->nivelDeSigilo)); |
| 766 | - | 766 | + |
| 767 | if($parObjMetadadoProcedimento->hipoteseLegal && $parObjMetadadoProcedimento->hipoteseLegal->identificacao){ | 767 | if($parObjMetadadoProcedimento->hipoteseLegal && $parObjMetadadoProcedimento->hipoteseLegal->identificacao){ |
| 768 | $objProtocoloDTO->setNumIdHipoteseLegal($this->obterHipoteseLegalSEI($parObjMetadadoProcedimento->hipoteseLegal->identificacao)); | 768 | $objProtocoloDTO->setNumIdHipoteseLegal($this->obterHipoteseLegalSEI($parObjMetadadoProcedimento->hipoteseLegal->identificacao)); |
| 769 | } | 769 | } |
| 770 | - | 770 | + |
| 771 | $objProtocoloRN = new ProtocoloRN(); | 771 | $objProtocoloRN = new ProtocoloRN(); |
| 772 | $objProtocoloRN->alterarRN0203($objProtocoloDTO); | 772 | $objProtocoloRN->alterarRN0203($objProtocoloDTO); |
| 773 | } | 773 | } |
| 774 | - | 774 | + |
| 775 | private function alterarMetadadosDocumento($parNumIdDocumento, $parObjMetadadoDocumento){ | 775 | private function alterarMetadadosDocumento($parNumIdDocumento, $parObjMetadadoDocumento){ |
| 776 | //Realiza a alteração dos metadados do documento(Por hora, apenas do nível de sigilo e hipótese legal) | 776 | //Realiza a alteração dos metadados do documento(Por hora, apenas do nível de sigilo e hipótese legal) |
| 777 | $objProtocoloDTO = new ProtocoloDTO(); | 777 | $objProtocoloDTO = new ProtocoloDTO(); |
| 778 | $objProtocoloDTO->setDblIdProtocolo($parNumIdDocumento); | 778 | $objProtocoloDTO->setDblIdProtocolo($parNumIdDocumento); |
| 779 | $objProtocoloDTO->setStrStaNivelAcessoLocal($this->obterNivelSigiloSEI($parObjMetadadoDocumento->nivelDeSigilo)); | 779 | $objProtocoloDTO->setStrStaNivelAcessoLocal($this->obterNivelSigiloSEI($parObjMetadadoDocumento->nivelDeSigilo)); |
| 780 | - | 780 | + |
| 781 | if($parObjMetadadoDocumento->hipoteseLegal && $parObjMetadadoDocumento->hipoteseLegal->identificacao){ | 781 | if($parObjMetadadoDocumento->hipoteseLegal && $parObjMetadadoDocumento->hipoteseLegal->identificacao){ |
| 782 | $objProtocoloDTO->setNumIdHipoteseLegal($this->obterHipoteseLegalSEI($parObjMetadadoDocumento->hipoteseLegal->identificacao)); | 782 | $objProtocoloDTO->setNumIdHipoteseLegal($this->obterHipoteseLegalSEI($parObjMetadadoDocumento->hipoteseLegal->identificacao)); |
| 783 | } | 783 | } |
| 784 | - | 784 | + |
| 785 | $objProtocoloRN = new ProtocoloRN(); | 785 | $objProtocoloRN = new ProtocoloRN(); |
| 786 | $objProtocoloRN->alterarRN0203($objProtocoloDTO); | 786 | $objProtocoloRN->alterarRN0203($objProtocoloDTO); |
| 787 | - | 787 | + |
| 788 | } | 788 | } |
| 789 | - | ||
| 790 | - | ||
| 791 | - private function removerAndamentosProcedimento($parObjProtocoloDTO) | 789 | + |
| 790 | + | ||
| 791 | + private function removerAndamentosProcedimento($parObjProtocoloDTO) | ||
| 792 | { | 792 | { |
| 793 | //TODO: Remover apenas as atividades geradas pelo recebimento do processo, não as atividades geradas anteriormente | 793 | //TODO: Remover apenas as atividades geradas pelo recebimento do processo, não as atividades geradas anteriormente |
| 794 | $objAtividadeDTO = new AtividadeDTO(); | 794 | $objAtividadeDTO = new AtividadeDTO(); |
| @@ -797,16 +797,16 @@ class ReceberProcedimentoRN extends InfraRN | @@ -797,16 +797,16 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 797 | $objAtividadeDTO->setNumIdTarefa(TarefaRN::$TI_GERACAO_PROCEDIMENTO); | 797 | $objAtividadeDTO->setNumIdTarefa(TarefaRN::$TI_GERACAO_PROCEDIMENTO); |
| 798 | 798 | ||
| 799 | $objAtividadeRN = new AtividadeRN(); | 799 | $objAtividadeRN = new AtividadeRN(); |
| 800 | - $objAtividadeRN->excluirRN0034($objAtividadeRN->listarRN0036($objAtividadeDTO)); | 800 | + $objAtividadeRN->excluirRN0034($objAtividadeRN->listarRN0036($objAtividadeDTO)); |
| 801 | } | 801 | } |
| 802 | 802 | ||
| 803 | private function registrarAndamentoRecebimentoProcesso(ProcedimentoDTO $objProcedimentoDTO, $parObjMetadadosProcedimento) | 803 | private function registrarAndamentoRecebimentoProcesso(ProcedimentoDTO $objProcedimentoDTO, $parObjMetadadosProcedimento) |
| 804 | { | 804 | { |
| 805 | - //Processo recebido da entidade @ENTIDADE_ORIGEM@ - @REPOSITORIO_ORIGEM@ | 805 | + //Processo recebido da entidade @ENTIDADE_ORIGEM@ - @REPOSITORIO_ORIGEM@ |
| 806 | //TODO: Atribuir atributos necessários para formação da mensagem do andamento | 806 | //TODO: Atribuir atributos necessários para formação da mensagem do andamento |
| 807 | - //TODO: Especificar quais andamentos serão registrados | 807 | + //TODO: Especificar quais andamentos serão registrados |
| 808 | $objRemetente = $parObjMetadadosProcedimento->metadados->remetente; | 808 | $objRemetente = $parObjMetadadosProcedimento->metadados->remetente; |
| 809 | - $objProcesso = $objMetadadosProcedimento->metadados->processo; | 809 | + $objProcesso = $objMetadadosProcedimento->metadados->processo; |
| 810 | 810 | ||
| 811 | $arrObjAtributoAndamentoDTO = array(); | 811 | $arrObjAtributoAndamentoDTO = array(); |
| 812 | 812 | ||
| @@ -816,7 +816,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -816,7 +816,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 816 | 816 | ||
| 817 | //TODO: Otimizar código. Apenas buscar no barramento os dados da estrutura 1 única vez (AtribuirRemetente também utiliza) | 817 | //TODO: Otimizar código. Apenas buscar no barramento os dados da estrutura 1 única vez (AtribuirRemetente também utiliza) |
| 818 | $objEstrutura = $this->objProcessoEletronicoRN->consultarEstrutura( | 818 | $objEstrutura = $this->objProcessoEletronicoRN->consultarEstrutura( |
| 819 | - $objRemetente->identificacaoDoRepositorioDeEstruturas, | 819 | + $objRemetente->identificacaoDoRepositorioDeEstruturas, |
| 820 | $objRemetente->numeroDeIdentificacaoDaEstrutura, | 820 | $objRemetente->numeroDeIdentificacaoDaEstrutura, |
| 821 | true | 821 | true |
| 822 | ); | 822 | ); |
| @@ -832,19 +832,19 @@ class ReceberProcedimentoRN extends InfraRN | @@ -832,19 +832,19 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 832 | $objAtributoAndamentoDTO->setStrValor($objEstrutura->nome); | 832 | $objAtributoAndamentoDTO->setStrValor($objEstrutura->nome); |
| 833 | $objAtributoAndamentoDTO->setStrIdOrigem($objEstrutura->numeroDeIdentificacaoDaEstrutura); | 833 | $objAtributoAndamentoDTO->setStrIdOrigem($objEstrutura->numeroDeIdentificacaoDaEstrutura); |
| 834 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; | 834 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; |
| 835 | - | 835 | + |
| 836 | if(isset($objEstrutura->hierarquia)) { | 836 | if(isset($objEstrutura->hierarquia)) { |
| 837 | - | 837 | + |
| 838 | $arrObjNivel = $objEstrutura->hierarquia->nivel; | 838 | $arrObjNivel = $objEstrutura->hierarquia->nivel; |
| 839 | - | 839 | + |
| 840 | $nome = ""; | 840 | $nome = ""; |
| 841 | $siglasUnidades = array(); | 841 | $siglasUnidades = array(); |
| 842 | $siglasUnidades[] = $objEstrutura->sigla; | 842 | $siglasUnidades[] = $objEstrutura->sigla; |
| 843 | - | 843 | + |
| 844 | foreach($arrObjNivel as $key => $objNivel){ | 844 | foreach($arrObjNivel as $key => $objNivel){ |
| 845 | $siglasUnidades[] = $objNivel->sigla ; | 845 | $siglasUnidades[] = $objNivel->sigla ; |
| 846 | } | 846 | } |
| 847 | - | 847 | + |
| 848 | for($i = 1; $i <= 3; $i++){ | 848 | for($i = 1; $i <= 3; $i++){ |
| 849 | if(isset($siglasUnidades[count($siglasUnidades) - 1])){ | 849 | if(isset($siglasUnidades[count($siglasUnidades) - 1])){ |
| 850 | unset($siglasUnidades[count($siglasUnidades) - 1]); | 850 | unset($siglasUnidades[count($siglasUnidades) - 1]); |
| @@ -858,7 +858,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -858,7 +858,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 858 | $nome .= $nomeUnidade." / "; | 858 | $nome .= $nomeUnidade." / "; |
| 859 | } | 859 | } |
| 860 | } | 860 | } |
| 861 | - | 861 | + |
| 862 | $objNivel = current($arrObjNivel); | 862 | $objNivel = current($arrObjNivel); |
| 863 | 863 | ||
| 864 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); | 864 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); |
| @@ -867,8 +867,8 @@ class ReceberProcedimentoRN extends InfraRN | @@ -867,8 +867,8 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 867 | $objAtributoAndamentoDTO->setStrIdOrigem($objNivel->numeroDeIdentificacaoDaEstrutura); | 867 | $objAtributoAndamentoDTO->setStrIdOrigem($objNivel->numeroDeIdentificacaoDaEstrutura); |
| 868 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; | 868 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; |
| 869 | } | 869 | } |
| 870 | - | ||
| 871 | - | 870 | + |
| 871 | + | ||
| 872 | $objAtividadeDTO = new AtividadeDTO(); | 872 | $objAtividadeDTO = new AtividadeDTO(); |
| 873 | $objAtividadeDTO->setDblIdProtocolo($objProcedimentoDTO->getDblIdProcedimento()); | 873 | $objAtividadeDTO->setDblIdProtocolo($objProcedimentoDTO->getDblIdProcedimento()); |
| 874 | $objAtividadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); | 874 | $objAtividadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); |
| @@ -878,26 +878,26 @@ class ReceberProcedimentoRN extends InfraRN | @@ -878,26 +878,26 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 878 | $objAtividadeDTO->setDthConclusao(null); | 878 | $objAtividadeDTO->setDthConclusao(null); |
| 879 | $objAtividadeDTO->setNumIdUsuarioConclusao(null); | 879 | $objAtividadeDTO->setNumIdUsuarioConclusao(null); |
| 880 | $objAtividadeDTO->setStrSinInicial('N'); | 880 | $objAtividadeDTO->setStrSinInicial('N'); |
| 881 | - | 881 | + |
| 882 | $objAtividadeRN = new AtividadeRN(); | 882 | $objAtividadeRN = new AtividadeRN(); |
| 883 | $objAtividadeRN->gerarInternaRN0727($objAtividadeDTO); | 883 | $objAtividadeRN->gerarInternaRN0727($objAtividadeDTO); |
| 884 | - | ||
| 885 | - | ||
| 886 | - | 884 | + |
| 885 | + | ||
| 886 | + | ||
| 887 | } | 887 | } |
| 888 | 888 | ||
| 889 | 889 | ||
| 890 | //TODO: Avaliar a necessidade de registrar os dados do remetente como participante do processo | 890 | //TODO: Avaliar a necessidade de registrar os dados do remetente como participante do processo |
| 891 | private function atribuirRemetente(ProtocoloDTO $objProtocoloDTO, $objRemetente) | 891 | private function atribuirRemetente(ProtocoloDTO $objProtocoloDTO, $objRemetente) |
| 892 | - { | ||
| 893 | - $arrObjParticipantesDTO = array(); | 892 | + { |
| 893 | + $arrObjParticipantesDTO = array(); | ||
| 894 | if($objProtocoloDTO->isSetArrObjParticipanteDTO()) { | 894 | if($objProtocoloDTO->isSetArrObjParticipanteDTO()) { |
| 895 | - $arrObjParticipantesDTO = $objProtocoloDTO->getArrObjParticipanteDTO(); | 895 | + $arrObjParticipantesDTO = $objProtocoloDTO->getArrObjParticipanteDTO(); |
| 896 | } | 896 | } |
| 897 | - | 897 | + |
| 898 | //Obtenção de detalhes do remetente na infraestrutura do PEN | 898 | //Obtenção de detalhes do remetente na infraestrutura do PEN |
| 899 | $objEstruturaDTO = $this->objProcessoEletronicoRN->consultarEstrutura( | 899 | $objEstruturaDTO = $this->objProcessoEletronicoRN->consultarEstrutura( |
| 900 | - $objRemetente->identificacaoDoRepositorioDeEstruturas, | 900 | + $objRemetente->identificacaoDoRepositorioDeEstruturas, |
| 901 | $objRemetente->numeroDeIdentificacaoDaEstrutura); | 901 | $objRemetente->numeroDeIdentificacaoDaEstrutura); |
| 902 | 902 | ||
| 903 | if(!empty($objEstruturaDTO)) { | 903 | if(!empty($objEstruturaDTO)) { |
| @@ -915,10 +915,10 @@ class ReceberProcedimentoRN extends InfraRN | @@ -915,10 +915,10 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 915 | 915 | ||
| 916 | 916 | ||
| 917 | private function atribuirParticipantes(ProtocoloDTO $objProtocoloDTO, $arrObjInteressados) | 917 | private function atribuirParticipantes(ProtocoloDTO $objProtocoloDTO, $arrObjInteressados) |
| 918 | - { | ||
| 919 | - $arrObjParticipantesDTO = array(); | 918 | + { |
| 919 | + $arrObjParticipantesDTO = array(); | ||
| 920 | if($objProtocoloDTO->isSetArrObjParticipanteDTO()) { | 920 | if($objProtocoloDTO->isSetArrObjParticipanteDTO()) { |
| 921 | - $arrObjParticipantesDTO = $objProtocoloDTO->getArrObjParticipanteDTO(); | 921 | + $arrObjParticipantesDTO = $objProtocoloDTO->getArrObjParticipanteDTO(); |
| 922 | } | 922 | } |
| 923 | 923 | ||
| 924 | if (!is_array($arrObjInteressados)) { | 924 | if (!is_array($arrObjInteressados)) { |
| @@ -961,11 +961,11 @@ class ReceberProcedimentoRN extends InfraRN | @@ -961,11 +961,11 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 961 | $objProcedimentoDTO->setNumIdTipoProcedimento($objTipoProcedimentoDTO->getNumIdTipoProcedimento()); | 961 | $objProcedimentoDTO->setNumIdTipoProcedimento($objTipoProcedimentoDTO->getNumIdTipoProcedimento()); |
| 962 | $objProcedimentoDTO->setStrNomeTipoProcedimento($objTipoProcedimentoDTO->getStrNome()); | 962 | $objProcedimentoDTO->setStrNomeTipoProcedimento($objTipoProcedimentoDTO->getStrNome()); |
| 963 | 963 | ||
| 964 | - //Busca e adiciona os assuntos sugeridos para o tipo informado | 964 | + //Busca e adiciona os assuntos sugeridos para o tipo informado |
| 965 | $objRelTipoProcedimentoAssuntoDTO = new RelTipoProcedimentoAssuntoDTO(); | 965 | $objRelTipoProcedimentoAssuntoDTO = new RelTipoProcedimentoAssuntoDTO(); |
| 966 | $objRelTipoProcedimentoAssuntoDTO->retNumIdAssunto(); | 966 | $objRelTipoProcedimentoAssuntoDTO->retNumIdAssunto(); |
| 967 | $objRelTipoProcedimentoAssuntoDTO->retNumSequencia(); | 967 | $objRelTipoProcedimentoAssuntoDTO->retNumSequencia(); |
| 968 | - $objRelTipoProcedimentoAssuntoDTO->setNumIdTipoProcedimento($objProcedimentoDTO->getNumIdTipoProcedimento()); | 968 | + $objRelTipoProcedimentoAssuntoDTO->setNumIdTipoProcedimento($objProcedimentoDTO->getNumIdTipoProcedimento()); |
| 969 | 969 | ||
| 970 | $objRelTipoProcedimentoAssuntoRN = new RelTipoProcedimentoAssuntoRN(); | 970 | $objRelTipoProcedimentoAssuntoRN = new RelTipoProcedimentoAssuntoRN(); |
| 971 | $arrObjRelTipoProcedimentoAssuntoDTO = $objRelTipoProcedimentoAssuntoRN->listarRN0192($objRelTipoProcedimentoAssuntoDTO); | 971 | $arrObjRelTipoProcedimentoAssuntoDTO = $objRelTipoProcedimentoAssuntoRN->listarRN0192($objRelTipoProcedimentoAssuntoDTO); |
| @@ -982,7 +982,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -982,7 +982,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 982 | } | 982 | } |
| 983 | 983 | ||
| 984 | protected function atribuirDadosUnidade(ProcedimentoDTO $objProcedimentoDTO, $objDestinatario){ | 984 | protected function atribuirDadosUnidade(ProcedimentoDTO $objProcedimentoDTO, $objDestinatario){ |
| 985 | - | 985 | + |
| 986 | if(!isset($objDestinatario)){ | 986 | if(!isset($objDestinatario)){ |
| 987 | throw new InfraException('Parâmetro $objDestinatario não informado.'); | 987 | throw new InfraException('Parâmetro $objDestinatario não informado.'); |
| 988 | } | 988 | } |
| @@ -992,8 +992,8 @@ class ReceberProcedimentoRN extends InfraRN | @@ -992,8 +992,8 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 992 | if(!isset($objUnidadeDTOEnvio)) | 992 | if(!isset($objUnidadeDTOEnvio)) |
| 993 | throw new InfraException('Unidade de destino não pode ser encontrada. Repositório: '.$objDestinatario->identificacaoDoRepositorioDeEstruturas.', Número: ' . $objDestinatario->numeroDeIdentificacaoDaEstrutura); | 993 | throw new InfraException('Unidade de destino não pode ser encontrada. Repositório: '.$objDestinatario->identificacaoDoRepositorioDeEstruturas.', Número: ' . $objDestinatario->numeroDeIdentificacaoDaEstrutura); |
| 994 | 994 | ||
| 995 | - $arrObjUnidadeDTO = array(); | ||
| 996 | - $arrObjUnidadeDTO[] = $objUnidadeDTOEnvio; | 995 | + $arrObjUnidadeDTO = array(); |
| 996 | + $arrObjUnidadeDTO[] = $objUnidadeDTOEnvio; | ||
| 997 | $objProcedimentoDTO->setArrObjUnidadeDTO($arrObjUnidadeDTO); | 997 | $objProcedimentoDTO->setArrObjUnidadeDTO($arrObjUnidadeDTO); |
| 998 | 998 | ||
| 999 | return $objUnidadeDTOEnvio; | 999 | return $objUnidadeDTOEnvio; |
| @@ -1003,8 +1003,8 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1003,8 +1003,8 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1003 | //TODO: Grande parte da regra de negócio se baseou em SEIRN:199 - incluirDocumento. | 1003 | //TODO: Grande parte da regra de negócio se baseou em SEIRN:199 - incluirDocumento. |
| 1004 | //Avaliar a refatoração para impedir a duplicação de código | 1004 | //Avaliar a refatoração para impedir a duplicação de código |
| 1005 | private function atribuirDocumentos($objProcedimentoDTO, $objProcesso, $objUnidadeDTO, $parObjMetadadosProcedimento) | 1005 | private function atribuirDocumentos($objProcedimentoDTO, $objProcesso, $objUnidadeDTO, $parObjMetadadosProcedimento) |
| 1006 | - { | ||
| 1007 | - | 1006 | + { |
| 1007 | + | ||
| 1008 | if(!isset($objProcesso)) { | 1008 | if(!isset($objProcesso)) { |
| 1009 | throw new InfraException('Parâmetro $objProcesso não informado.'); | 1009 | throw new InfraException('Parâmetro $objProcesso não informado.'); |
| 1010 | } | 1010 | } |
| @@ -1019,14 +1019,14 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1019,14 +1019,14 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1019 | 1019 | ||
| 1020 | $arrObjDocumentos = $objProcesso->documento; | 1020 | $arrObjDocumentos = $objProcesso->documento; |
| 1021 | if(!is_array($arrObjDocumentos)) { | 1021 | if(!is_array($arrObjDocumentos)) { |
| 1022 | - $arrObjDocumentos = array($arrObjDocumentos); | 1022 | + $arrObjDocumentos = array($arrObjDocumentos); |
| 1023 | } | 1023 | } |
| 1024 | 1024 | ||
| 1025 | $strNumeroRegistro = $parObjMetadadosProcedimento->metadados->NRE; | 1025 | $strNumeroRegistro = $parObjMetadadosProcedimento->metadados->NRE; |
| 1026 | //$numTramite = $parObjMetadadosProcedimento->metadados->IDT; | 1026 | //$numTramite = $parObjMetadadosProcedimento->metadados->IDT; |
| 1027 | 1027 | ||
| 1028 | //Ordenação dos documentos conforme informado pelo remetente. Campo documento->ordem | 1028 | //Ordenação dos documentos conforme informado pelo remetente. Campo documento->ordem |
| 1029 | - usort($arrObjDocumentos, array("ReceberProcedimentoRN", "comparacaoOrdemDocumentos")); | 1029 | + usort($arrObjDocumentos, array("ReceberProcedimentoRN", "comparacaoOrdemDocumentos")); |
| 1030 | 1030 | ||
| 1031 | //Obter dados dos documentos já registrados no sistema | 1031 | //Obter dados dos documentos já registrados no sistema |
| 1032 | $objComponenteDigitalDTO = new ComponenteDigitalDTO(); | 1032 | $objComponenteDigitalDTO = new ComponenteDigitalDTO(); |
| @@ -1043,32 +1043,32 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1043,32 +1043,32 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1043 | 1043 | ||
| 1044 | $objProtocoloBD = new ProtocoloBD($this->getObjInfraIBanco()); | 1044 | $objProtocoloBD = new ProtocoloBD($this->getObjInfraIBanco()); |
| 1045 | $objSeiRN = new SeiRN(); | 1045 | $objSeiRN = new SeiRN(); |
| 1046 | - | 1046 | + |
| 1047 | $arrObjDocumentoDTO = array(); | 1047 | $arrObjDocumentoDTO = array(); |
| 1048 | - | 1048 | + |
| 1049 | foreach($arrObjDocumentos as $objDocumento){ | 1049 | foreach($arrObjDocumentos as $objDocumento){ |
| 1050 | - | 1050 | + |
| 1051 | // @join_tec US027 (#3498) | 1051 | // @join_tec US027 (#3498) |
| 1052 | if(isset($objDocumento->retirado) && $objDocumento->retirado === true) { | 1052 | if(isset($objDocumento->retirado) && $objDocumento->retirado === true) { |
| 1053 | 1053 | ||
| 1054 | //$strHashConteudo = ProcessoEletronicoRN::getHashFromMetaDados($objDocumento->componenteDigital->hash); | 1054 | //$strHashConteudo = ProcessoEletronicoRN::getHashFromMetaDados($objDocumento->componenteDigital->hash); |
| 1055 | - | ||
| 1056 | - | 1055 | + |
| 1056 | + | ||
| 1057 | // Caso já esteja cadastrado, de um reenvio anterior, então move para bloqueado | 1057 | // Caso já esteja cadastrado, de um reenvio anterior, então move para bloqueado |
| 1058 | if(array_key_exists($objDocumento->ordem, $arrObjComponenteDigitalDTOIndexado)) { | 1058 | if(array_key_exists($objDocumento->ordem, $arrObjComponenteDigitalDTOIndexado)) { |
| 1059 | - | 1059 | + |
| 1060 | //Busca o ID do protocolo | 1060 | //Busca o ID do protocolo |
| 1061 | //$dblIdProtocolo = $arrStrHashConteudo[$strHashConteudo]; | 1061 | //$dblIdProtocolo = $arrStrHashConteudo[$strHashConteudo]; |
| 1062 | $objComponenteIndexado = $arrObjComponenteDigitalDTOIndexado[$objDocumento->ordem]; | 1062 | $objComponenteIndexado = $arrObjComponenteDigitalDTOIndexado[$objDocumento->ordem]; |
| 1063 | $dblIdProtocolo = $objComponenteIndexado->getDblIdDocumento(); | 1063 | $dblIdProtocolo = $objComponenteIndexado->getDblIdDocumento(); |
| 1064 | - | 1064 | + |
| 1065 | //Instancia o DTO do protocolo | 1065 | //Instancia o DTO do protocolo |
| 1066 | $objProtocoloDTO = new ProtocoloDTO(); | 1066 | $objProtocoloDTO = new ProtocoloDTO(); |
| 1067 | $objProtocoloDTO->setDblIdProtocolo($dblIdProtocolo); | 1067 | $objProtocoloDTO->setDblIdProtocolo($dblIdProtocolo); |
| 1068 | $objProtocoloDTO->retStrStaEstado(); | 1068 | $objProtocoloDTO->retStrStaEstado(); |
| 1069 | - | 1069 | + |
| 1070 | $objProtocoloDTO = $objProtocoloBD->consultar($objProtocoloDTO); | 1070 | $objProtocoloDTO = $objProtocoloBD->consultar($objProtocoloDTO); |
| 1071 | - | 1071 | + |
| 1072 | if($objProtocoloDTO->getStrStaEstado() != ProtocoloRN::$TE_DOCUMENTO_CANCELADO){ | 1072 | if($objProtocoloDTO->getStrStaEstado() != ProtocoloRN::$TE_DOCUMENTO_CANCELADO){ |
| 1073 | //Instancia o DTO do protocolo | 1073 | //Instancia o DTO do protocolo |
| 1074 | $objEntradaCancelarDocumentoAPI = new EntradaCancelarDocumentoAPI(); | 1074 | $objEntradaCancelarDocumentoAPI = new EntradaCancelarDocumentoAPI(); |
| @@ -1076,12 +1076,12 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1076,12 +1076,12 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1076 | $objEntradaCancelarDocumentoAPI->setMotivo('Cancelado pelo remetente'); | 1076 | $objEntradaCancelarDocumentoAPI->setMotivo('Cancelado pelo remetente'); |
| 1077 | 1077 | ||
| 1078 | $objSeiRN->cancelarDocumento($objEntradaCancelarDocumentoAPI); | 1078 | $objSeiRN->cancelarDocumento($objEntradaCancelarDocumentoAPI); |
| 1079 | - | 1079 | + |
| 1080 | } | 1080 | } |
| 1081 | - | ||
| 1082 | - | 1081 | + |
| 1082 | + | ||
| 1083 | continue; | 1083 | continue; |
| 1084 | - | 1084 | + |
| 1085 | } | 1085 | } |
| 1086 | //continue; | 1086 | //continue; |
| 1087 | } | 1087 | } |
| @@ -1096,8 +1096,8 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1096,8 +1096,8 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1096 | if(!isset($objDocumento->especie)){ | 1096 | if(!isset($objDocumento->especie)){ |
| 1097 | throw new InfraException('Espécie do documento ['.$objDocumento->descricao.'] não informada.'); | 1097 | throw new InfraException('Espécie do documento ['.$objDocumento->descricao.'] não informada.'); |
| 1098 | } | 1098 | } |
| 1099 | - | ||
| 1100 | -//--------------------------------------------------------------------------------------------------- | 1099 | + |
| 1100 | +//--------------------------------------------------------------------------------------------------- | ||
| 1101 | 1101 | ||
| 1102 | $objDocumentoDTO = new DocumentoDTO(); | 1102 | $objDocumentoDTO = new DocumentoDTO(); |
| 1103 | $objDocumentoDTO->setDblIdDocumento(null); | 1103 | $objDocumentoDTO->setDblIdDocumento(null); |
| @@ -1149,7 +1149,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1149,7 +1149,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1149 | $objDocumentoDTO->setObjProtocoloDTO($objProtocoloDTO); | 1149 | $objDocumentoDTO->setObjProtocoloDTO($objProtocoloDTO); |
| 1150 | $objProtocoloDTO->setDblIdProtocolo(null); | 1150 | $objProtocoloDTO->setDblIdProtocolo(null); |
| 1151 | $objProtocoloDTO->setStrStaProtocolo(ProtocoloRN::$TP_DOCUMENTO_RECEBIDO); | 1151 | $objProtocoloDTO->setStrStaProtocolo(ProtocoloRN::$TP_DOCUMENTO_RECEBIDO); |
| 1152 | - | 1152 | + |
| 1153 | if($objDocumento->descricao != '***'){ | 1153 | if($objDocumento->descricao != '***'){ |
| 1154 | $objProtocoloDTO->setStrDescricao(utf8_decode($objDocumento->descricao)); | 1154 | $objProtocoloDTO->setStrDescricao(utf8_decode($objDocumento->descricao)); |
| 1155 | $objDocumentoDTO->setStrNumero(utf8_decode($objDocumento->descricao)); | 1155 | $objDocumentoDTO->setStrNumero(utf8_decode($objDocumento->descricao)); |
| @@ -1158,14 +1158,14 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1158,14 +1158,14 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1158 | $objDocumentoDTO->setStrNumero(""); | 1158 | $objDocumentoDTO->setStrNumero(""); |
| 1159 | } | 1159 | } |
| 1160 | //TODO: Avaliar regra de formação do número do documento | 1160 | //TODO: Avaliar regra de formação do número do documento |
| 1161 | - | 1161 | + |
| 1162 | $objProtocoloDTO->setStrStaNivelAcessoLocal($this->obterNivelSigiloSEI($objDocumento->nivelDeSigilo)); | 1162 | $objProtocoloDTO->setStrStaNivelAcessoLocal($this->obterNivelSigiloSEI($objDocumento->nivelDeSigilo)); |
| 1163 | $objProtocoloDTO->setDtaGeracao($this->objProcessoEletronicoRN->converterDataSEI($objDocumento->dataHoraDeProducao)); | 1163 | $objProtocoloDTO->setDtaGeracao($this->objProcessoEletronicoRN->converterDataSEI($objDocumento->dataHoraDeProducao)); |
| 1164 | $objProtocoloDTO->setArrObjAnexoDTO(array()); | 1164 | $objProtocoloDTO->setArrObjAnexoDTO(array()); |
| 1165 | $objProtocoloDTO->setArrObjRelProtocoloAssuntoDTO(array()); | 1165 | $objProtocoloDTO->setArrObjRelProtocoloAssuntoDTO(array()); |
| 1166 | $objProtocoloDTO->setArrObjRelProtocoloProtocoloDTO(array()); | 1166 | $objProtocoloDTO->setArrObjRelProtocoloProtocoloDTO(array()); |
| 1167 | $objProtocoloDTO->setArrObjParticipanteDTO(array()); | 1167 | $objProtocoloDTO->setArrObjParticipanteDTO(array()); |
| 1168 | - | 1168 | + |
| 1169 | //TODO: Analisar se o modelo de dados do PEN possui destinatários específicos para os documentos | 1169 | //TODO: Analisar se o modelo de dados do PEN possui destinatários específicos para os documentos |
| 1170 | //caso não possua, analisar o repasse de tais informações via parãmetros adicionais | 1170 | //caso não possua, analisar o repasse de tais informações via parãmetros adicionais |
| 1171 | 1171 | ||
| @@ -1200,9 +1200,9 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1200,9 +1200,9 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1200 | $objReabrirProcessoDTO->setNumIdUsuario(SessaoSEI::getInstance()->getNumIdUsuario()); | 1200 | $objReabrirProcessoDTO->setNumIdUsuario(SessaoSEI::getInstance()->getNumIdUsuario()); |
| 1201 | $objProcedimentoRN->reabrirRN0966($objReabrirProcessoDTO); | 1201 | $objProcedimentoRN->reabrirRN0966($objReabrirProcessoDTO); |
| 1202 | $bolReabriuAutomaticamente = true; | 1202 | $bolReabriuAutomaticamente = true; |
| 1203 | - } | 1203 | + } |
| 1204 | } | 1204 | } |
| 1205 | - | 1205 | + |
| 1206 | //$objOperacaoServicoDTO = new OperacaoServicoDTO(); | 1206 | //$objOperacaoServicoDTO = new OperacaoServicoDTO(); |
| 1207 | //$this->adicionarCriteriosUnidadeProcessoDocumento ($objOperacaoServicoDTO,$objUnidadeDTO,$objProcedimentoDTO,$objDocumentoDTO); | 1207 | //$this->adicionarCriteriosUnidadeProcessoDocumento ($objOperacaoServicoDTO,$objUnidadeDTO,$objProcedimentoDTO,$objDocumentoDTO); |
| 1208 | //$objOperacaoServicoDTO->setNumStaOperacaoServico(OperacaoServicoRN::$TS_INCLUIR_DOCUMENTO); | 1208 | //$objOperacaoServicoDTO->setNumStaOperacaoServico(OperacaoServicoRN::$TS_INCLUIR_DOCUMENTO); |
| @@ -1227,7 +1227,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1227,7 +1227,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1227 | $objDocumentoDTO->getObjProtocoloDTO()->setStrStaGrauSigilo($objTipoProcedimentoDTO->getStrStaGrauSigiloSugestao()); | 1227 | $objDocumentoDTO->getObjProtocoloDTO()->setStrStaGrauSigilo($objTipoProcedimentoDTO->getStrStaGrauSigiloSugestao()); |
| 1228 | $objDocumentoDTO->getObjProtocoloDTO()->setNumIdHipoteseLegal($objTipoProcedimentoDTO->getNumIdHipoteseLegalSugestao()); | 1228 | $objDocumentoDTO->getObjProtocoloDTO()->setNumIdHipoteseLegal($objTipoProcedimentoDTO->getNumIdHipoteseLegalSugestao()); |
| 1229 | } | 1229 | } |
| 1230 | - | 1230 | + |
| 1231 | if ($this->obterNivelSigiloSEI($objDocumento->nivelDeSigilo) == ProtocoloRN::$NA_RESTRITO) { | 1231 | if ($this->obterNivelSigiloSEI($objDocumento->nivelDeSigilo) == ProtocoloRN::$NA_RESTRITO) { |
| 1232 | $objHipoteseLegalRecebido = new PenRelHipoteseLegalRecebidoRN(); | 1232 | $objHipoteseLegalRecebido = new PenRelHipoteseLegalRecebidoRN(); |
| 1233 | $objPenParametroRN = new PenParametroRN(); | 1233 | $objPenParametroRN = new PenParametroRN(); |
| @@ -1236,7 +1236,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1236,7 +1236,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1236 | if (!isset($objDocumento->hipoteseLegal) || (isset($objDocumento->hipoteseLegal) && empty($objDocumento->hipoteseLegal->identificacao))) { | 1236 | if (!isset($objDocumento->hipoteseLegal) || (isset($objDocumento->hipoteseLegal) && empty($objDocumento->hipoteseLegal->identificacao))) { |
| 1237 | $objDocumentoDTO->getObjProtocoloDTO()->setNumIdHipoteseLegal($numIdHipoteseLegalPadrao); | 1237 | $objDocumentoDTO->getObjProtocoloDTO()->setNumIdHipoteseLegal($numIdHipoteseLegalPadrao); |
| 1238 | } else { | 1238 | } else { |
| 1239 | - | 1239 | + |
| 1240 | $numIdHipoteseLegal = $objHipoteseLegalRecebido->getIdHipoteseLegalSEI($objDocumento->hipoteseLegal->identificacao); | 1240 | $numIdHipoteseLegal = $objHipoteseLegalRecebido->getIdHipoteseLegalSEI($objDocumento->hipoteseLegal->identificacao); |
| 1241 | if (empty($numIdHipoteseLegal)) { | 1241 | if (empty($numIdHipoteseLegal)) { |
| 1242 | $objDocumentoDTO->getObjProtocoloDTO()->setNumIdHipoteseLegal($numIdHipoteseLegalPadrao); | 1242 | $objDocumentoDTO->getObjProtocoloDTO()->setNumIdHipoteseLegal($numIdHipoteseLegalPadrao); |
| @@ -1245,7 +1245,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1245,7 +1245,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1245 | } | 1245 | } |
| 1246 | } | 1246 | } |
| 1247 | } | 1247 | } |
| 1248 | - | 1248 | + |
| 1249 | $objDocumentoDTO->getObjProtocoloDTO()->setArrObjParticipanteDTO($this->prepararParticipantes($objDocumentoDTO->getObjProtocoloDTO()->getArrObjParticipanteDTO())); | 1249 | $objDocumentoDTO->getObjProtocoloDTO()->setArrObjParticipanteDTO($this->prepararParticipantes($objDocumentoDTO->getObjProtocoloDTO()->getArrObjParticipanteDTO())); |
| 1250 | 1250 | ||
| 1251 | $objDocumentoRN = new DocumentoRN(); | 1251 | $objDocumentoRN = new DocumentoRN(); |
| @@ -1253,13 +1253,13 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1253,13 +1253,13 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1253 | $strConteudoCodificado = $objDocumentoDTO->getStrConteudo(); | 1253 | $strConteudoCodificado = $objDocumentoDTO->getStrConteudo(); |
| 1254 | $objDocumentoDTO->setStrConteudo(null); | 1254 | $objDocumentoDTO->setStrConteudo(null); |
| 1255 | //$objDocumentoDTO->setStrSinFormulario('N'); | 1255 | //$objDocumentoDTO->setStrSinFormulario('N'); |
| 1256 | - | 1256 | + |
| 1257 | $objDocumentoDTO->getObjProtocoloDTO()->setNumIdUnidadeGeradora(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); | 1257 | $objDocumentoDTO->getObjProtocoloDTO()->setNumIdUnidadeGeradora(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); |
| 1258 | $objDocumentoDTO->setStrSinBloqueado('S'); | 1258 | $objDocumentoDTO->setStrSinBloqueado('S'); |
| 1259 | - | 1259 | + |
| 1260 | //TODO: Fazer a atribuição dos componentes digitais do processo a partir desse ponto | 1260 | //TODO: Fazer a atribuição dos componentes digitais do processo a partir desse ponto |
| 1261 | - $this->atribuirComponentesDigitais($objDocumentoDTO, $objDocumento->componenteDigital); | ||
| 1262 | - $objDocumentoDTOGerado = $objDocumentoRN->cadastrarRN0003($objDocumentoDTO); | 1261 | + $this->atribuirComponentesDigitais($objDocumentoDTO, $objDocumento->componenteDigital); |
| 1262 | + $objDocumentoDTOGerado = $objDocumentoRN->cadastrarRN0003($objDocumentoDTO); | ||
| 1263 | 1263 | ||
| 1264 | $objAtividadeDTOVisualizacao = new AtividadeDTO(); | 1264 | $objAtividadeDTOVisualizacao = new AtividadeDTO(); |
| 1265 | $objAtividadeDTOVisualizacao->setDblIdProtocolo($objDocumentoDTO->getDblIdProcedimento()); | 1265 | $objAtividadeDTOVisualizacao->setDblIdProtocolo($objDocumentoDTO->getDblIdProcedimento()); |
| @@ -1276,11 +1276,11 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1276,11 +1276,11 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1276 | 1276 | ||
| 1277 | $objDocumento->idDocumentoSEI = $objDocumentoDTO->getDblIdDocumento(); | 1277 | $objDocumento->idDocumentoSEI = $objDocumentoDTO->getDblIdDocumento(); |
| 1278 | $arrObjDocumentoDTO[] = $objDocumentoDTO; | 1278 | $arrObjDocumentoDTO[] = $objDocumentoDTO; |
| 1279 | - | 1279 | + |
| 1280 | if(isset($objDocumento->retirado) && $objDocumento->retirado === true) { | 1280 | if(isset($objDocumento->retirado) && $objDocumento->retirado === true) { |
| 1281 | $this->documentosRetirados[] = $objDocumento->idDocumentoSEI; | 1281 | $this->documentosRetirados[] = $objDocumento->idDocumentoSEI; |
| 1282 | } | 1282 | } |
| 1283 | - | 1283 | + |
| 1284 | } | 1284 | } |
| 1285 | 1285 | ||
| 1286 | foreach($this->documentosRetirados as $documentoCancelado){ | 1286 | foreach($this->documentosRetirados as $documentoCancelado){ |
| @@ -1293,23 +1293,23 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1293,23 +1293,23 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1293 | } | 1293 | } |
| 1294 | 1294 | ||
| 1295 | $objProcedimentoDTO->setArrObjDocumentoDTO($arrObjDocumentoDTO); | 1295 | $objProcedimentoDTO->setArrObjDocumentoDTO($arrObjDocumentoDTO); |
| 1296 | - | 1296 | + |
| 1297 | /* if($numIdUnidadeAtual != $numIdUnidadeGeradora){ | 1297 | /* if($numIdUnidadeAtual != $numIdUnidadeGeradora){ |
| 1298 | - SessaoSEI::getInstance(false)->simularLogin('SEI', null, null, $numIdUnidadeAtual); | 1298 | + SessaoSEI::getInstance(false)->simularLogin('SEI', null, null, $numIdUnidadeAtual); |
| 1299 | } */ | 1299 | } */ |
| 1300 | } | 1300 | } |
| 1301 | 1301 | ||
| 1302 | //TODO: Método deverá poderá ser transferido para a classe responsável por fazer o recebimento dos componentes digitais | 1302 | //TODO: Método deverá poderá ser transferido para a classe responsável por fazer o recebimento dos componentes digitais |
| 1303 | - private function atribuirComponentesDigitais(DocumentoDTO $parObjDocumentoDTO, $parArrObjComponentesDigitais) | 1303 | + private function atribuirComponentesDigitais(DocumentoDTO $parObjDocumentoDTO, $parArrObjComponentesDigitais) |
| 1304 | { | 1304 | { |
| 1305 | if(!isset($parArrObjComponentesDigitais)) { | 1305 | if(!isset($parArrObjComponentesDigitais)) { |
| 1306 | - throw new InfraException('Componentes digitais do documento não informado.'); | 1306 | + throw new InfraException('Componentes digitais do documento não informado.'); |
| 1307 | } | 1307 | } |
| 1308 | 1308 | ||
| 1309 | //TODO: Aplicar mesmas validações realizadas no momento do upload de um documento InfraPagina::processarUpload | 1309 | //TODO: Aplicar mesmas validações realizadas no momento do upload de um documento InfraPagina::processarUpload |
| 1310 | //TODO: Avaliar a refatoração do código abaixo para impedir a duplicação de regras de negócios | 1310 | //TODO: Avaliar a refatoração do código abaixo para impedir a duplicação de regras de negócios |
| 1311 | - | ||
| 1312 | - | 1311 | + |
| 1312 | + | ||
| 1313 | $arrObjAnexoDTO = array(); | 1313 | $arrObjAnexoDTO = array(); |
| 1314 | if($parObjDocumentoDTO->getObjProtocoloDTO()->isSetArrObjAnexoDTO()) { | 1314 | if($parObjDocumentoDTO->getObjProtocoloDTO()->isSetArrObjAnexoDTO()) { |
| 1315 | $arrObjAnexoDTO = $parObjDocumentoDTO->getObjProtocoloDTO()->getArrObjAnexoDTO(); | 1315 | $arrObjAnexoDTO = $parObjDocumentoDTO->getObjProtocoloDTO()->getArrObjAnexoDTO(); |
| @@ -1353,7 +1353,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1353,7 +1353,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1353 | 1353 | ||
| 1354 | private function atribuirDataHoraDeRegistro(){ | 1354 | private function atribuirDataHoraDeRegistro(){ |
| 1355 | 1355 | ||
| 1356 | - } | 1356 | + } |
| 1357 | 1357 | ||
| 1358 | private function cadastrarTramiteDeProcesso($objTramite, $objProcesso){ | 1358 | private function cadastrarTramiteDeProcesso($objTramite, $objProcesso){ |
| 1359 | 1359 | ||
| @@ -1366,7 +1366,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1366,7 +1366,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1366 | } | 1366 | } |
| 1367 | 1367 | ||
| 1368 | $objDestinatario = $objMetadadosProcedimento->metadados->destinatario; | 1368 | $objDestinatario = $objMetadadosProcedimento->metadados->destinatario; |
| 1369 | - | 1369 | + |
| 1370 | $objPenParametroRN = new PenParametroRN(); | 1370 | $objPenParametroRN = new PenParametroRN(); |
| 1371 | $numIdRepositorioOrigem = $objPenParametroRN->getParametro('PEN_ID_REPOSITORIO_ORIGEM'); | 1371 | $numIdRepositorioOrigem = $objPenParametroRN->getParametro('PEN_ID_REPOSITORIO_ORIGEM'); |
| 1372 | $numIdRepositorioDestinoProcesso = $objDestinatario->identificacaoDoRepositorioDeEstruturas; | 1372 | $numIdRepositorioDestinoProcesso = $objDestinatario->identificacaoDoRepositorioDeEstruturas; |
| @@ -1379,7 +1379,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1379,7 +1379,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1379 | 1379 | ||
| 1380 | //Validação do unidade de destino do processo | 1380 | //Validação do unidade de destino do processo |
| 1381 | $objUnidadeDTO = new PenUnidadeDTO(); | 1381 | $objUnidadeDTO = new PenUnidadeDTO(); |
| 1382 | - $objUnidadeDTO->setNumIdUnidadeRH($numeroDeIdentificacaoDaEstrutura); | 1382 | + $objUnidadeDTO->setNumIdUnidadeRH($numeroDeIdentificacaoDaEstrutura); |
| 1383 | $objUnidadeDTO->setStrSinAtivo('S'); | 1383 | $objUnidadeDTO->setStrSinAtivo('S'); |
| 1384 | $objUnidadeDTO->retNumIdUnidade(); | 1384 | $objUnidadeDTO->retNumIdUnidade(); |
| 1385 | 1385 | ||
| @@ -1387,8 +1387,8 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1387,8 +1387,8 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1387 | $objUnidadeDTO = $objUnidadeRN->consultarRN0125($objUnidadeDTO); | 1387 | $objUnidadeDTO = $objUnidadeRN->consultarRN0125($objUnidadeDTO); |
| 1388 | 1388 | ||
| 1389 | if(!isset($objUnidadeDTO)){ | 1389 | if(!isset($objUnidadeDTO)){ |
| 1390 | - $objInfraException->adicionarValidacao("Unidade de destino [Estrutura: {$numeroDeIdentificacaoDaEstrutura}] não localizada."); | ||
| 1391 | - } | 1390 | + $objInfraException->adicionarValidacao("Unidade de destino [Estrutura: {$numeroDeIdentificacaoDaEstrutura}] não configurada para receber trâmites externos."); |
| 1391 | + } | ||
| 1392 | } | 1392 | } |
| 1393 | 1393 | ||
| 1394 | private function validarDadosRemetente(InfraException $objInfraException, $objMetadadosProcedimento){ | 1394 | private function validarDadosRemetente(InfraException $objInfraException, $objMetadadosProcedimento){ |
| @@ -1397,7 +1397,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1397,7 +1397,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1397 | 1397 | ||
| 1398 | private function validarDadosProcesso(InfraException $objInfraException, $objMetadadosProcedimento){ | 1398 | private function validarDadosProcesso(InfraException $objInfraException, $objMetadadosProcedimento){ |
| 1399 | 1399 | ||
| 1400 | - } | 1400 | + } |
| 1401 | 1401 | ||
| 1402 | private function validarDadosDocumentos(InfraException $objInfraException, $objMetadadosProcedimento){ | 1402 | private function validarDadosDocumentos(InfraException $objInfraException, $objMetadadosProcedimento){ |
| 1403 | 1403 | ||
| @@ -1416,7 +1416,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1416,7 +1416,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1416 | break; | 1416 | break; |
| 1417 | } | 1417 | } |
| 1418 | } | 1418 | } |
| 1419 | - | 1419 | + |
| 1420 | private function obterHipoteseLegalSEI($parNumIdHipoteseLegalPEN) { | 1420 | private function obterHipoteseLegalSEI($parNumIdHipoteseLegalPEN) { |
| 1421 | //Atribuí a hipótese legal | 1421 | //Atribuí a hipótese legal |
| 1422 | $objHipoteseLegalRecebido = new PenRelHipoteseLegalRecebidoRN(); | 1422 | $objHipoteseLegalRecebido = new PenRelHipoteseLegalRecebidoRN(); |
| @@ -1424,7 +1424,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1424,7 +1424,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1424 | $numIdHipoteseLegalPadrao = $objPenParametroRN->getParametro('HIPOTESE_LEGAL_PADRAO'); | 1424 | $numIdHipoteseLegalPadrao = $objPenParametroRN->getParametro('HIPOTESE_LEGAL_PADRAO'); |
| 1425 | 1425 | ||
| 1426 | $numIdHipoteseLegal = $objHipoteseLegalRecebido->getIdHipoteseLegalSEI($parNumIdHipoteseLegalPEN); | 1426 | $numIdHipoteseLegal = $objHipoteseLegalRecebido->getIdHipoteseLegalSEI($parNumIdHipoteseLegalPEN); |
| 1427 | - | 1427 | + |
| 1428 | if (empty($numIdHipoteseLegal)) { | 1428 | if (empty($numIdHipoteseLegal)) { |
| 1429 | return $numIdHipoteseLegalPadrao; | 1429 | return $numIdHipoteseLegalPadrao; |
| 1430 | } else { | 1430 | } else { |
| @@ -1436,7 +1436,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1436,7 +1436,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1436 | private function obterUnidadeMapeada($numIdentificacaoDaEstrutura) | 1436 | private function obterUnidadeMapeada($numIdentificacaoDaEstrutura) |
| 1437 | { | 1437 | { |
| 1438 | $objUnidadeDTO = new PenUnidadeDTO(); | 1438 | $objUnidadeDTO = new PenUnidadeDTO(); |
| 1439 | - $objUnidadeDTO->setNumIdUnidadeRH($numIdentificacaoDaEstrutura); | 1439 | + $objUnidadeDTO->setNumIdUnidadeRH($numIdentificacaoDaEstrutura); |
| 1440 | $objUnidadeDTO->setStrSinAtivo('S'); | 1440 | $objUnidadeDTO->setStrSinAtivo('S'); |
| 1441 | $objUnidadeDTO->retNumIdUnidade(); | 1441 | $objUnidadeDTO->retNumIdUnidade(); |
| 1442 | $objUnidadeDTO->retNumIdOrgao(); | 1442 | $objUnidadeDTO->retNumIdOrgao(); |
| @@ -1447,9 +1447,9 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1447,9 +1447,9 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1447 | return $objUnidadeRN->consultarRN0125($objUnidadeDTO); | 1447 | return $objUnidadeRN->consultarRN0125($objUnidadeDTO); |
| 1448 | } | 1448 | } |
| 1449 | 1449 | ||
| 1450 | - | 1450 | + |
| 1451 | /** | 1451 | /** |
| 1452 | - * | 1452 | + * |
| 1453 | * @return SerieDTO | 1453 | * @return SerieDTO |
| 1454 | */ | 1454 | */ |
| 1455 | private function obterSerieMapeada($numCodigoEspecie) | 1455 | private function obterSerieMapeada($numCodigoEspecie) |
| @@ -1462,7 +1462,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1462,7 +1462,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1462 | 1462 | ||
| 1463 | $objGenericoBD = new GenericoBD($this->getObjInfraIBanco()); | 1463 | $objGenericoBD = new GenericoBD($this->getObjInfraIBanco()); |
| 1464 | $objMapDTO = $objGenericoBD->consultar($objMapDTO); | 1464 | $objMapDTO = $objGenericoBD->consultar($objMapDTO); |
| 1465 | - | 1465 | + |
| 1466 | if(empty($objMapDTO)) { | 1466 | if(empty($objMapDTO)) { |
| 1467 | $objMapDTO = new PenRelTipoDocMapRecebidoDTO(); | 1467 | $objMapDTO = new PenRelTipoDocMapRecebidoDTO(); |
| 1468 | $objMapDTO->retNumIdSerie(); | 1468 | $objMapDTO->retNumIdSerie(); |
| @@ -1484,7 +1484,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1484,7 +1484,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1484 | return $objSerieDTO; | 1484 | return $objSerieDTO; |
| 1485 | } | 1485 | } |
| 1486 | 1486 | ||
| 1487 | - private function relacionarProcedimentos($objProcedimentoDTO1, $objProcedimentoDTO2) | 1487 | + private function relacionarProcedimentos($objProcedimentoDTO1, $objProcedimentoDTO2) |
| 1488 | { | 1488 | { |
| 1489 | if(!isset($objProcedimentoDTO1) || !isset($objProcedimentoDTO1)) { | 1489 | if(!isset($objProcedimentoDTO1) || !isset($objProcedimentoDTO1)) { |
| 1490 | throw new InfraException('Parâmetro $objProcedimentoDTO não informado.'); | 1490 | throw new InfraException('Parâmetro $objProcedimentoDTO não informado.'); |
| @@ -1524,10 +1524,10 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1524,10 +1524,10 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1524 | } else { | 1524 | } else { |
| 1525 | if ($objParticipanteDTO->getStrStaParticipacao()==ParticipanteRN::$TP_INTERESSADO) { | 1525 | if ($objParticipanteDTO->getStrStaParticipacao()==ParticipanteRN::$TP_INTERESSADO) { |
| 1526 | throw new InfraException('Interessado vazio ou nulo.'); | 1526 | throw new InfraException('Interessado vazio ou nulo.'); |
| 1527 | - } | 1527 | + } |
| 1528 | else if ($objParticipanteDTO->getStrStaParticipacao()==ParticipanteRN::$TP_REMETENTE) { | 1528 | else if ($objParticipanteDTO->getStrStaParticipacao()==ParticipanteRN::$TP_REMETENTE) { |
| 1529 | throw new InfraException('Remetente vazio ou nulo.'); | 1529 | throw new InfraException('Remetente vazio ou nulo.'); |
| 1530 | - } | 1530 | + } |
| 1531 | else if ($objParticipanteDTO->getStrStaParticipacao()==ParticipanteRN::$TP_DESTINATARIO) { | 1531 | else if ($objParticipanteDTO->getStrStaParticipacao()==ParticipanteRN::$TP_DESTINATARIO) { |
| 1532 | throw new InfraException('Destinatário vazio ou nulo.'); | 1532 | throw new InfraException('Destinatário vazio ou nulo.'); |
| 1533 | } | 1533 | } |
| @@ -1566,7 +1566,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1566,7 +1566,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1566 | return $arrObjParticipanteDTO; | 1566 | return $arrObjParticipanteDTO; |
| 1567 | } | 1567 | } |
| 1568 | 1568 | ||
| 1569 | - private function registrarProcedimentoNaoVisualizado(ProcedimentoDTO $parObjProcedimentoDTO) | 1569 | + private function registrarProcedimentoNaoVisualizado(ProcedimentoDTO $parObjProcedimentoDTO) |
| 1570 | { | 1570 | { |
| 1571 | $objAtividadeDTOVisualizacao = new AtividadeDTO(); | 1571 | $objAtividadeDTOVisualizacao = new AtividadeDTO(); |
| 1572 | $objAtividadeDTOVisualizacao->setDblIdProtocolo($parObjProcedimentoDTO->getDblIdProcedimento()); | 1572 | $objAtividadeDTOVisualizacao->setDblIdProtocolo($parObjProcedimentoDTO->getDblIdProcedimento()); |
| @@ -1576,13 +1576,13 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1576,13 +1576,13 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1576 | $objAtividadeRN->atualizarVisualizacao($objAtividadeDTOVisualizacao); | 1576 | $objAtividadeRN->atualizarVisualizacao($objAtividadeDTOVisualizacao); |
| 1577 | } | 1577 | } |
| 1578 | 1578 | ||
| 1579 | - private function enviarProcedimentoUnidade(ProcedimentoDTO $parObjProcedimentoDTO, $retransmissao = false) | 1579 | + private function enviarProcedimentoUnidade(ProcedimentoDTO $parObjProcedimentoDTO, $retransmissao = false) |
| 1580 | { | 1580 | { |
| 1581 | $objAtividadeRN = new PenAtividadeRN(); | 1581 | $objAtividadeRN = new PenAtividadeRN(); |
| 1582 | $objInfraException = new InfraException(); | 1582 | $objInfraException = new InfraException(); |
| 1583 | 1583 | ||
| 1584 | if(!$parObjProcedimentoDTO->isSetArrObjUnidadeDTO() || count($parObjProcedimentoDTO->getArrObjUnidadeDTO()) == 0) { | 1584 | if(!$parObjProcedimentoDTO->isSetArrObjUnidadeDTO() || count($parObjProcedimentoDTO->getArrObjUnidadeDTO()) == 0) { |
| 1585 | - $objInfraException->lancarValidacao('Unidade de destino do processo não informada.'); | 1585 | + $objInfraException->lancarValidacao('Unidade de destino do processo não informada.'); |
| 1586 | } | 1586 | } |
| 1587 | 1587 | ||
| 1588 | $arrObjUnidadeDTO = $parObjProcedimentoDTO->getArrObjUnidadeDTO(); | 1588 | $arrObjUnidadeDTO = $parObjProcedimentoDTO->getArrObjUnidadeDTO(); |
| @@ -1626,18 +1626,18 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1626,18 +1626,18 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1626 | $objPesquisaPendenciaDTO->setDblIdProtocolo(array($objProcedimentoDTO->getDblIdProcedimento())); | 1626 | $objPesquisaPendenciaDTO->setDblIdProtocolo(array($objProcedimentoDTO->getDblIdProcedimento())); |
| 1627 | $objPesquisaPendenciaDTO->setNumIdUsuario(SessaoSEI::getInstance()->getNumIdUsuario()); | 1627 | $objPesquisaPendenciaDTO->setNumIdUsuario(SessaoSEI::getInstance()->getNumIdUsuario()); |
| 1628 | $objPesquisaPendenciaDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); | 1628 | $objPesquisaPendenciaDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); |
| 1629 | - | 1629 | + |
| 1630 | if($retransmissao){ | 1630 | if($retransmissao){ |
| 1631 | $objAtividadeRN->setStatusPesquisa(false); | 1631 | $objAtividadeRN->setStatusPesquisa(false); |
| 1632 | - | 1632 | + |
| 1633 | } | 1633 | } |
| 1634 | - | 1634 | + |
| 1635 | $objAtividadeDTO2 = new AtividadeDTO(); | 1635 | $objAtividadeDTO2 = new AtividadeDTO(); |
| 1636 | $objAtividadeDTO2->setDblIdProtocolo($objProcedimentoDTO->getDblIdProcedimento()); | 1636 | $objAtividadeDTO2->setDblIdProtocolo($objProcedimentoDTO->getDblIdProcedimento()); |
| 1637 | $objAtividadeDTO2->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); | 1637 | $objAtividadeDTO2->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); |
| 1638 | $objAtividadeDTO2->setDthConclusao(null); | 1638 | $objAtividadeDTO2->setDthConclusao(null); |
| 1639 | - | ||
| 1640 | - | 1639 | + |
| 1640 | + | ||
| 1641 | if ($objAtividadeRN->contarRN0035($objAtividadeDTO2) == 0) { | 1641 | if ($objAtividadeRN->contarRN0035($objAtividadeDTO2) == 0) { |
| 1642 | 1642 | ||
| 1643 | //reabertura automática | 1643 | //reabertura automática |
| @@ -1646,15 +1646,15 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1646,15 +1646,15 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1646 | $objReabrirProcessoDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); | 1646 | $objReabrirProcessoDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); |
| 1647 | $objReabrirProcessoDTO->setNumIdUsuario(SessaoSEI::getInstance()->getNumIdUsuario()); | 1647 | $objReabrirProcessoDTO->setNumIdUsuario(SessaoSEI::getInstance()->getNumIdUsuario()); |
| 1648 | $objProcedimentoRN->reabrirRN0966($objReabrirProcessoDTO); | 1648 | $objProcedimentoRN->reabrirRN0966($objReabrirProcessoDTO); |
| 1649 | - | ||
| 1650 | - } | ||
| 1651 | - | 1649 | + |
| 1650 | + } | ||
| 1651 | + | ||
| 1652 | //$objPenAtividadeRN = new PenAtividadeRN(); | 1652 | //$objPenAtividadeRN = new PenAtividadeRN(); |
| 1653 | $arrObjProcedimentoDTO = $objAtividadeRN->listarPendenciasRN0754($objPesquisaPendenciaDTO); | 1653 | $arrObjProcedimentoDTO = $objAtividadeRN->listarPendenciasRN0754($objPesquisaPendenciaDTO); |
| 1654 | - | 1654 | + |
| 1655 | $objInfraException->lancarValidacoes(); | 1655 | $objInfraException->lancarValidacoes(); |
| 1656 | - | ||
| 1657 | - | 1656 | + |
| 1657 | + | ||
| 1658 | $objEnviarProcessoDTO = new EnviarProcessoDTO(); | 1658 | $objEnviarProcessoDTO = new EnviarProcessoDTO(); |
| 1659 | $objEnviarProcessoDTO->setArrAtividadesOrigem($arrObjProcedimentoDTO[0]->getArrObjAtividadeDTO()); | 1659 | $objEnviarProcessoDTO->setArrAtividadesOrigem($arrObjProcedimentoDTO[0]->getArrObjAtividadeDTO()); |
| 1660 | 1660 | ||
| @@ -1664,10 +1664,10 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1664,10 +1664,10 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1664 | $objAtividadeDTO->setNumIdUsuarioOrigem(SessaoSEI::getInstance()->getNumIdUsuario()); | 1664 | $objAtividadeDTO->setNumIdUsuarioOrigem(SessaoSEI::getInstance()->getNumIdUsuario()); |
| 1665 | $objAtividadeDTO->setNumIdUnidade($objUnidadeDTO->getNumIdUnidade()); | 1665 | $objAtividadeDTO->setNumIdUnidade($objUnidadeDTO->getNumIdUnidade()); |
| 1666 | $objAtividadeDTO->setNumIdUnidadeOrigem(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); | 1666 | $objAtividadeDTO->setNumIdUnidadeOrigem(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); |
| 1667 | - $objEnviarProcessoDTO->setArrAtividades(array($objAtividadeDTO)); | ||
| 1668 | - | 1667 | + $objEnviarProcessoDTO->setArrAtividades(array($objAtividadeDTO)); |
| 1668 | + | ||
| 1669 | $objPenParametroRN = new PenParametroRN(); | 1669 | $objPenParametroRN = new PenParametroRN(); |
| 1670 | - | 1670 | + |
| 1671 | $objEnviarProcessoDTO->setStrSinManterAberto('N'); | 1671 | $objEnviarProcessoDTO->setStrSinManterAberto('N'); |
| 1672 | $strEnviaEmailNotificacao = $objPenParametroRN->getParametro('PEN_ENVIA_EMAIL_NOTIFICACAO_RECEBIMENTO'); | 1672 | $strEnviaEmailNotificacao = $objPenParametroRN->getParametro('PEN_ENVIA_EMAIL_NOTIFICACAO_RECEBIMENTO'); |
| 1673 | $objEnviarProcessoDTO->setStrSinEnviarEmailNotificacao($strEnviaEmailNotificacao); | 1673 | $objEnviarProcessoDTO->setStrSinEnviarEmailNotificacao($strEnviaEmailNotificacao); |
| @@ -1675,44 +1675,44 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1675,44 +1675,44 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1675 | $objEnviarProcessoDTO->setDtaPrazo(null); | 1675 | $objEnviarProcessoDTO->setDtaPrazo(null); |
| 1676 | $objEnviarProcessoDTO->setNumDias(null); | 1676 | $objEnviarProcessoDTO->setNumDias(null); |
| 1677 | $objEnviarProcessoDTO->setStrSinDiasUteis('N'); | 1677 | $objEnviarProcessoDTO->setStrSinDiasUteis('N'); |
| 1678 | - | 1678 | + |
| 1679 | $objAtividadeRN->enviarRN0023($objEnviarProcessoDTO); | 1679 | $objAtividadeRN->enviarRN0023($objEnviarProcessoDTO); |
| 1680 | - | 1680 | + |
| 1681 | } | 1681 | } |
| 1682 | 1682 | ||
| 1683 | /* Essa é a função estática de comparação */ | 1683 | /* Essa é a função estática de comparação */ |
| 1684 | static function comparacaoOrdemDocumentos($parDocumento1, $parDocumento2) | 1684 | static function comparacaoOrdemDocumentos($parDocumento1, $parDocumento2) |
| 1685 | { | 1685 | { |
| 1686 | $numOrdemDocumento1 = strtolower($parDocumento1->ordem); | 1686 | $numOrdemDocumento1 = strtolower($parDocumento1->ordem); |
| 1687 | - $numOrdemDocumento2 = strtolower($parDocumento2->ordem); | ||
| 1688 | - return $numOrdemDocumento1 - $numOrdemDocumento2; | ||
| 1689 | - } | ||
| 1690 | - | ||
| 1691 | - | 1687 | + $numOrdemDocumento2 = strtolower($parDocumento2->ordem); |
| 1688 | + return $numOrdemDocumento1 - $numOrdemDocumento2; | ||
| 1689 | + } | ||
| 1690 | + | ||
| 1691 | + | ||
| 1692 | public function receberTramitesRecusados($parNumIdentificacaoTramite) { | 1692 | public function receberTramitesRecusados($parNumIdentificacaoTramite) { |
| 1693 | 1693 | ||
| 1694 | if (empty($parNumIdentificacaoTramite)) { | 1694 | if (empty($parNumIdentificacaoTramite)) { |
| 1695 | throw new InfraException('Parâmetro $parNumIdentificacaoTramite não informado.'); | 1695 | throw new InfraException('Parâmetro $parNumIdentificacaoTramite não informado.'); |
| 1696 | } | 1696 | } |
| 1697 | - | 1697 | + |
| 1698 | //Busca os dados do trâmite no barramento | 1698 | //Busca os dados do trâmite no barramento |
| 1699 | $tramite = $this->objProcessoEletronicoRN->consultarTramites($parNumIdentificacaoTramite); | 1699 | $tramite = $this->objProcessoEletronicoRN->consultarTramites($parNumIdentificacaoTramite); |
| 1700 | - | 1700 | + |
| 1701 | if(!isset($tramite[0])){ | 1701 | if(!isset($tramite[0])){ |
| 1702 | throw new InfraException("Não foi encontrado o trâmite de número {$parNumIdentificacaoTramite} para realizar a ciência da recusa"); | 1702 | throw new InfraException("Não foi encontrado o trâmite de número {$parNumIdentificacaoTramite} para realizar a ciência da recusa"); |
| 1703 | } | 1703 | } |
| 1704 | - | 1704 | + |
| 1705 | $tramite = $tramite[0]; | 1705 | $tramite = $tramite[0]; |
| 1706 | - | 1706 | + |
| 1707 | $objTramiteDTO = new TramiteDTO(); | 1707 | $objTramiteDTO = new TramiteDTO(); |
| 1708 | $objTramiteDTO->setNumIdTramite($parNumIdentificacaoTramite); | 1708 | $objTramiteDTO->setNumIdTramite($parNumIdentificacaoTramite); |
| 1709 | $objTramiteDTO->retNumIdUnidade(); | 1709 | $objTramiteDTO->retNumIdUnidade(); |
| 1710 | - | 1710 | + |
| 1711 | $objTramiteBD = new TramiteBD(BancoSEI::getInstance()); | 1711 | $objTramiteBD = new TramiteBD(BancoSEI::getInstance()); |
| 1712 | $objTramiteDTO = $objTramiteBD->consultar($objTramiteDTO); | 1712 | $objTramiteDTO = $objTramiteBD->consultar($objTramiteDTO); |
| 1713 | - | 1713 | + |
| 1714 | SessaoSEI::getInstance(false)->simularLogin('SEI', null, null, $objTramiteDTO->getNumIdUnidade()); | 1714 | SessaoSEI::getInstance(false)->simularLogin('SEI', null, null, $objTramiteDTO->getNumIdUnidade()); |
| 1715 | - | 1715 | + |
| 1716 | //Busca os dados do procedimento | 1716 | //Busca os dados do procedimento |
| 1717 | $objProcessoEletronicoDTO = new ProcessoEletronicoDTO(); | 1717 | $objProcessoEletronicoDTO = new ProcessoEletronicoDTO(); |
| 1718 | $objProcessoEletronicoDTO->setStrNumeroRegistro($tramite->NRE); | 1718 | $objProcessoEletronicoDTO->setStrNumeroRegistro($tramite->NRE); |
| @@ -1720,7 +1720,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1720,7 +1720,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1720 | 1720 | ||
| 1721 | $objProcessoEletronicoBD = new ProcessoEletronicoBD($this->getObjInfraIBanco()); | 1721 | $objProcessoEletronicoBD = new ProcessoEletronicoBD($this->getObjInfraIBanco()); |
| 1722 | $objProcessoEletronicoDTO = $objProcessoEletronicoBD->consultar($objProcessoEletronicoDTO); | 1722 | $objProcessoEletronicoDTO = $objProcessoEletronicoBD->consultar($objProcessoEletronicoDTO); |
| 1723 | - | 1723 | + |
| 1724 | //Busca a última atividade de trâmite externo | 1724 | //Busca a última atividade de trâmite externo |
| 1725 | $objAtividadeDTO = new AtividadeDTO(); | 1725 | $objAtividadeDTO = new AtividadeDTO(); |
| 1726 | $objAtividadeDTO->setDblIdProtocolo($objProcessoEletronicoDTO->getDblIdProcedimento()); | 1726 | $objAtividadeDTO->setDblIdProtocolo($objProcessoEletronicoDTO->getDblIdProcedimento()); |
| @@ -1731,7 +1731,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1731,7 +1731,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1731 | 1731 | ||
| 1732 | $objAtividadeBD = new AtividadeBD($this->getObjInfraIBanco()); | 1732 | $objAtividadeBD = new AtividadeBD($this->getObjInfraIBanco()); |
| 1733 | $objAtividadeDTO = $objAtividadeBD->consultar($objAtividadeDTO); | 1733 | $objAtividadeDTO = $objAtividadeBD->consultar($objAtividadeDTO); |
| 1734 | - | 1734 | + |
| 1735 | //Busca a unidade de destino | 1735 | //Busca a unidade de destino |
| 1736 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); | 1736 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); |
| 1737 | $objAtributoAndamentoDTO->setNumIdAtividade($objAtividadeDTO->getNumIdAtividade()); | 1737 | $objAtributoAndamentoDTO->setNumIdAtividade($objAtividadeDTO->getNumIdAtividade()); |
| @@ -1740,7 +1740,7 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1740,7 +1740,7 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1740 | 1740 | ||
| 1741 | $objAtributoAndamentoBD = new AtributoAndamentoBD($this->getObjInfraIBanco()); | 1741 | $objAtributoAndamentoBD = new AtributoAndamentoBD($this->getObjInfraIBanco()); |
| 1742 | $objAtributoAndamentoDTO = $objAtributoAndamentoBD->consultar($objAtributoAndamentoDTO); | 1742 | $objAtributoAndamentoDTO = $objAtributoAndamentoBD->consultar($objAtributoAndamentoDTO); |
| 1743 | - | 1743 | + |
| 1744 | //Monta o DTO de receber tramite recusado | 1744 | //Monta o DTO de receber tramite recusado |
| 1745 | $objReceberTramiteRecusadoDTO = new ReceberTramiteRecusadoDTO(); | 1745 | $objReceberTramiteRecusadoDTO = new ReceberTramiteRecusadoDTO(); |
| 1746 | $objReceberTramiteRecusadoDTO->setNumIdTramite($parNumIdentificacaoTramite); | 1746 | $objReceberTramiteRecusadoDTO->setNumIdTramite($parNumIdentificacaoTramite); |
| @@ -1749,23 +1749,23 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1749,23 +1749,23 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1749 | $objReceberTramiteRecusadoDTO->setNumIdTarefa(ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_TRAMITE_RECUSADO)); | 1749 | $objReceberTramiteRecusadoDTO->setNumIdTarefa(ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_TRAMITE_RECUSADO)); |
| 1750 | $objReceberTramiteRecusadoDTO->setStrMotivoRecusa(utf8_decode($tramite->justificativaDaRecusa)); | 1750 | $objReceberTramiteRecusadoDTO->setStrMotivoRecusa(utf8_decode($tramite->justificativaDaRecusa)); |
| 1751 | $objReceberTramiteRecusadoDTO->setStrNomeUnidadeDestino($objAtributoAndamentoDTO->getStrValor()); | 1751 | $objReceberTramiteRecusadoDTO->setStrNomeUnidadeDestino($objAtributoAndamentoDTO->getStrValor()); |
| 1752 | - | 1752 | + |
| 1753 | //Faz o tratamento do processo e do trâmite recusado | 1753 | //Faz o tratamento do processo e do trâmite recusado |
| 1754 | $this->receberTramiteRecusadoInterno($objReceberTramiteRecusadoDTO); | 1754 | $this->receberTramiteRecusadoInterno($objReceberTramiteRecusadoDTO); |
| 1755 | - | ||
| 1756 | - | 1755 | + |
| 1756 | + | ||
| 1757 | } | 1757 | } |
| 1758 | 1758 | ||
| 1759 | protected function receberTramiteRecusadoInternoControlado(ReceberTramiteRecusadoDTO $objReceberTramiteRecusadoDTO){ | 1759 | protected function receberTramiteRecusadoInternoControlado(ReceberTramiteRecusadoDTO $objReceberTramiteRecusadoDTO){ |
| 1760 | - | ||
| 1761 | - | 1760 | + |
| 1761 | + | ||
| 1762 | //Realiza o desbloqueio do processo | 1762 | //Realiza o desbloqueio do processo |
| 1763 | $objEntradaDesbloquearProcessoAPI = new EntradaDesbloquearProcessoAPI(); | 1763 | $objEntradaDesbloquearProcessoAPI = new EntradaDesbloquearProcessoAPI(); |
| 1764 | $objEntradaDesbloquearProcessoAPI->setIdProcedimento($objReceberTramiteRecusadoDTO->getNumIdProtocolo()); | 1764 | $objEntradaDesbloquearProcessoAPI->setIdProcedimento($objReceberTramiteRecusadoDTO->getNumIdProtocolo()); |
| 1765 | - | 1765 | + |
| 1766 | $objSeiRN = new SeiRN(); | 1766 | $objSeiRN = new SeiRN(); |
| 1767 | $objSeiRN->desbloquearProcesso($objEntradaDesbloquearProcessoAPI); | 1767 | $objSeiRN->desbloquearProcesso($objEntradaDesbloquearProcessoAPI); |
| 1768 | - | 1768 | + |
| 1769 | //Adiciona um andamento para o trâmite recusado | 1769 | //Adiciona um andamento para o trâmite recusado |
| 1770 | $arrObjAtributoAndamentoDTO = array(); | 1770 | $arrObjAtributoAndamentoDTO = array(); |
| 1771 | 1771 | ||
| @@ -1774,104 +1774,104 @@ class ReceberProcedimentoRN extends InfraRN | @@ -1774,104 +1774,104 @@ class ReceberProcedimentoRN extends InfraRN | ||
| 1774 | $objAtributoAndamentoDTO->setStrValor($objReceberTramiteRecusadoDTO->getStrMotivoRecusa()); | 1774 | $objAtributoAndamentoDTO->setStrValor($objReceberTramiteRecusadoDTO->getStrMotivoRecusa()); |
| 1775 | $objAtributoAndamentoDTO->setStrIdOrigem($objReceberTramiteRecusadoDTO->getNumIdUnidadeOrigem()); | 1775 | $objAtributoAndamentoDTO->setStrIdOrigem($objReceberTramiteRecusadoDTO->getNumIdUnidadeOrigem()); |
| 1776 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; | 1776 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; |
| 1777 | - | ||
| 1778 | - | 1777 | + |
| 1778 | + | ||
| 1779 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); | 1779 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); |
| 1780 | $objAtributoAndamentoDTO->setStrNome('UNIDADE_DESTINO'); | 1780 | $objAtributoAndamentoDTO->setStrNome('UNIDADE_DESTINO'); |
| 1781 | $objAtributoAndamentoDTO->setStrValor($objReceberTramiteRecusadoDTO->getStrNomeUnidadeDestino()); | 1781 | $objAtributoAndamentoDTO->setStrValor($objReceberTramiteRecusadoDTO->getStrNomeUnidadeDestino()); |
| 1782 | $objAtributoAndamentoDTO->setStrIdOrigem($objReceberTramiteRecusadoDTO->getNumIdUnidadeOrigem()); | 1782 | $objAtributoAndamentoDTO->setStrIdOrigem($objReceberTramiteRecusadoDTO->getNumIdUnidadeOrigem()); |
| 1783 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; | 1783 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; |
| 1784 | 1784 | ||
| 1785 | - | 1785 | + |
| 1786 | $objAtividadeDTO = new AtividadeDTO(); | 1786 | $objAtividadeDTO = new AtividadeDTO(); |
| 1787 | $objAtividadeDTO->setDblIdProtocolo($objReceberTramiteRecusadoDTO->getNumIdProtocolo()); | 1787 | $objAtividadeDTO->setDblIdProtocolo($objReceberTramiteRecusadoDTO->getNumIdProtocolo()); |
| 1788 | $objAtividadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); | 1788 | $objAtividadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); |
| 1789 | $objAtividadeDTO->setNumIdTarefa($objReceberTramiteRecusadoDTO->getNumIdTarefa()); | 1789 | $objAtividadeDTO->setNumIdTarefa($objReceberTramiteRecusadoDTO->getNumIdTarefa()); |
| 1790 | $objAtividadeDTO->setArrObjAtributoAndamentoDTO($arrObjAtributoAndamentoDTO); | 1790 | $objAtividadeDTO->setArrObjAtributoAndamentoDTO($arrObjAtributoAndamentoDTO); |
| 1791 | - | 1791 | + |
| 1792 | $objAtividadeRN = new AtividadeRN(); | 1792 | $objAtividadeRN = new AtividadeRN(); |
| 1793 | $objAtividadeRN->gerarInternaRN0727($objAtividadeDTO); | 1793 | $objAtividadeRN->gerarInternaRN0727($objAtividadeDTO); |
| 1794 | - | 1794 | + |
| 1795 | //Sinaliza na PenProtocolo que o processo obteve recusa | 1795 | //Sinaliza na PenProtocolo que o processo obteve recusa |
| 1796 | $objProtocolo = new PenProtocoloDTO(); | 1796 | $objProtocolo = new PenProtocoloDTO(); |
| 1797 | $objProtocolo->setDblIdProtocolo($objReceberTramiteRecusadoDTO->getNumIdProtocolo()); | 1797 | $objProtocolo->setDblIdProtocolo($objReceberTramiteRecusadoDTO->getNumIdProtocolo()); |
| 1798 | $objProtocolo->setStrSinObteveRecusa('S'); | 1798 | $objProtocolo->setStrSinObteveRecusa('S'); |
| 1799 | - | 1799 | + |
| 1800 | $objProtocoloBD = new ProtocoloBD($this->getObjInfraIBanco()); | 1800 | $objProtocoloBD = new ProtocoloBD($this->getObjInfraIBanco()); |
| 1801 | $objProtocoloBD->alterar($objProtocolo); | 1801 | $objProtocoloBD->alterar($objProtocolo); |
| 1802 | - | ||
| 1803 | - | 1802 | + |
| 1803 | + | ||
| 1804 | $this->objProcessoEletronicoRN->cienciaRecusa($objReceberTramiteRecusadoDTO->getNumIdTramite()); | 1804 | $this->objProcessoEletronicoRN->cienciaRecusa($objReceberTramiteRecusadoDTO->getNumIdTramite()); |
| 1805 | - | 1805 | + |
| 1806 | 1806 | ||
| 1807 | } | 1807 | } |
| 1808 | - | ||
| 1809 | - | ||
| 1810 | - | 1808 | + |
| 1809 | + | ||
| 1810 | + | ||
| 1811 | /** | 1811 | /** |
| 1812 | - * Método que realiza a validação da extensão dos componentes digitais a serem recebidos | ||
| 1813 | - * | 1812 | + * Método que realiza a validação da extensão dos componentes digitais a serem recebidos |
| 1813 | + * | ||
| 1814 | * @param integer $parIdTramite | 1814 | * @param integer $parIdTramite |
| 1815 | * @param object $parObjProcesso | 1815 | * @param object $parObjProcesso |
| 1816 | * @throws InfraException | 1816 | * @throws InfraException |
| 1817 | */ | 1817 | */ |
| 1818 | public function validarExtensaoComponentesDigitais($parIdTramite, $parObjProcesso){ | 1818 | public function validarExtensaoComponentesDigitais($parIdTramite, $parObjProcesso){ |
| 1819 | - | 1819 | + |
| 1820 | //Armazena o array de documentos | 1820 | //Armazena o array de documentos |
| 1821 | $arrDocumentos = is_array($parObjProcesso->documento) ? $parObjProcesso->documento : array($parObjProcesso->documento) ; | 1821 | $arrDocumentos = is_array($parObjProcesso->documento) ? $parObjProcesso->documento : array($parObjProcesso->documento) ; |
| 1822 | - | ||
| 1823 | - //Instancia o bd do arquivoExtensão | 1822 | + |
| 1823 | + //Instancia o bd do arquivoExtensão | ||
| 1824 | $arquivoExtensaoBD = new ArquivoExtensaoBD($this->getObjInfraIBanco()); | 1824 | $arquivoExtensaoBD = new ArquivoExtensaoBD($this->getObjInfraIBanco()); |
| 1825 | - | 1825 | + |
| 1826 | //Percorre os documentos | 1826 | //Percorre os documentos |
| 1827 | foreach($arrDocumentos as $documento){ | 1827 | foreach($arrDocumentos as $documento){ |
| 1828 | - | ||
| 1829 | - //Busca o nome do documento | 1828 | + |
| 1829 | + //Busca o nome do documento | ||
| 1830 | $nomeDocumento = $documento->componenteDigital->nome; | 1830 | $nomeDocumento = $documento->componenteDigital->nome; |
| 1831 | - | 1831 | + |
| 1832 | //Busca pela extensão do documento | 1832 | //Busca pela extensão do documento |
| 1833 | $arrNomeDocumento = explode('.', $nomeDocumento); | 1833 | $arrNomeDocumento = explode('.', $nomeDocumento); |
| 1834 | $extDocumento = $arrNomeDocumento[count($arrNomeDocumento) - 1]; | 1834 | $extDocumento = $arrNomeDocumento[count($arrNomeDocumento) - 1]; |
| 1835 | - | ||
| 1836 | - //Verifica se a extensão do arquivo está cadastrada e ativa | 1835 | + |
| 1836 | + //Verifica se a extensão do arquivo está cadastrada e ativa | ||
| 1837 | $arquivoExtensaoDTO = new ArquivoExtensaoDTO(); | 1837 | $arquivoExtensaoDTO = new ArquivoExtensaoDTO(); |
| 1838 | $arquivoExtensaoDTO->setStrSinAtivo('S'); | 1838 | $arquivoExtensaoDTO->setStrSinAtivo('S'); |
| 1839 | $arquivoExtensaoDTO->setStrExtensao($extDocumento); | 1839 | $arquivoExtensaoDTO->setStrExtensao($extDocumento); |
| 1840 | $arquivoExtensaoDTO->retStrExtensao(); | 1840 | $arquivoExtensaoDTO->retStrExtensao(); |
| 1841 | - | 1841 | + |
| 1842 | if($arquivoExtensaoBD->contar($arquivoExtensaoDTO) == 0){ | 1842 | if($arquivoExtensaoBD->contar($arquivoExtensaoDTO) == 0){ |
| 1843 | $this->objProcessoEletronicoRN->recusarTramite($parIdTramite, 'Componentes digitais com formato inválido no destinatário. ', ProcessoEletronicoRN::MTV_RCSR_TRAM_CD_FORMATO); | 1843 | $this->objProcessoEletronicoRN->recusarTramite($parIdTramite, 'Componentes digitais com formato inválido no destinatário. ', ProcessoEletronicoRN::MTV_RCSR_TRAM_CD_FORMATO); |
| 1844 | throw new InfraException("Processo recusado devido a existência de documento em formato {$extDocumento} não permitido pelo sistema. "); | 1844 | throw new InfraException("Processo recusado devido a existência de documento em formato {$extDocumento} não permitido pelo sistema. "); |
| 1845 | } | 1845 | } |
| 1846 | - | ||
| 1847 | - | 1846 | + |
| 1847 | + | ||
| 1848 | } | 1848 | } |
| 1849 | } | 1849 | } |
| 1850 | - | 1850 | + |
| 1851 | /** | 1851 | /** |
| 1852 | * Método que verifica as permissões de escrita nos diretórios utilizados no recebimento de processos e documentos | 1852 | * Método que verifica as permissões de escrita nos diretórios utilizados no recebimento de processos e documentos |
| 1853 | - * | 1853 | + * |
| 1854 | * @param integer $parIdTramite | 1854 | * @param integer $parIdTramite |
| 1855 | * @throws InfraException | 1855 | * @throws InfraException |
| 1856 | */ | 1856 | */ |
| 1857 | public function verificarPermissoesDiretorios($parIdTramite){ | 1857 | public function verificarPermissoesDiretorios($parIdTramite){ |
| 1858 | - | 1858 | + |
| 1859 | //Verifica se o usuário possui permissões de escrita no repositório de arquivos externos | 1859 | //Verifica se o usuário possui permissões de escrita no repositório de arquivos externos |
| 1860 | if(!is_writable(ConfiguracaoSEI::getInstance()->getValor('SEI', 'RepositorioArquivos'))){ | 1860 | if(!is_writable(ConfiguracaoSEI::getInstance()->getValor('SEI', 'RepositorioArquivos'))){ |
| 1861 | - | 1861 | + |
| 1862 | $this->objProcessoEletronicoRN->recusarTramite($parIdTramite, 'O sistema não possui permissão de escrita no diretório de armazenamento de documentos externos', ProcessoEletronicoRN::MTV_RCSR_TRAM_CD_OUTROU); | 1862 | $this->objProcessoEletronicoRN->recusarTramite($parIdTramite, 'O sistema não possui permissão de escrita no diretório de armazenamento de documentos externos', ProcessoEletronicoRN::MTV_RCSR_TRAM_CD_OUTROU); |
| 1863 | throw new InfraException('O sistema não possui permissão de escrita no diretório de armazenamento de documentos externos'); | 1863 | throw new InfraException('O sistema não possui permissão de escrita no diretório de armazenamento de documentos externos'); |
| 1864 | - | 1864 | + |
| 1865 | } | 1865 | } |
| 1866 | - | 1866 | + |
| 1867 | //Verifica se o usuário possui permissões de escrita no diretório temporário de arquivos | 1867 | //Verifica se o usuário possui permissões de escrita no diretório temporário de arquivos |
| 1868 | if(!is_writable(DIR_SEI_TEMP)){ | 1868 | if(!is_writable(DIR_SEI_TEMP)){ |
| 1869 | - | 1869 | + |
| 1870 | $this->objProcessoEletronicoRN->recusarTramite($parIdTramite, 'O sistema não possui permissão de escrita no diretório de armazenamento de arquivos temporários do sistema.', ProcessoEletronicoRN::MTV_RCSR_TRAM_CD_OUTROU); | 1870 | $this->objProcessoEletronicoRN->recusarTramite($parIdTramite, 'O sistema não possui permissão de escrita no diretório de armazenamento de arquivos temporários do sistema.', ProcessoEletronicoRN::MTV_RCSR_TRAM_CD_OUTROU); |
| 1871 | throw new InfraException('O sistema não possui permissão de escrita no diretório de armazenamento de arquivos temporários do sistema.'); | 1871 | throw new InfraException('O sistema não possui permissão de escrita no diretório de armazenamento de arquivos temporários do sistema.'); |
| 1872 | - | 1872 | + |
| 1873 | } | 1873 | } |
| 1874 | - | ||
| 1875 | - | 1874 | + |
| 1875 | + | ||
| 1876 | } | 1876 | } |
| 1877 | } | 1877 | } |
rn/ReceberReciboTramiteRN.php
| @@ -19,16 +19,16 @@ class ReceberReciboTramiteRN extends InfraRN | @@ -19,16 +19,16 @@ class ReceberReciboTramiteRN extends InfraRN | ||
| 19 | { | 19 | { |
| 20 | return BancoSEI::getInstance(); | 20 | return BancoSEI::getInstance(); |
| 21 | } | 21 | } |
| 22 | - | 22 | + |
| 23 | protected function registrarRecebimentoRecibo($numIdProcedimento, $strProtocoloFormatado, $numIdTramite) { | 23 | protected function registrarRecebimentoRecibo($numIdProcedimento, $strProtocoloFormatado, $numIdTramite) { |
| 24 | - | 24 | + |
| 25 | //REALIZA A CONCLUSÃO DO PROCESSO | 25 | //REALIZA A CONCLUSÃO DO PROCESSO |
| 26 | $objEntradaConcluirProcessoAPI = new EntradaConcluirProcessoAPI(); | 26 | $objEntradaConcluirProcessoAPI = new EntradaConcluirProcessoAPI(); |
| 27 | $objEntradaConcluirProcessoAPI->setIdProcedimento($numIdProcedimento); | 27 | $objEntradaConcluirProcessoAPI->setIdProcedimento($numIdProcedimento); |
| 28 | - | 28 | + |
| 29 | $objSeiRN = new SeiRN(); | 29 | $objSeiRN = new SeiRN(); |
| 30 | $objSeiRN->concluirProcesso($objEntradaConcluirProcessoAPI); | 30 | $objSeiRN->concluirProcesso($objEntradaConcluirProcessoAPI); |
| 31 | - | 31 | + |
| 32 | $arrObjAtributoAndamentoDTO = array(); | 32 | $arrObjAtributoAndamentoDTO = array(); |
| 33 | 33 | ||
| 34 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); | 34 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); |
| @@ -38,33 +38,33 @@ class ReceberReciboTramiteRN extends InfraRN | @@ -38,33 +38,33 @@ class ReceberReciboTramiteRN extends InfraRN | ||
| 38 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; | 38 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; |
| 39 | 39 | ||
| 40 | $arrObjTramite = $this->objProcessoEletronicoRN->consultarTramites($numIdTramite); | 40 | $arrObjTramite = $this->objProcessoEletronicoRN->consultarTramites($numIdTramite); |
| 41 | - | 41 | + |
| 42 | $objTramite = array_pop($arrObjTramite); | 42 | $objTramite = array_pop($arrObjTramite); |
| 43 | - | 43 | + |
| 44 | $objEstrutura = $this->objProcessoEletronicoRN->consultarEstrutura( | 44 | $objEstrutura = $this->objProcessoEletronicoRN->consultarEstrutura( |
| 45 | - $objTramite->destinatario->identificacaoDoRepositorioDeEstruturas, | ||
| 46 | - $objTramite->destinatario->numeroDeIdentificacaoDaEstrutura, | 45 | + $objTramite->destinatario->identificacaoDoRepositorioDeEstruturas, |
| 46 | + $objTramite->destinatario->numeroDeIdentificacaoDaEstrutura, | ||
| 47 | true | 47 | true |
| 48 | ); | 48 | ); |
| 49 | - | 49 | + |
| 50 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); | 50 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); |
| 51 | $objAtributoAndamentoDTO->setStrNome('UNIDADE_DESTINO'); | 51 | $objAtributoAndamentoDTO->setStrNome('UNIDADE_DESTINO'); |
| 52 | $objAtributoAndamentoDTO->setStrValor($objEstrutura->nome); | 52 | $objAtributoAndamentoDTO->setStrValor($objEstrutura->nome); |
| 53 | $objAtributoAndamentoDTO->setStrIdOrigem($objEstrutura->numeroDeIdentificacaoDaEstrutura); | 53 | $objAtributoAndamentoDTO->setStrIdOrigem($objEstrutura->numeroDeIdentificacaoDaEstrutura); |
| 54 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; | 54 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; |
| 55 | - | 55 | + |
| 56 | if(isset($objEstrutura->hierarquia)) { | 56 | if(isset($objEstrutura->hierarquia)) { |
| 57 | - | 57 | + |
| 58 | $arrObjNivel = $objEstrutura->hierarquia->nivel; | 58 | $arrObjNivel = $objEstrutura->hierarquia->nivel; |
| 59 | - | 59 | + |
| 60 | $nome = ""; | 60 | $nome = ""; |
| 61 | $siglasUnidades = array(); | 61 | $siglasUnidades = array(); |
| 62 | $siglasUnidades[] = $objEstrutura->sigla; | 62 | $siglasUnidades[] = $objEstrutura->sigla; |
| 63 | - | 63 | + |
| 64 | foreach($arrObjNivel as $key => $objNivel){ | 64 | foreach($arrObjNivel as $key => $objNivel){ |
| 65 | $siglasUnidades[] = $objNivel->sigla ; | 65 | $siglasUnidades[] = $objNivel->sigla ; |
| 66 | } | 66 | } |
| 67 | - | 67 | + |
| 68 | for($i = 1; $i <= 3; $i++){ | 68 | for($i = 1; $i <= 3; $i++){ |
| 69 | if(isset($siglasUnidades[count($siglasUnidades) - 1])){ | 69 | if(isset($siglasUnidades[count($siglasUnidades) - 1])){ |
| 70 | unset($siglasUnidades[count($siglasUnidades) - 1]); | 70 | unset($siglasUnidades[count($siglasUnidades) - 1]); |
| @@ -78,7 +78,7 @@ class ReceberReciboTramiteRN extends InfraRN | @@ -78,7 +78,7 @@ class ReceberReciboTramiteRN extends InfraRN | ||
| 78 | $nome .= $nomeUnidade." / "; | 78 | $nome .= $nomeUnidade." / "; |
| 79 | } | 79 | } |
| 80 | } | 80 | } |
| 81 | - | 81 | + |
| 82 | $objNivel = current($arrObjNivel); | 82 | $objNivel = current($arrObjNivel); |
| 83 | 83 | ||
| 84 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); | 84 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); |
| @@ -86,19 +86,19 @@ class ReceberReciboTramiteRN extends InfraRN | @@ -86,19 +86,19 @@ class ReceberReciboTramiteRN extends InfraRN | ||
| 86 | $objAtributoAndamentoDTO->setStrValor($nome); | 86 | $objAtributoAndamentoDTO->setStrValor($nome); |
| 87 | $objAtributoAndamentoDTO->setStrIdOrigem($objNivel->numeroDeIdentificacaoDaEstrutura); | 87 | $objAtributoAndamentoDTO->setStrIdOrigem($objNivel->numeroDeIdentificacaoDaEstrutura); |
| 88 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; | 88 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; |
| 89 | - | 89 | + |
| 90 | } | 90 | } |
| 91 | - | 91 | + |
| 92 | $objRepositorioDTO = $this->objProcessoEletronicoRN->consultarRepositoriosDeEstruturas($objTramite->destinatario->identificacaoDoRepositorioDeEstruturas); | 92 | $objRepositorioDTO = $this->objProcessoEletronicoRN->consultarRepositoriosDeEstruturas($objTramite->destinatario->identificacaoDoRepositorioDeEstruturas); |
| 93 | if(!empty($objRepositorioDTO)) { | 93 | if(!empty($objRepositorioDTO)) { |
| 94 | - | 94 | + |
| 95 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); | 95 | $objAtributoAndamentoDTO = new AtributoAndamentoDTO(); |
| 96 | $objAtributoAndamentoDTO->setStrNome('REPOSITORIO_DESTINO'); | 96 | $objAtributoAndamentoDTO->setStrNome('REPOSITORIO_DESTINO'); |
| 97 | $objAtributoAndamentoDTO->setStrValor($objRepositorioDTO->getStrNome()); | 97 | $objAtributoAndamentoDTO->setStrValor($objRepositorioDTO->getStrNome()); |
| 98 | $objAtributoAndamentoDTO->setStrIdOrigem($objRepositorioDTO->getNumId()); | 98 | $objAtributoAndamentoDTO->setStrIdOrigem($objRepositorioDTO->getNumId()); |
| 99 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; | 99 | $arrObjAtributoAndamentoDTO[] = $objAtributoAndamentoDTO; |
| 100 | } | 100 | } |
| 101 | - | 101 | + |
| 102 | $objAtividadeDTO = new AtividadeDTO(); | 102 | $objAtividadeDTO = new AtividadeDTO(); |
| 103 | $objAtividadeDTO->setDblIdProtocolo($numIdProcedimento); | 103 | $objAtividadeDTO->setDblIdProtocolo($numIdProcedimento); |
| 104 | $objAtividadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); | 104 | $objAtividadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); |
| @@ -111,20 +111,20 @@ class ReceberReciboTramiteRN extends InfraRN | @@ -111,20 +111,20 @@ class ReceberReciboTramiteRN extends InfraRN | ||
| 111 | } | 111 | } |
| 112 | 112 | ||
| 113 | protected function receberReciboDeTramiteConectado($parNumIdTramite) { | 113 | protected function receberReciboDeTramiteConectado($parNumIdTramite) { |
| 114 | - | ||
| 115 | - | 114 | + |
| 115 | + | ||
| 116 | if (!isset($parNumIdTramite)) { | 116 | if (!isset($parNumIdTramite)) { |
| 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 | $objReciboTramite = $this->objProcessoEletronicoRN->receberReciboDeTramite($parNumIdTramite); | 120 | $objReciboTramite = $this->objProcessoEletronicoRN->receberReciboDeTramite($parNumIdTramite); |
| 121 | - | 121 | + |
| 122 | if (!$objReciboTramite) { | 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 | - | 125 | + |
| 126 | $objReciboTramite = $objReciboTramite->conteudoDoReciboDeTramite; | 126 | $objReciboTramite = $objReciboTramite->conteudoDoReciboDeTramite; |
| 127 | - $objDateTime = new DateTime($objReciboTramite->recibo->dataDeRecebimento); | 127 | + $objDateTime = new DateTime($objReciboTramite->recibo->dataDeRecebimento); |
| 128 | 128 | ||
| 129 | $objReciboTramiteDTO = new ReciboTramiteDTO(); | 129 | $objReciboTramiteDTO = new ReciboTramiteDTO(); |
| 130 | $objReciboTramiteDTO->setStrNumeroRegistro($objReciboTramite->recibo->NRE); | 130 | $objReciboTramiteDTO->setStrNumeroRegistro($objReciboTramite->recibo->NRE); |
| @@ -137,11 +137,11 @@ class ReceberReciboTramiteRN extends InfraRN | @@ -137,11 +137,11 @@ class ReceberReciboTramiteRN extends InfraRN | ||
| 137 | $objTramiteDTO = new TramiteDTO(); | 137 | $objTramiteDTO = new TramiteDTO(); |
| 138 | $objTramiteDTO->setNumIdTramite($parNumIdTramite); | 138 | $objTramiteDTO->setNumIdTramite($parNumIdTramite); |
| 139 | $objTramiteDTO->retNumIdUnidade(); | 139 | $objTramiteDTO->retNumIdUnidade(); |
| 140 | - | 140 | + |
| 141 | $objTramiteBD = new TramiteBD(BancoSEI::getInstance()); | 141 | $objTramiteBD = new TramiteBD(BancoSEI::getInstance()); |
| 142 | 142 | ||
| 143 | if ($objTramiteBD->contar($objTramiteDTO) > 0) { | 143 | if ($objTramiteBD->contar($objTramiteDTO) > 0) { |
| 144 | - | 144 | + |
| 145 | $objTramiteDTO = $objTramiteBD->consultar($objTramiteDTO); | 145 | $objTramiteDTO = $objTramiteBD->consultar($objTramiteDTO); |
| 146 | SessaoSEI::getInstance(false)->simularLogin('SEI', null, null, $objTramiteDTO->getNumIdUnidade()); | 146 | SessaoSEI::getInstance(false)->simularLogin('SEI', null, null, $objTramiteDTO->getNumIdUnidade()); |
| 147 | 147 | ||
| @@ -151,10 +151,10 @@ class ReceberReciboTramiteRN extends InfraRN | @@ -151,10 +151,10 @@ class ReceberReciboTramiteRN extends InfraRN | ||
| 151 | 151 | ||
| 152 | $objReciboTramiteBD = new ReciboTramiteBD(BancoSEI::getInstance()); | 152 | $objReciboTramiteBD = new ReciboTramiteBD(BancoSEI::getInstance()); |
| 153 | if ($objReciboTramiteBD->contar($objReciboTramiteDTOExistente) == 0) { | 153 | if ($objReciboTramiteBD->contar($objReciboTramiteDTOExistente) == 0) { |
| 154 | - | ||
| 155 | - //Armazenar dados do recibo de conclusão do trãmite | 154 | + |
| 155 | + //Armazenar dados do recibo de conclusão do trãmite | ||
| 156 | $objReciboTramiteBD->cadastrar($objReciboTramiteDTO); | 156 | $objReciboTramiteBD->cadastrar($objReciboTramiteDTO); |
| 157 | - | 157 | + |
| 158 | if ($objReciboTramite->recibo->hashDoComponenteDigital && is_array($objReciboTramite->recibo->hashDoComponenteDigital)) { | 158 | if ($objReciboTramite->recibo->hashDoComponenteDigital && is_array($objReciboTramite->recibo->hashDoComponenteDigital)) { |
| 159 | foreach ($objReciboTramite->recibo->hashDoComponenteDigital as $strHashComponenteDigital) { | 159 | foreach ($objReciboTramite->recibo->hashDoComponenteDigital as $strHashComponenteDigital) { |
| 160 | 160 | ||
| @@ -198,23 +198,21 @@ class ReceberReciboTramiteRN extends InfraRN | @@ -198,23 +198,21 @@ class ReceberReciboTramiteRN extends InfraRN | ||
| 198 | 198 | ||
| 199 | $this->objProcedimentoAndamentoRN->setOpts($objProcessoEletronicoDTO->getDblIdProcedimento(), $parNumIdTramite, ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO)); | 199 | $this->objProcedimentoAndamentoRN->setOpts($objProcessoEletronicoDTO->getDblIdProcedimento(), $parNumIdTramite, ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO)); |
| 200 | $this->objProcedimentoAndamentoRN->cadastrar(sprintf('Trâmite do processo %s foi concluído', $objProtocoloDTO->getStrProtocoloFormatado()), 'S'); | 200 | $this->objProcedimentoAndamentoRN->cadastrar(sprintf('Trâmite do processo %s foi concluído', $objProtocoloDTO->getStrProtocoloFormatado()), 'S'); |
| 201 | - | 201 | + |
| 202 | //Registra o recbimento do recibo no histórico e realiza a conclusão do processo | 202 | //Registra o recbimento do recibo no histórico e realiza a conclusão do processo |
| 203 | $this->registrarRecebimentoRecibo($objProtocoloDTO->getDblIdProtocolo(), $objProtocoloDTO->getStrProtocoloFormatado(), $parNumIdTramite); | 203 | $this->registrarRecebimentoRecibo($objProtocoloDTO->getDblIdProtocolo(), $objProtocoloDTO->getStrProtocoloFormatado(), $parNumIdTramite); |
| 204 | - | 204 | + |
| 205 | $objPenTramiteProcessadoRN = new PenTramiteProcessadoRN(PenTramiteProcessadoRN::STR_TIPO_RECIBO); | 205 | $objPenTramiteProcessadoRN = new PenTramiteProcessadoRN(PenTramiteProcessadoRN::STR_TIPO_RECIBO); |
| 206 | $objPenTramiteProcessadoRN->setRecebido($parNumIdTramite); | 206 | $objPenTramiteProcessadoRN->setRecebido($parNumIdTramite); |
| 207 | - | ||
| 208 | - } catch (Exception $e) { | ||
| 209 | - | ||
| 210 | - $strMessage = 'Falha o modificar o estado do procedimento para bloqueado.'; | ||
| 211 | 207 | ||
| 208 | + } catch (Exception $e) { | ||
| 209 | + $strMessage = 'Falha ao modificar o estado do procedimento para bloqueado.'; | ||
| 212 | LogSEI::getInstance()->gravar($strMessage . PHP_EOL . $e->getMessage() . PHP_EOL . $e->getTraceAsString()); | 210 | LogSEI::getInstance()->gravar($strMessage . PHP_EOL . $e->getMessage() . PHP_EOL . $e->getTraceAsString()); |
| 213 | throw new InfraException($strMessage, $e); | 211 | throw new InfraException($strMessage, $e); |
| 214 | } | 212 | } |
| 215 | } | 213 | } |
| 216 | } | 214 | } |
| 217 | - | 215 | + |
| 218 | 216 | ||
| 219 | } | 217 | } |
| 220 | -} | ||
| 221 | \ No newline at end of file | 218 | \ No newline at end of file |
| 219 | +} |