Commit 0d2ff516ef1a196dbd5fc6c9fa2907c62673b566
1 parent
55907536
Exists in
master
and in
21 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 | +} |