Commit fb2075b82e6a804c1068d271fb1a3963363cdad0
Exists in
master
and in
1 other branch
Merge branch 'SEI-INTEGRACAO_JOIN_87_OS026' of http://git.planejamento.gov.br/mp…
…/mod-sei-barramento into SEI-INTEGRACAO_JOIN_87_OS026
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 | 130 | $tramitePendenteBD = new TramiteBD($this->getObjInfraIBanco()); |
| 131 | 131 | $pendentes = $tramitePendenteBD->listar($tramitePendenteDTO); |
| 132 | 132 | |
| 133 | - | |
| 133 | + | |
| 134 | 134 | if ($pendentes) { |
| 135 | 135 | |
| 136 | 136 | //Instancia a RN de ProcessoEletronico |
| ... | ... | @@ -140,80 +140,75 @@ class PENAgendamentoRN extends InfraRN { |
| 140 | 140 | foreach ($pendentes as $tramite) { |
| 141 | 141 | $objTramite = $processoEletronicoRN->consultarTramites($tramite->getNumIdTramite()); |
| 142 | 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 | 146 | $tramitePendenteBD->excluir($arrProtocolos[$objTramite->protocolo]['tramitePendente']); |
| 147 | 147 | } |
| 148 | - | |
| 149 | 148 | } |
| 150 | - | |
| 149 | + | |
| 151 | 150 | $arrProtocolos[$objTramite->protocolo]['objTramite'] = $objTramite; |
| 152 | 151 | $arrProtocolos[$objTramite->protocolo]['tramitePendente'] = $tramite; |
| 153 | 152 | } |
| 154 | - | |
| 155 | 153 | |
| 156 | - | |
| 154 | + | |
| 155 | + | |
| 157 | 156 | //Percorre as pendências |
| 158 | 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 | 214 | } catch (Exception $e) { |
| ... | ... | @@ -224,7 +219,7 @@ class PENAgendamentoRN extends InfraRN { |
| 224 | 219 | throw new InfraException('Erro na Verificação de Processos Recusados.', $e); |
| 225 | 220 | } |
| 226 | 221 | } |
| 227 | - | |
| 222 | + | |
| 228 | 223 | public function seiVerificarServicosBarramento() { |
| 229 | 224 | try { |
| 230 | 225 | |
| ... | ... | @@ -247,7 +242,7 @@ class PENAgendamentoRN extends InfraRN { |
| 247 | 242 | $cont++; |
| 248 | 243 | $servico[] = 'ProcessarPendenciasRN.php'; |
| 249 | 244 | } |
| 250 | - | |
| 245 | + | |
| 251 | 246 | $servicos = implode("\n", $servico); |
| 252 | 247 | |
| 253 | 248 | |
| ... | ... | @@ -265,53 +260,59 @@ class PENAgendamentoRN extends InfraRN { |
| 265 | 260 | throw new InfraException('Erro ao rodar verificação de status do serviços Gearmand e Supervisord', $e); |
| 266 | 261 | } |
| 267 | 262 | } |
| 268 | - | |
| 263 | + | |
| 269 | 264 | /** |
| 270 | - * Atualização das hipóteses legais vindas do barramento | |
| 265 | + * Atualiza??o das hip?teses legais vindas do barramento | |
| 271 | 266 | * @throws InfraException |
| 272 | 267 | */ |
| 273 | 268 | public function atualizarHipotesesLegais() { |
| 274 | 269 | $objBD = new PenHipoteseLegalBD($this->inicializarObjInfraIBanco()); |
| 275 | 270 | $processoEletronicoRN = new ProcessoEletronicoRN(); |
| 276 | 271 | $hipotesesPen = $processoEletronicoRN->consultarHipotesesLegais(); |
| 277 | - | |
| 278 | - //Para cada hipótese vinda do PEN será verificado a existencia. | |
| 279 | - foreach ($hipotesesPen as $hipotese) { | |
| 272 | + | |
| 273 | + //Para cada hip?tese vinda do PEN ser? verificado a existencia. | |
| 274 | + foreach ($hipotesesPen->hipotesesLegais->hipotese as $hipotese) { | |
| 275 | + | |
| 280 | 276 | $objDTO = new PenHipoteseLegalDTO(); |
| 281 | - $objDTO->setNumIdentificacao($hipotese->hipotese->identificacao); | |
| 277 | + $objDTO->setNumIdentificacao($hipotese->identificacao); | |
| 282 | 278 | $objDTO->setNumMaxRegistrosRetorno(1); |
| 283 | 279 | $objDTO->retStrNome(); |
| 280 | + $objDTO->retNumIdHipoteseLegal(); | |
| 284 | 281 | $objConsulta = $objBD->consultar($objDTO); |
| 285 | - | |
| 286 | - //Caso não haja um nome para a hipótese legal, ele pula para a próxima. | |
| 287 | - if (empty($hipotese->hipotese->nome)) { | |
| 282 | + | |
| 283 | + //Caso n?o haja um nome para a hip?tese legal, ele pula para a pr?xima. | |
| 284 | + if (empty($hipotese->nome)) { | |
| 288 | 285 | continue; |
| 289 | 286 | } |
| 290 | - | |
| 291 | - $objDTO->setStrNome($hipotese->hipotese->nome); | |
| 292 | - | |
| 293 | - if ($hipotese->hipotese->status) { | |
| 287 | + | |
| 288 | + $objDTO->setStrNome($hipotese->nome); | |
| 289 | + | |
| 290 | + if ($hipotese->status) { | |
| 294 | 291 | $objDTO->setStrAtivo('S'); |
| 295 | 292 | } else { |
| 296 | 293 | $objDTO->setStrAtivo('N'); |
| 297 | 294 | } |
| 298 | - | |
| 299 | - //Caso não exista a hipótese irá cadastra-la no sei. | |
| 295 | + | |
| 296 | + //Caso n?o exista a hip?tese ir? cadastra-la no sei. | |
| 300 | 297 | if (empty($objConsulta)) { |
| 298 | + | |
| 301 | 299 | $objBD->cadastrar($objDTO); |
| 302 | 300 | } else { |
| 303 | - //Caso contrário apenas irá atualizar os dados. | |
| 301 | + //Caso contr?rio apenas ir? atualizar os dados. | |
| 302 | + $objDTO->setNumIdHipoteseLegal($objConsulta->getNumIdHipoteseLegal()); | |
| 304 | 303 | $objBD->alterar($objDTO); |
| 305 | 304 | } |
| 306 | 305 | } |
| 307 | - | |
| 306 | + | |
| 308 | 307 | try { |
| 309 | 308 | LogSEI::getInstance()->gravar("Hipóteses Legais atualizadas."); |
| 310 | 309 | } catch (Exception $e) { |
| 311 | 310 | throw new InfraException('Erro no agendamento das Hipóteses Legais', $e); |
| 312 | 311 | } |
| 313 | 312 | } |
| 313 | + | |
| 314 | 314 | } |
| 315 | + | |
| 315 | 316 | // $client = new GearmanClient(); |
| 316 | 317 | // $client->addServer('localhost', 4730); |
| 317 | 318 | // $client->setCreatedCallback("create_change"); | ... | ... |