Commit bc325af95404b05d0903d993c5159a1be59e498a
1 parent
59147ea6
Exists in
master
and in
21 other branches
Atualização na Rotina de Hipoteses Legais
Showing
1 changed file
with
83 additions
and
82 deletions
Show diff stats
rn/PENAgendamentoRN.php
@@ -130,7 +130,7 @@ class PENAgendamentoRN extends InfraRN { | @@ -130,7 +130,7 @@ class PENAgendamentoRN extends InfraRN { | ||
130 | $tramitePendenteBD = new TramiteBD($this->getObjInfraIBanco()); | 130 | $tramitePendenteBD = new TramiteBD($this->getObjInfraIBanco()); |
131 | $pendentes = $tramitePendenteBD->listar($tramitePendenteDTO); | 131 | $pendentes = $tramitePendenteBD->listar($tramitePendenteDTO); |
132 | 132 | ||
133 | - | 133 | + |
134 | if ($pendentes) { | 134 | if ($pendentes) { |
135 | 135 | ||
136 | //Instancia a RN de ProcessoEletronico | 136 | //Instancia a RN de ProcessoEletronico |
@@ -140,80 +140,75 @@ class PENAgendamentoRN extends InfraRN { | @@ -140,80 +140,75 @@ class PENAgendamentoRN extends InfraRN { | ||
140 | foreach ($pendentes as $tramite) { | 140 | foreach ($pendentes as $tramite) { |
141 | $objTramite = $processoEletronicoRN->consultarTramites($tramite->getNumIdTramite()); | 141 | $objTramite = $processoEletronicoRN->consultarTramites($tramite->getNumIdTramite()); |
142 | $objTramite = $objTramite[0]; | 142 | $objTramite = $objTramite[0]; |
143 | - | ||
144 | - if(isset($arrProtocolos[$objTramite->protocolo])){ | ||
145 | - if($arrProtocolos[$objTramite->protocolo]['objTramite']->situacaoAtual == ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE || $arrProtocolos[$objTramite->protocolo]['objTramite']->situacaoAtual == ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO ){ | 143 | + |
144 | + if (isset($arrProtocolos[$objTramite->protocolo])) { | ||
145 | + if ($arrProtocolos[$objTramite->protocolo]['objTramite']->situacaoAtual == ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE || $arrProtocolos[$objTramite->protocolo]['objTramite']->situacaoAtual == ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO) { | ||
146 | $tramitePendenteBD->excluir($arrProtocolos[$objTramite->protocolo]['tramitePendente']); | 146 | $tramitePendenteBD->excluir($arrProtocolos[$objTramite->protocolo]['tramitePendente']); |
147 | } | 147 | } |
148 | - | ||
149 | } | 148 | } |
150 | - | 149 | + |
151 | $arrProtocolos[$objTramite->protocolo]['objTramite'] = $objTramite; | 150 | $arrProtocolos[$objTramite->protocolo]['objTramite'] = $objTramite; |
152 | $arrProtocolos[$objTramite->protocolo]['tramitePendente'] = $tramite; | 151 | $arrProtocolos[$objTramite->protocolo]['tramitePendente'] = $tramite; |
153 | } | 152 | } |
154 | - | ||
155 | 153 | ||
156 | - | 154 | + |
155 | + | ||
157 | //Percorre as pendências | 156 | //Percorre as pendências |
158 | foreach ($arrProtocolos as $protocolo) { | 157 | foreach ($arrProtocolos as $protocolo) { |
159 | 158 | ||
160 | - //Busca o status do trâmite | ||
161 | - $tramite = $protocolo['tramitePendente']; | ||
162 | - $objTramite = $protocolo['objTramite']; | ||
163 | - $status = $objTramite->situacaoAtual; | ||
164 | - | ||
165 | - if ($status == ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO) { | ||
166 | - | ||
167 | - //Verifica se o processo do trâmite se encontra de fato recusado | ||
168 | - | ||
169 | - //Busca os dados do procedimento | ||
170 | - $processoEletronicoDTO = new ProcessoEletronicoDTO(); | ||
171 | - $processoEletronicoDTO->setStrNumeroRegistro($objTramite->NRE); | ||
172 | - $processoEletronicoDTO->retDblIdProcedimento(); | ||
173 | - | ||
174 | - $processoEletronicoBD = new ProcessoEletronicoBD($this->getObjInfraIBanco()); | ||
175 | - $objProcessoEletronico = $processoEletronicoBD->consultar($processoEletronicoDTO); | ||
176 | - | ||
177 | - if($objProcessoEletronico) { | ||
178 | - | ||
179 | - //Busca o processo | ||
180 | - $objProtocolo = new PenProtocoloDTO(); | ||
181 | - $objProtocolo->setDblIdProtocolo($objProcessoEletronico->getDblIdProcedimento()); | ||
182 | - | ||
183 | - $protocoloBD = new ProtocoloBD($this->getObjInfraIBanco()); | ||
184 | - | ||
185 | - //Verifica se o protocolo foi encontrado nessa tabela | ||
186 | - if($protocoloBD->contar($objProtocolo) > 0){ | ||
187 | - | ||
188 | - //Altera o registro | ||
189 | - $objProtocolo->setStrSinObteveRecusa('S'); | ||
190 | - $protocoloBD->alterar($objProtocolo); | ||
191 | - | ||
192 | - //Busca a unidade de destino | ||
193 | - $atributoAndamentoDTO = new AtributoAndamentoDTO(); | ||
194 | - $atributoAndamentoDTO->setNumIdAtividade($tramite->getNumIdAtividade()); | ||
195 | - $atributoAndamentoDTO->setStrNome('UNIDADE_DESTINO'); | ||
196 | - $atributoAndamentoDTO->retStrValor(); | ||
197 | - | ||
198 | - $atributoAndamentoBD = new AtributoAndamentoBD($this->getObjInfraIBanco()); | ||
199 | - $atributoAndamento = $atributoAndamentoBD->consultar($atributoAndamentoDTO); | ||
200 | - | ||
201 | - $motivo = $objTramite->motivoDaRecusa; | ||
202 | - $unidadeDestino = $atributoAndamento->getStrValor(); | ||
203 | - | ||
204 | - //Realiza o registro da recusa | ||
205 | - ExpedirProcedimentoRN::receberRecusaProcedimento(ProcessoEletronicoRN::$MOTIVOS_RECUSA[$motivo], $unidadeDestino, null, $objProcessoEletronico->getDblIdProcedimento()); | ||
206 | - | ||
207 | - $tramitePendenteBD->excluir($tramite); | ||
208 | - } | ||
209 | - | ||
210 | - | ||
211 | - | 159 | + //Busca o status do trâmite |
160 | + $tramite = $protocolo['tramitePendente']; | ||
161 | + $objTramite = $protocolo['objTramite']; | ||
162 | + $status = $objTramite->situacaoAtual; | ||
163 | + | ||
164 | + if ($status == ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO) { | ||
165 | + | ||
166 | + //Verifica se o processo do trâmite se encontra de fato recusado | ||
167 | + //Busca os dados do procedimento | ||
168 | + $processoEletronicoDTO = new ProcessoEletronicoDTO(); | ||
169 | + $processoEletronicoDTO->setStrNumeroRegistro($objTramite->NRE); | ||
170 | + $processoEletronicoDTO->retDblIdProcedimento(); | ||
171 | + | ||
172 | + $processoEletronicoBD = new ProcessoEletronicoBD($this->getObjInfraIBanco()); | ||
173 | + $objProcessoEletronico = $processoEletronicoBD->consultar($processoEletronicoDTO); | ||
174 | + | ||
175 | + if ($objProcessoEletronico) { | ||
176 | + | ||
177 | + //Busca o processo | ||
178 | + $objProtocolo = new PenProtocoloDTO(); | ||
179 | + $objProtocolo->setDblIdProtocolo($objProcessoEletronico->getDblIdProcedimento()); | ||
180 | + | ||
181 | + $protocoloBD = new ProtocoloBD($this->getObjInfraIBanco()); | ||
182 | + | ||
183 | + //Verifica se o protocolo foi encontrado nessa tabela | ||
184 | + if ($protocoloBD->contar($objProtocolo) > 0) { | ||
185 | + | ||
186 | + //Altera o registro | ||
187 | + $objProtocolo->setStrSinObteveRecusa('S'); | ||
188 | + $protocoloBD->alterar($objProtocolo); | ||
189 | + | ||
190 | + //Busca a unidade de destino | ||
191 | + $atributoAndamentoDTO = new AtributoAndamentoDTO(); | ||
192 | + $atributoAndamentoDTO->setNumIdAtividade($tramite->getNumIdAtividade()); | ||
193 | + $atributoAndamentoDTO->setStrNome('UNIDADE_DESTINO'); | ||
194 | + $atributoAndamentoDTO->retStrValor(); | ||
195 | + | ||
196 | + $atributoAndamentoBD = new AtributoAndamentoBD($this->getObjInfraIBanco()); | ||
197 | + $atributoAndamento = $atributoAndamentoBD->consultar($atributoAndamentoDTO); | ||
198 | + | ||
199 | + $motivo = $objTramite->motivoDaRecusa; | ||
200 | + $unidadeDestino = $atributoAndamento->getStrValor(); | ||
201 | + | ||
202 | + //Realiza o registro da recusa | ||
203 | + ExpedirProcedimentoRN::receberRecusaProcedimento(ProcessoEletronicoRN::$MOTIVOS_RECUSA[$motivo], $unidadeDestino, null, $objProcessoEletronico->getDblIdProcedimento()); | ||
204 | + | ||
205 | + $tramitePendenteBD->excluir($tramite); | ||
212 | } | 206 | } |
213 | - }else if($status == ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE || $status == ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO){ | ||
214 | - | ||
215 | - $tramitePendenteBD->excluir($tramite); | ||
216 | } | 207 | } |
208 | + } else if ($status == ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE || $status == ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO) { | ||
209 | + | ||
210 | + $tramitePendenteBD->excluir($tramite); | ||
211 | + } | ||
217 | } | 212 | } |
218 | } | 213 | } |
219 | } catch (Exception $e) { | 214 | } catch (Exception $e) { |
@@ -224,7 +219,7 @@ class PENAgendamentoRN extends InfraRN { | @@ -224,7 +219,7 @@ class PENAgendamentoRN extends InfraRN { | ||
224 | throw new InfraException('Erro na Verificação de Processos Recusados.', $e); | 219 | throw new InfraException('Erro na Verificação de Processos Recusados.', $e); |
225 | } | 220 | } |
226 | } | 221 | } |
227 | - | 222 | + |
228 | public function seiVerificarServicosBarramento() { | 223 | public function seiVerificarServicosBarramento() { |
229 | try { | 224 | try { |
230 | 225 | ||
@@ -247,7 +242,7 @@ class PENAgendamentoRN extends InfraRN { | @@ -247,7 +242,7 @@ class PENAgendamentoRN extends InfraRN { | ||
247 | $cont++; | 242 | $cont++; |
248 | $servico[] = 'ProcessarPendenciasRN.php'; | 243 | $servico[] = 'ProcessarPendenciasRN.php'; |
249 | } | 244 | } |
250 | - | 245 | + |
251 | $servicos = implode("\n", $servico); | 246 | $servicos = implode("\n", $servico); |
252 | 247 | ||
253 | 248 | ||
@@ -264,53 +259,59 @@ class PENAgendamentoRN extends InfraRN { | @@ -264,53 +259,59 @@ class PENAgendamentoRN extends InfraRN { | ||
264 | throw new InfraException('Erro ao rodar verificação de status do serviços Gearmand e Supervisord', $e); | 259 | throw new InfraException('Erro ao rodar verificação de status do serviços Gearmand e Supervisord', $e); |
265 | } | 260 | } |
266 | } | 261 | } |
267 | - | 262 | + |
268 | /** | 263 | /** |
269 | - * Atualização das hipóteses legais vindas do barramento | 264 | + * Atualiza??o das hip?teses legais vindas do barramento |
270 | * @throws InfraException | 265 | * @throws InfraException |
271 | */ | 266 | */ |
272 | public function atualizarHipotesesLegais() { | 267 | public function atualizarHipotesesLegais() { |
273 | $objBD = new PenHipoteseLegalBD($this->inicializarObjInfraIBanco()); | 268 | $objBD = new PenHipoteseLegalBD($this->inicializarObjInfraIBanco()); |
274 | $processoEletronicoRN = new ProcessoEletronicoRN(); | 269 | $processoEletronicoRN = new ProcessoEletronicoRN(); |
275 | $hipotesesPen = $processoEletronicoRN->consultarHipotesesLegais(); | 270 | $hipotesesPen = $processoEletronicoRN->consultarHipotesesLegais(); |
276 | - | ||
277 | - //Para cada hipótese vinda do PEN será verificado a existencia. | ||
278 | - foreach ($hipotesesPen as $hipotese) { | 271 | + |
272 | + //Para cada hip?tese vinda do PEN ser? verificado a existencia. | ||
273 | + foreach ($hipotesesPen->hipotesesLegais->hipotese as $hipotese) { | ||
274 | + | ||
279 | $objDTO = new PenHipoteseLegalDTO(); | 275 | $objDTO = new PenHipoteseLegalDTO(); |
280 | - $objDTO->setNumIdentificacao($hipotese->hipotese->identificacao); | 276 | + $objDTO->setNumIdentificacao($hipotese->identificacao); |
281 | $objDTO->setNumMaxRegistrosRetorno(1); | 277 | $objDTO->setNumMaxRegistrosRetorno(1); |
282 | $objDTO->retStrNome(); | 278 | $objDTO->retStrNome(); |
279 | + $objDTO->retNumIdHipoteseLegal(); | ||
283 | $objConsulta = $objBD->consultar($objDTO); | 280 | $objConsulta = $objBD->consultar($objDTO); |
284 | - | ||
285 | - //Caso não haja um nome para a hipótese legal, ele pula para a próxima. | ||
286 | - if (empty($hipotese->hipotese->nome)) { | 281 | + |
282 | + //Caso n?o haja um nome para a hip?tese legal, ele pula para a pr?xima. | ||
283 | + if (empty($hipotese->nome)) { | ||
287 | continue; | 284 | continue; |
288 | } | 285 | } |
289 | - | ||
290 | - $objDTO->setStrNome($hipotese->hipotese->nome); | ||
291 | - | ||
292 | - if ($hipotese->hipotese->status) { | 286 | + |
287 | + $objDTO->setStrNome($hipotese->nome); | ||
288 | + | ||
289 | + if ($hipotese->status) { | ||
293 | $objDTO->setStrAtivo('S'); | 290 | $objDTO->setStrAtivo('S'); |
294 | } else { | 291 | } else { |
295 | $objDTO->setStrAtivo('N'); | 292 | $objDTO->setStrAtivo('N'); |
296 | } | 293 | } |
297 | - | ||
298 | - //Caso não exista a hipótese irá cadastra-la no sei. | 294 | + |
295 | + //Caso n?o exista a hip?tese ir? cadastra-la no sei. | ||
299 | if (empty($objConsulta)) { | 296 | if (empty($objConsulta)) { |
297 | + | ||
300 | $objBD->cadastrar($objDTO); | 298 | $objBD->cadastrar($objDTO); |
301 | } else { | 299 | } else { |
302 | - //Caso contrário apenas irá atualizar os dados. | 300 | + //Caso contr?rio apenas ir? atualizar os dados. |
301 | + $objDTO->setNumIdHipoteseLegal($objConsulta->getNumIdHipoteseLegal()); | ||
303 | $objBD->alterar($objDTO); | 302 | $objBD->alterar($objDTO); |
304 | } | 303 | } |
305 | } | 304 | } |
306 | - | 305 | + |
307 | try { | 306 | try { |
308 | LogSEI::getInstance()->gravar("Hipóteses Legais atualizadas."); | 307 | LogSEI::getInstance()->gravar("Hipóteses Legais atualizadas."); |
309 | } catch (Exception $e) { | 308 | } catch (Exception $e) { |
310 | throw new InfraException('Erro no agendamento das Hipóteses Legais', $e); | 309 | throw new InfraException('Erro no agendamento das Hipóteses Legais', $e); |
311 | } | 310 | } |
312 | } | 311 | } |
312 | + | ||
313 | } | 313 | } |
314 | + | ||
314 | // $client = new GearmanClient(); | 315 | // $client = new GearmanClient(); |
315 | // $client->addServer('localhost', 4730); | 316 | // $client->addServer('localhost', 4730); |
316 | // $client->setCreatedCallback("create_change"); | 317 | // $client->setCreatedCallback("create_change"); |