From 461f7aa03e170d52c6b16e4c45d2b7e72c3dad4d Mon Sep 17 00:00:00 2001 From: mateussbh Date: Fri, 20 Sep 2024 10:38:00 -0300 Subject: [PATCH 01/12] =?UTF-8?q?fix:erro=20por=20n=C3=A3o=20excluir=20blo?= =?UTF-8?q?co=20vazio=20na=20migra=C3=A7=C3=A3o.=20Corre=C3=A7=C3=A3o=20de?= =?UTF-8?q?=20fixture=20que=20n=C3=A3o=20gravava=20idUnidade=20e=20IdUsuar?= =?UTF-8?q?io.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/scripts/sei_atualizar_versao_modulo_pen.php | 17 ++++++++++------- .../fixtures/BlocoDeTramiteProtocoloFixture.php | 2 ++ .../fixtures/BlocoDeTramiteProtocoloFixture.php | 2 ++ .../fixtures/BlocoDeTramiteProtocoloFixture.php | 2 ++ 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/src/scripts/sei_atualizar_versao_modulo_pen.php b/src/scripts/sei_atualizar_versao_modulo_pen.php index 7147c6a86..84fe594e6 100755 --- a/src/scripts/sei_atualizar_versao_modulo_pen.php +++ b/src/scripts/sei_atualizar_versao_modulo_pen.php @@ -2960,25 +2960,28 @@ protected function instalarV3070() $objPenBlocoProcessoRN = new PenBlocoProcessoRN(); $arrPenBlocoProcessoDTO = $objPenBlocoProcessoRN->listar($objPenBlocoProcessoDTO); - if ($arrPenBlocoProcessoDTO == null) { - $objTramiteEmBlocoRN->excluir(array($tramiteEmBlocoDTO)); - } else { - foreach ($arrPenBlocoProcessoDTO as $objPenBlocoProcessoDTO) { + + if($arrPenBlocoProcessoDTO != null){ + foreach ($arrPenBlocoProcessoDTO as $objDTO) { $objAtividadeDTO = new AtividadeDTO(); $objAtividadeDTO->setDistinct(true); $objAtividadeDTO->retStrSiglaUnidade(); - $objAtividadeDTO->setNumIdUnidade($objPenBlocoProcessoDTO->getNumIdUnidade()); + $objAtividadeDTO->setNumIdUnidade($objDTO->getNumIdUnidade()); $objAtividadeDTO->setOrdStrSiglaUnidade(InfraDTO::$TIPO_ORDENACAO_ASC); - $objAtividadeDTO->setDblIdProtocolo($objPenBlocoProcessoDTO->getDblIdProtocolo()); + $objAtividadeDTO->setDblIdProtocolo($objDTO->getDblIdProtocolo()); $objAtividadeDTO->setDthConclusao(null); $objAtividadeRN = new AtividadeRN(); $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); if(count($arrObjAtividadeDTO) == 0) { // ecluir processo do bloco - $objPenBlocoProcessoRN->excluir(array($objPenBlocoProcessoDTO)); + $objPenBlocoProcessoRN->excluir(array($objDTO)); } } + $arrPenBlocoProcessoDTO = $objPenBlocoProcessoRN->listar($objPenBlocoProcessoDTO); + } + if ($arrPenBlocoProcessoDTO == null) { + $objTramiteEmBlocoRN->excluir(array($tramiteEmBlocoDTO)); } } } diff --git a/tests_sei4/funcional/src/fixtures/BlocoDeTramiteProtocoloFixture.php b/tests_sei4/funcional/src/fixtures/BlocoDeTramiteProtocoloFixture.php index 944c1da78..7f9c043a5 100644 --- a/tests_sei4/funcional/src/fixtures/BlocoDeTramiteProtocoloFixture.php +++ b/tests_sei4/funcional/src/fixtures/BlocoDeTramiteProtocoloFixture.php @@ -19,6 +19,8 @@ protected function cadastrar($dados = []) $this->objBlocoDeTramiteProtocoloDTO->setDblIdProtocolo($dados['IdProtocolo'] ?: null); $this->objBlocoDeTramiteProtocoloDTO->setNumIdBloco($dados['IdBloco'] ?: null); $this->objBlocoDeTramiteProtocoloDTO->setNumSequencia($dados['Sequencia'] ?: null); + $this->objBlocoDeTramiteProtocoloDTO->setNumIdUsuario($dados['IdUsuario'] ?: '100000001'); + $this->objBlocoDeTramiteProtocoloDTO->setNumIdUnidade($dados['IdUnidade'] ?: '110000001'); $dthRegistro = date('d/m/Y H:i:s'); $this->objBlocoDeTramiteProtocoloDTO->setDthRegistro($dados['DthRegistro'] ?: $dthRegistro); $this->objBlocoDeTramiteProtocoloDTO->setDthAtualizado($dados['DthAtualizado'] ?: $dthRegistro); diff --git a/tests_sei41/funcional/src/fixtures/BlocoDeTramiteProtocoloFixture.php b/tests_sei41/funcional/src/fixtures/BlocoDeTramiteProtocoloFixture.php index 944c1da78..7f9c043a5 100644 --- a/tests_sei41/funcional/src/fixtures/BlocoDeTramiteProtocoloFixture.php +++ b/tests_sei41/funcional/src/fixtures/BlocoDeTramiteProtocoloFixture.php @@ -19,6 +19,8 @@ protected function cadastrar($dados = []) $this->objBlocoDeTramiteProtocoloDTO->setDblIdProtocolo($dados['IdProtocolo'] ?: null); $this->objBlocoDeTramiteProtocoloDTO->setNumIdBloco($dados['IdBloco'] ?: null); $this->objBlocoDeTramiteProtocoloDTO->setNumSequencia($dados['Sequencia'] ?: null); + $this->objBlocoDeTramiteProtocoloDTO->setNumIdUsuario($dados['IdUsuario'] ?: '100000001'); + $this->objBlocoDeTramiteProtocoloDTO->setNumIdUnidade($dados['IdUnidade'] ?: '110000001'); $dthRegistro = date('d/m/Y H:i:s'); $this->objBlocoDeTramiteProtocoloDTO->setDthRegistro($dados['DthRegistro'] ?: $dthRegistro); $this->objBlocoDeTramiteProtocoloDTO->setDthAtualizado($dados['DthAtualizado'] ?: $dthRegistro); diff --git a/tests_super/funcional/src/fixtures/BlocoDeTramiteProtocoloFixture.php b/tests_super/funcional/src/fixtures/BlocoDeTramiteProtocoloFixture.php index 4ecd17294..88a64cfe2 100644 --- a/tests_super/funcional/src/fixtures/BlocoDeTramiteProtocoloFixture.php +++ b/tests_super/funcional/src/fixtures/BlocoDeTramiteProtocoloFixture.php @@ -19,6 +19,8 @@ protected function cadastrar($dados = []) $this->objBlocoDeTramiteProtocoloDTO->setDblIdProtocolo($dados['IdProtocolo'] ?: null); $this->objBlocoDeTramiteProtocoloDTO->setNumIdBloco($dados['IdBloco'] ?: null); $this->objBlocoDeTramiteProtocoloDTO->setNumSequencia($dados['Sequencia'] ?: null); + $this->objBlocoDeTramiteProtocoloDTO->setNumIdUsuario($dados['IdUsuario'] ?: '100000001'); + $this->objBlocoDeTramiteProtocoloDTO->setNumIdUnidade($dados['IdUnidade'] ?: '110000001'); $dthRegistro = date('d/m/Y H:i:s'); $this->objBlocoDeTramiteProtocoloDTO->setDthRegistro($dados['DthRegistro'] ?: $dthRegistro); $this->objBlocoDeTramiteProtocoloDTO->setDthAtualizado($dados['DthAtualizado'] ?: $dthRegistro); From de8ebf580111524e9d094b342b66345068a0c2d6 Mon Sep 17 00:00:00 2001 From: mateussbh Date: Mon, 23 Sep 2024 09:53:24 -0300 Subject: [PATCH 02/12] feat:manter estado do bloco como aguardando processamento, quando tiver processo com status aguardando processamento. --- .../sei_atualizar_versao_modulo_pen.php | 51 +++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/src/scripts/sei_atualizar_versao_modulo_pen.php b/src/scripts/sei_atualizar_versao_modulo_pen.php index 84fe594e6..0b8628ad2 100755 --- a/src/scripts/sei_atualizar_versao_modulo_pen.php +++ b/src/scripts/sei_atualizar_versao_modulo_pen.php @@ -2982,6 +2982,10 @@ protected function instalarV3070() } if ($arrPenBlocoProcessoDTO == null) { $objTramiteEmBlocoRN->excluir(array($tramiteEmBlocoDTO)); + } elseif ($tramiteEmBlocoDTO->getStrStaEstado() == TramiteEmBlocoRN::$TE_CONCLUIDO_PARCIALMENTE) { + $estadoBloco = $this->validarSituacaoParaBloco($arrPenBlocoProcessoDTO,$tramiteEmBlocoDTO->getStrStaEstado()); + $tramiteEmBlocoDTO->setStrStaEstado($estadoBloco); + $objTramiteEmBlocoRN->alterar($tramiteEmBlocoDTO); } } } @@ -3055,6 +3059,53 @@ protected function instalarV3070() $this->atualizarNumeroVersao("3.7.0"); } + /** + * Validar situacao para bloco + * + * @param array $arrObjTramiteEmBlocoProtocoloDTO + * @param string $situacaoBloco + * @return int + */ + public function validarSituacaoParaBloco($arrObjTramiteEmBlocoProtocoloDTO, $situacaoBloco) + { + $concluido = array( + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE + ); + $emAndamento = array( + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_INICIADO, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_COMPONENTES_ENVIADOS_REMETENTE, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_METADADOS_RECEBIDO_DESTINATARIO, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_COMPONENTES_RECEBIDOS_DESTINATARIO, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_ENVIADO_DESTINATARIO + ); + + $qtdProcesos = count($arrObjTramiteEmBlocoProtocoloDTO); + $arrayConcluidos = array(); + $arrayEmAndamento = array(); + foreach ($arrObjTramiteEmBlocoProtocoloDTO as $objDTO) { + if (in_array($objDTO->getNumIdAndamento(), $concluido)) { + $arrayConcluidos[] = $objDTO; + } + + if (in_array($objDTO->getNumIdAndamento(), $emAndamento)) { + $arrayEmAndamento[] = $objDTO; + } + } + + if ($qtdProcesos == count($arrayConcluidos)) { + $situacaoBloco = TramiteEmBlocoRN::$TE_CONCLUIDO; + } + if (count($arrayEmAndamento) > 0) { + $situacaoBloco = TramiteEmBlocoRN::$TE_DISPONIBILIZADO; + } + + return $situacaoBloco; + } + public function atualizarHipotesesLegais() { $penRelHipoteseLegal = new PenRelHipoteseLegalDTO(); From 039b9c80829eee595c47c29035a7b3d7e52a1de7 Mon Sep 17 00:00:00 2001 From: mateussbh Date: Mon, 23 Sep 2024 14:53:55 -0300 Subject: [PATCH 03/12] =?UTF-8?q?feat:conclus=C3=A3o=20da=20regra=20de=20e?= =?UTF-8?q?xclus=C3=A3o=20de=20processos=20em=20blocos=20na=20migra=C3=A7?= =?UTF-8?q?=C3=A3o.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sei_atualizar_versao_modulo_pen.php | 103 +++++++++++------- 1 file changed, 64 insertions(+), 39 deletions(-) diff --git a/src/scripts/sei_atualizar_versao_modulo_pen.php b/src/scripts/sei_atualizar_versao_modulo_pen.php index 0b8628ad2..e40014fc7 100755 --- a/src/scripts/sei_atualizar_versao_modulo_pen.php +++ b/src/scripts/sei_atualizar_versao_modulo_pen.php @@ -2947,48 +2947,12 @@ protected function instalarV3070() //Remover blocos sem nenhum processo vinculado $objTramiteEmBlocoDTO = new TramiteEmBlocoDTO(); $objTramiteEmBlocoDTO->retNumId(); + $objTramiteEmBlocoDTO->retNumIdUnidade(); $objTramiteEmBlocoDTO->retStrStaEstado(); - + $objTramiteEmBlocoRN = new TramiteEmBlocoRN(); $arrObjTramiteEmBlocoDTO = $objTramiteEmBlocoRN->listar($objTramiteEmBlocoDTO); - if (!is_null($arrObjTramiteEmBlocoDTO)) { - foreach($arrObjTramiteEmBlocoDTO as $tramiteEmBlocoDTO) { - //Remover blocos sem nenhum processo vinculado - $objPenBlocoProcessoDTO = new PenBlocoProcessoDTO(); - $objPenBlocoProcessoDTO->setNumIdBloco($tramiteEmBlocoDTO->getNumId()); - $objPenBlocoProcessoDTO->retTodos(); - - $objPenBlocoProcessoRN = new PenBlocoProcessoRN(); - $arrPenBlocoProcessoDTO = $objPenBlocoProcessoRN->listar($objPenBlocoProcessoDTO); - - if($arrPenBlocoProcessoDTO != null){ - foreach ($arrPenBlocoProcessoDTO as $objDTO) { - $objAtividadeDTO = new AtividadeDTO(); - $objAtividadeDTO->setDistinct(true); - $objAtividadeDTO->retStrSiglaUnidade(); - $objAtividadeDTO->setNumIdUnidade($objDTO->getNumIdUnidade()); - $objAtividadeDTO->setOrdStrSiglaUnidade(InfraDTO::$TIPO_ORDENACAO_ASC); - $objAtividadeDTO->setDblIdProtocolo($objDTO->getDblIdProtocolo()); - $objAtividadeDTO->setDthConclusao(null); - - $objAtividadeRN = new AtividadeRN(); - $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); - if(count($arrObjAtividadeDTO) == 0) { - // ecluir processo do bloco - $objPenBlocoProcessoRN->excluir(array($objDTO)); - } - } - $arrPenBlocoProcessoDTO = $objPenBlocoProcessoRN->listar($objPenBlocoProcessoDTO); - } - if ($arrPenBlocoProcessoDTO == null) { - $objTramiteEmBlocoRN->excluir(array($tramiteEmBlocoDTO)); - } elseif ($tramiteEmBlocoDTO->getStrStaEstado() == TramiteEmBlocoRN::$TE_CONCLUIDO_PARCIALMENTE) { - $estadoBloco = $this->validarSituacaoParaBloco($arrPenBlocoProcessoDTO,$tramiteEmBlocoDTO->getStrStaEstado()); - $tramiteEmBlocoDTO->setStrStaEstado($estadoBloco); - $objTramiteEmBlocoRN->alterar($tramiteEmBlocoDTO); - } - } - } + $this->validarBlocos($arrObjTramiteEmBlocoDTO); $this->atualizaOrdemTramiteEmBlocoPorUnidade(); @@ -3059,6 +3023,67 @@ protected function instalarV3070() $this->atualizarNumeroVersao("3.7.0"); } + /** + * Valida blocos de tramite + * + * @param $arrObjTramiteEmBlocoDTO + * @return void + */ + public function validarBlocos($arrObjTramiteEmBlocoDTO) + { + if (!is_null($arrObjTramiteEmBlocoDTO)) { + foreach($arrObjTramiteEmBlocoDTO as $tramiteEmBlocoDTO) { + //Remover blocos sem nenhum processo vinculado + $objPenBlocoProcessoDTO = new PenBlocoProcessoDTO(); + $objPenBlocoProcessoDTO->setNumIdBloco($tramiteEmBlocoDTO->getNumId()); + $objPenBlocoProcessoDTO->retTodos(); + + $objPenBlocoProcessoRN = new PenBlocoProcessoRN(); + $arrPenBlocoProcessoDTO = $objPenBlocoProcessoRN->listar($objPenBlocoProcessoDTO); + + if($arrPenBlocoProcessoDTO != null){ + foreach ($arrPenBlocoProcessoDTO as $objDTO) { + $concluido = array( + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE + ); + if (in_array($objDTO->getNumIdAndamento(), $concluido)) { + continue; + } + + $objAtividadeDTO = new AtividadeDTO(); + $objAtividadeDTO->setDistinct(true); + $objAtividadeDTO->retStrSiglaUnidade(); + $objAtividadeDTO->setNumIdUnidade($tramiteEmBlocoDTO->getNumIdUnidade()); + $objAtividadeDTO->setOrdStrSiglaUnidade(InfraDTO::$TIPO_ORDENACAO_ASC); + $objAtividadeDTO->setDblIdProtocolo($objDTO->getDblIdProtocolo()); + $objAtividadeDTO->setDthConclusao(null); + + $objAtividadeRN = new AtividadeRN(); + $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); + if(count($arrObjAtividadeDTO) == 0) { + // ecluir processo do bloco + $objPenBlocoProcessoBD = new PenBlocoProcessoBD(BancoSEI::getInstance()); + $objPenBlocoProcessoBD->excluir($objDTO); + } + } + $arrPenBlocoProcessoDTO = $objPenBlocoProcessoRN->listar($objPenBlocoProcessoDTO); + } + + $objTramiteEmBlocoRN = new TramiteEmBlocoRN(); + if ($arrPenBlocoProcessoDTO == null) { + $objTramiteEmBlocoRN->excluir(array($tramiteEmBlocoDTO)); + } elseif ($tramiteEmBlocoDTO->getStrStaEstado() == TramiteEmBlocoRN::$TE_CONCLUIDO_PARCIALMENTE) { + $estadoBloco = $this->validarSituacaoParaBloco($arrPenBlocoProcessoDTO, $tramiteEmBlocoDTO->getStrStaEstado()); + $tramiteEmBlocoDTO->setStrStaEstado($estadoBloco); + $objTramiteEmBlocoRN->alterar($tramiteEmBlocoDTO); + } + } + } + } + /** * Validar situacao para bloco * From 2b2a5e7f1f9515f9e99d3a670552ee8b7566f311 Mon Sep 17 00:00:00 2001 From: Mauro Costa <83025710+Mauro1706@users.noreply.github.com> Date: Tue, 24 Sep 2024 10:45:09 -0300 Subject: [PATCH 04/12] =?UTF-8?q?feat:=20inclus=C3=A3o=20de=20cancelado=20?= =?UTF-8?q?(8)=20em=20andamento=20no=20bloco=20(#633)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Mauro Costa --- src/PENIntegracao.php | 1 - src/pen_procedimento_cancelar_expedir.php | 1 - src/pen_tramita_em_bloco_protocolo_listar.php | 1 - src/pen_tramite_processo_em_bloco_cadastrar.php | 1 - src/rn/PenBlocoProcessoRN.php | 5 ++--- src/rn/ReceberProcedimentoRN.php | 1 - src/rn/ReceberReciboTramiteRN.php | 1 - src/rn/TramitaEmBlocoProtocoloRN.php | 4 ++-- 8 files changed, 4 insertions(+), 11 deletions(-) diff --git a/src/PENIntegracao.php b/src/PENIntegracao.php index ed3fd84dd..b0a4a5e2a 100755 --- a/src/PENIntegracao.php +++ b/src/PENIntegracao.php @@ -162,7 +162,6 @@ public function montarBotaoProcesso(ProcedimentoAPI $objSeiIntegracaoDTO) if (count($arrObjPenBlocoProcessoDTO) > 0){ $concluido = array( ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE diff --git a/src/pen_procedimento_cancelar_expedir.php b/src/pen_procedimento_cancelar_expedir.php index 50872a236..e99676312 100755 --- a/src/pen_procedimento_cancelar_expedir.php +++ b/src/pen_procedimento_cancelar_expedir.php @@ -35,7 +35,6 @@ $objTramiteEmBlocoProtocoloDTO->setNumIdAtividade( array( ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE diff --git a/src/pen_tramita_em_bloco_protocolo_listar.php b/src/pen_tramita_em_bloco_protocolo_listar.php index 2c3c7523e..a41ab6707 100755 --- a/src/pen_tramita_em_bloco_protocolo_listar.php +++ b/src/pen_tramita_em_bloco_protocolo_listar.php @@ -151,7 +151,6 @@ $situacaoPodeExcluir = array( ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE, ); diff --git a/src/pen_tramite_processo_em_bloco_cadastrar.php b/src/pen_tramite_processo_em_bloco_cadastrar.php index e461e6e56..e504647cb 100755 --- a/src/pen_tramite_processo_em_bloco_cadastrar.php +++ b/src/pen_tramite_processo_em_bloco_cadastrar.php @@ -57,7 +57,6 @@ foreach($arrObjPenBlocoProcessoDTO as $objPenBlocoProcessoDTO){ $concluido = array( ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE diff --git a/src/rn/PenBlocoProcessoRN.php b/src/rn/PenBlocoProcessoRN.php index f20224dcd..3cc5131c5 100755 --- a/src/rn/PenBlocoProcessoRN.php +++ b/src/rn/PenBlocoProcessoRN.php @@ -414,7 +414,6 @@ protected function validarBlocoDeTramiteControlado($idProtocolo) $concluidos = array( ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE @@ -554,7 +553,6 @@ private function validarStatusProcessoParaBloco($arrObjTramiteEmBlocoProtocoloDT { $concluido = array( ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE @@ -564,7 +562,8 @@ private function validarStatusProcessoParaBloco($arrObjTramiteEmBlocoProtocoloDT ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_COMPONENTES_ENVIADOS_REMETENTE, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_METADADOS_RECEBIDO_DESTINATARIO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_COMPONENTES_RECEBIDOS_DESTINATARIO, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_ENVIADO_DESTINATARIO + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_ENVIADO_DESTINATARIO, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO ); $qtdProcesos = count($arrObjTramiteEmBlocoProtocoloDTO); diff --git a/src/rn/ReceberProcedimentoRN.php b/src/rn/ReceberProcedimentoRN.php index e7a343323..940e6d772 100755 --- a/src/rn/ReceberProcedimentoRN.php +++ b/src/rn/ReceberProcedimentoRN.php @@ -532,7 +532,6 @@ protected function receberTramitesRecusadosInternoControlado($parObjTramite) $objTramiteEmBlocoProtocoloDTO->setNumIdAndamento( array( ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE ), diff --git a/src/rn/ReceberReciboTramiteRN.php b/src/rn/ReceberReciboTramiteRN.php index 73bd0cae3..d6d21feb5 100755 --- a/src/rn/ReceberReciboTramiteRN.php +++ b/src/rn/ReceberReciboTramiteRN.php @@ -146,7 +146,6 @@ protected function receberReciboDeTramiteInternoControlado($objReciboTramite) $objTramiteEmBlocoProtocoloDTO->setNumIdAndamento( array( ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE ), diff --git a/src/rn/TramitaEmBlocoProtocoloRN.php b/src/rn/TramitaEmBlocoProtocoloRN.php index ff91ff96d..51ed65f73 100644 --- a/src/rn/TramitaEmBlocoProtocoloRN.php +++ b/src/rn/TramitaEmBlocoProtocoloRN.php @@ -421,7 +421,6 @@ private function validarStatusProcessoParaBloco($arrObjTramiteEmBlocoProtocoloDT { $concluido = array( ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE @@ -431,7 +430,8 @@ private function validarStatusProcessoParaBloco($arrObjTramiteEmBlocoProtocoloDT ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_COMPONENTES_ENVIADOS_REMETENTE, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_METADADOS_RECEBIDO_DESTINATARIO, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_COMPONENTES_RECEBIDOS_DESTINATARIO, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_ENVIADO_DESTINATARIO + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_ENVIADO_DESTINATARIO, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO ); $qtdProcesos = count($arrObjTramiteEmBlocoProtocoloDTO); $arrayConcluidos = array(); From c0f44d655e255b91abc604b609fd40e839ee767d Mon Sep 17 00:00:00 2001 From: mateussbh Date: Tue, 24 Sep 2024 18:32:19 -0300 Subject: [PATCH 05/12] =?UTF-8?q?fix:=20adequa=C3=A7=C3=A3o=20para=20respe?= =?UTF-8?q?itar=20a=20regra=20de=20remo=C3=A7=C3=A3o=20de=20arquivos=20no?= =?UTF-8?q?=20momento=20da=20migra=C3=A7=C3=A3o.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pen_tramita_em_bloco_protocolo_listar.php | 4 +-- .../sei_atualizar_versao_modulo_pen.php | 27 +++++++++++-------- 2 files changed, 18 insertions(+), 13 deletions(-) diff --git a/src/pen_tramita_em_bloco_protocolo_listar.php b/src/pen_tramita_em_bloco_protocolo_listar.php index a41ab6707..f41dff7de 100755 --- a/src/pen_tramita_em_bloco_protocolo_listar.php +++ b/src/pen_tramita_em_bloco_protocolo_listar.php @@ -189,13 +189,13 @@ case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_METADADOS_RECEBIDO_DESTINATARIO: case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_COMPONENTES_RECEBIDOS_DESTINATARIO: case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_ENVIADO_DESTINATARIO: + case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO: $strResultado .= ''; break; case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE: $strResultado .= ''; break; - case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA: - case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO: + case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA: $strResultado .= ''; break; case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO: diff --git a/src/scripts/sei_atualizar_versao_modulo_pen.php b/src/scripts/sei_atualizar_versao_modulo_pen.php index e40014fc7..6f28a48f6 100755 --- a/src/scripts/sei_atualizar_versao_modulo_pen.php +++ b/src/scripts/sei_atualizar_versao_modulo_pen.php @@ -3043,13 +3043,7 @@ public function validarBlocos($arrObjTramiteEmBlocoDTO) if($arrPenBlocoProcessoDTO != null){ foreach ($arrPenBlocoProcessoDTO as $objDTO) { - $concluido = array( - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE - ); - if (in_array($objDTO->getNumIdAndamento(), $concluido)) { + if ($objDTO->getNumIdAndamento() == ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE) { continue; } @@ -3064,9 +3058,20 @@ public function validarBlocos($arrObjTramiteEmBlocoDTO) $objAtividadeRN = new AtividadeRN(); $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); if(count($arrObjAtividadeDTO) == 0) { - // ecluir processo do bloco - $objPenBlocoProcessoBD = new PenBlocoProcessoBD(BancoSEI::getInstance()); - $objPenBlocoProcessoBD->excluir($objDTO); + $objProcedimentoDTO = new ProcedimentoDTO(); + $objProcedimentoDTO->retStrProtocoloProcedimentoFormatado(); + $objProcedimentoDTO->retDblIdProcedimento(); + $objProcedimentoDTO->retNumIdUnidadeGeradoraProtocolo(); + $objProcedimentoDTO->setDblIdProcedimento($objDTO->getDblIdProtocolo()); + + $objProcedimentoRN = new ProcedimentoRN(); + $procedimento = $objProcedimentoRN->consultarRN0201($objProcedimentoDTO); + + if ($tramiteEmBlocoDTO->getNumIdUnidade() != $procedimento->getNumIdUnidadeGeradoraProtocolo()) { + // excluir processo do bloco + $objPenBlocoProcessoBD = new PenBlocoProcessoBD(BancoSEI::getInstance()); + $objPenBlocoProcessoBD->excluir($objDTO); + } } } $arrPenBlocoProcessoDTO = $objPenBlocoProcessoRN->listar($objPenBlocoProcessoDTO); @@ -3314,7 +3319,7 @@ private function buscarIdAndamento($idProtocolo, $staBloco) $objPenProtocoloDTO = $objProtocoloBD->consultar($objPenProtocoloDTO); if (!empty($objPenProtocoloDTO) && $objPenProtocoloDTO->getStrSinObteveRecusa() == 'S') { - return ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECUSADO; + return ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA; } $objAtividadeDTO = new AtividadeDTO(); From f3190a16ed74d0837e5fe0b807446025634335bf Mon Sep 17 00:00:00 2001 From: Mauro Costa <83025710+Mauro1706@users.noreply.github.com> Date: Wed, 25 Sep 2024 14:48:50 -0300 Subject: [PATCH 06/12] feat: cenario de unidade geradora com processo sem andamento aberto (#636) Co-authored-by: Mauro Costa --- src/rn/ReceberProcedimentoRN.php | 3 +- src/rn/ReceberReciboTramiteRN.php | 3 +- .../sei_atualizar_versao_modulo_pen.php | 30 ++++++++++++------- 3 files changed, 23 insertions(+), 13 deletions(-) diff --git a/src/rn/ReceberProcedimentoRN.php b/src/rn/ReceberProcedimentoRN.php index 940e6d772..812680ef1 100755 --- a/src/rn/ReceberProcedimentoRN.php +++ b/src/rn/ReceberProcedimentoRN.php @@ -533,7 +533,8 @@ protected function receberTramitesRecusadosInternoControlado($parObjTramite) array( ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO ), InfraDTO::$OPER_NOT_IN ); diff --git a/src/rn/ReceberReciboTramiteRN.php b/src/rn/ReceberReciboTramiteRN.php index d6d21feb5..b85a27147 100755 --- a/src/rn/ReceberReciboTramiteRN.php +++ b/src/rn/ReceberReciboTramiteRN.php @@ -147,7 +147,8 @@ protected function receberReciboDeTramiteInternoControlado($objReciboTramite) array( ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE, ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, - ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO ), InfraDTO::$OPER_NOT_IN ); diff --git a/src/scripts/sei_atualizar_versao_modulo_pen.php b/src/scripts/sei_atualizar_versao_modulo_pen.php index 6f28a48f6..540b65f6d 100755 --- a/src/scripts/sei_atualizar_versao_modulo_pen.php +++ b/src/scripts/sei_atualizar_versao_modulo_pen.php @@ -3058,17 +3058,25 @@ public function validarBlocos($arrObjTramiteEmBlocoDTO) $objAtividadeRN = new AtividadeRN(); $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); if(count($arrObjAtividadeDTO) == 0) { - $objProcedimentoDTO = new ProcedimentoDTO(); - $objProcedimentoDTO->retStrProtocoloProcedimentoFormatado(); - $objProcedimentoDTO->retDblIdProcedimento(); - $objProcedimentoDTO->retNumIdUnidadeGeradoraProtocolo(); - $objProcedimentoDTO->setDblIdProcedimento($objDTO->getDblIdProtocolo()); - - $objProcedimentoRN = new ProcedimentoRN(); - $procedimento = $objProcedimentoRN->consultarRN0201($objProcedimentoDTO); - - if ($tramiteEmBlocoDTO->getNumIdUnidade() != $procedimento->getNumIdUnidadeGeradoraProtocolo()) { - // excluir processo do bloco + // Consultar atividae de envio interno + $objAtividadeDTO = new AtividadeDTO(); + $objAtividadeDTO->setDblIdProtocolo($objDTO->getDblIdProtocolo()); + $objAtividadeDTO->setNumIdTarefa(32); + $objAtividadeDTO->setOrdDthAbertura(InfraDTO::$TIPO_ORDENACAO_DESC); + $objAtividadeDTO->setNumMaxRegistrosRetorno(1); + $objAtividadeDTO->retNumIdAtividade(); + $objAtividadeDTO->retNumIdUnidade(); + $objAtividadeDTO->retNumIdTarefa(); + $objAtividadeRN = new AtividadeRN(); + $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); + + // excluir processo do bloco + if ($arrObjAtividadeDTO !== null) { + if ($arrObjAtividadeDTO[0]->getNumIdUnidade() != $tramiteEmBlocoDTO->getNumIdUnidade()) { + $objPenBlocoProcessoBD = new PenBlocoProcessoBD(BancoSEI::getInstance()); + $objPenBlocoProcessoBD->excluir($objDTO); + } + } elseif ($tramiteEmBlocoDTO->getNumIdUnidade() != $procedimento->getNumIdUnidadeGeradoraProtocolo()) { $objPenBlocoProcessoBD = new PenBlocoProcessoBD(BancoSEI::getInstance()); $objPenBlocoProcessoBD->excluir($objDTO); } From 16990539c2ab18e431dd2860d6afa440371ba23b Mon Sep 17 00:00:00 2001 From: Mauro Costa <83025710+Mauro1706@users.noreply.github.com> Date: Wed, 25 Sep 2024 15:25:57 -0300 Subject: [PATCH 07/12] 635 fix cenario unidade geradora (#637) * feat: cenario de unidade geradora com processo sem andamento aberto * fix: consulta de procedimento --------- Co-authored-by: Mauro Costa --- src/scripts/sei_atualizar_versao_modulo_pen.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/scripts/sei_atualizar_versao_modulo_pen.php b/src/scripts/sei_atualizar_versao_modulo_pen.php index 540b65f6d..15dbbf641 100755 --- a/src/scripts/sei_atualizar_versao_modulo_pen.php +++ b/src/scripts/sei_atualizar_versao_modulo_pen.php @@ -3070,6 +3070,21 @@ public function validarBlocos($arrObjTramiteEmBlocoDTO) $objAtividadeRN = new AtividadeRN(); $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); + $objProcedimentoRN = new ProcedimentoRN(); + $procedimento = $objProcedimentoRN->consultarRN0201($objProcedimentoDTO); + + // Consultar atividae de envio interno + $objAtividadeDTO = new AtividadeDTO(); + $objAtividadeDTO->setDblIdProtocolo($objDTO->getDblIdProtocolo()); + $objAtividadeDTO->setNumIdTarefa(TarefaRN::$TI_PROCESSO_REMETIDO_UNIDADE); + $objAtividadeDTO->setOrdDthAbertura(InfraDTO::$TIPO_ORDENACAO_DESC); + $objAtividadeDTO->setNumMaxRegistrosRetorno(1); + $objAtividadeDTO->retNumIdAtividade(); + $objAtividadeDTO->retNumIdUnidade(); + $objAtividadeDTO->retNumIdTarefa(); + $objAtividadeRN = new AtividadeRN(); + $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); + // excluir processo do bloco if ($arrObjAtividadeDTO !== null) { if ($arrObjAtividadeDTO[0]->getNumIdUnidade() != $tramiteEmBlocoDTO->getNumIdUnidade()) { From 5241faa97b313a9b144fc3cdd2d8f67d62d0c265 Mon Sep 17 00:00:00 2001 From: Mauro Costa <83025710+Mauro1706@users.noreply.github.com> Date: Wed, 25 Sep 2024 15:40:54 -0300 Subject: [PATCH 08/12] 635 fix cenario unidade geradora (#638) * feat: cenario de unidade geradora com processo sem andamento aberto * fix: consulta de procedimento * fix: consulta de procedimento * fix: consulta de procedimento * fix: consulta de procedimento --------- Co-authored-by: Mauro Costa --- src/scripts/sei_atualizar_versao_modulo_pen.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/scripts/sei_atualizar_versao_modulo_pen.php b/src/scripts/sei_atualizar_versao_modulo_pen.php index 15dbbf641..cc09ea26e 100755 --- a/src/scripts/sei_atualizar_versao_modulo_pen.php +++ b/src/scripts/sei_atualizar_versao_modulo_pen.php @@ -3058,10 +3058,19 @@ public function validarBlocos($arrObjTramiteEmBlocoDTO) $objAtividadeRN = new AtividadeRN(); $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); if(count($arrObjAtividadeDTO) == 0) { + $objProcedimentoDTO = new ProcedimentoDTO(); + $objProcedimentoDTO->retStrProtocoloProcedimentoFormatado(); + $objProcedimentoDTO->retDblIdProcedimento(); + $objProcedimentoDTO->retNumIdUnidadeGeradoraProtocolo(); + $objProcedimentoDTO->setDblIdProcedimento($objDTO->getDblIdProtocolo()); + + $objProcedimentoRN = new ProcedimentoRN(); + $procedimento = $objProcedimentoRN->consultarRN0201($objProcedimentoDTO); + // Consultar atividae de envio interno $objAtividadeDTO = new AtividadeDTO(); $objAtividadeDTO->setDblIdProtocolo($objDTO->getDblIdProtocolo()); - $objAtividadeDTO->setNumIdTarefa(32); + $objAtividadeDTO->setNumIdTarefa(TarefaRN::$TI_PROCESSO_REMETIDO_UNIDADE); $objAtividadeDTO->setOrdDthAbertura(InfraDTO::$TIPO_ORDENACAO_DESC); $objAtividadeDTO->setNumMaxRegistrosRetorno(1); $objAtividadeDTO->retNumIdAtividade(); From e9ef76178aaba53568327ff538cc7ad51915d1b0 Mon Sep 17 00:00:00 2001 From: mateussbh Date: Wed, 25 Sep 2024 15:46:36 -0300 Subject: [PATCH 09/12] =?UTF-8?q?fix:=20c=C3=B3digo=20duplicado.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/scripts/sei_atualizar_versao_modulo_pen.php | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/src/scripts/sei_atualizar_versao_modulo_pen.php b/src/scripts/sei_atualizar_versao_modulo_pen.php index cc09ea26e..fd784971d 100755 --- a/src/scripts/sei_atualizar_versao_modulo_pen.php +++ b/src/scripts/sei_atualizar_versao_modulo_pen.php @@ -3066,22 +3066,7 @@ public function validarBlocos($arrObjTramiteEmBlocoDTO) $objProcedimentoRN = new ProcedimentoRN(); $procedimento = $objProcedimentoRN->consultarRN0201($objProcedimentoDTO); - - // Consultar atividae de envio interno - $objAtividadeDTO = new AtividadeDTO(); - $objAtividadeDTO->setDblIdProtocolo($objDTO->getDblIdProtocolo()); - $objAtividadeDTO->setNumIdTarefa(TarefaRN::$TI_PROCESSO_REMETIDO_UNIDADE); - $objAtividadeDTO->setOrdDthAbertura(InfraDTO::$TIPO_ORDENACAO_DESC); - $objAtividadeDTO->setNumMaxRegistrosRetorno(1); - $objAtividadeDTO->retNumIdAtividade(); - $objAtividadeDTO->retNumIdUnidade(); - $objAtividadeDTO->retNumIdTarefa(); - $objAtividadeRN = new AtividadeRN(); - $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); - - $objProcedimentoRN = new ProcedimentoRN(); - $procedimento = $objProcedimentoRN->consultarRN0201($objProcedimentoDTO); - + // Consultar atividae de envio interno $objAtividadeDTO = new AtividadeDTO(); $objAtividadeDTO->setDblIdProtocolo($objDTO->getDblIdProtocolo()); From 381e59122d576804eab07cc470348d430cea7974 Mon Sep 17 00:00:00 2001 From: mateussbh Date: Wed, 25 Sep 2024 16:03:17 -0300 Subject: [PATCH 10/12] =?UTF-8?q?fix:=20erro=20na=20migra=C3=A7=C3=A3o=20q?= =?UTF-8?q?uando=20um=20processo=20n=C3=A3o=20tinha=20atividade=20de=20cod?= =?UTF-8?q?=2032.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/scripts/sei_atualizar_versao_modulo_pen.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/scripts/sei_atualizar_versao_modulo_pen.php b/src/scripts/sei_atualizar_versao_modulo_pen.php index fd784971d..dd02683ea 100755 --- a/src/scripts/sei_atualizar_versao_modulo_pen.php +++ b/src/scripts/sei_atualizar_versao_modulo_pen.php @@ -3080,7 +3080,7 @@ public function validarBlocos($arrObjTramiteEmBlocoDTO) $arrObjAtividadeDTO = $objAtividadeRN->listarRN0036($objAtividadeDTO); // excluir processo do bloco - if ($arrObjAtividadeDTO !== null) { + if ($arrObjAtividadeDTO !== null && count($arrObjAtividadeDTO) > 0) { if ($arrObjAtividadeDTO[0]->getNumIdUnidade() != $tramiteEmBlocoDTO->getNumIdUnidade()) { $objPenBlocoProcessoBD = new PenBlocoProcessoBD(BancoSEI::getInstance()); $objPenBlocoProcessoBD->excluir($objDTO); From ac97be1a330473b0c0d2d9eeb872714474b9561b Mon Sep 17 00:00:00 2001 From: Mauro Costa <83025710+Mauro1706@users.noreply.github.com> Date: Wed, 25 Sep 2024 19:51:30 -0300 Subject: [PATCH 11/12] =?UTF-8?q?feat:=20valida=C3=A7=C3=A3o=20de=20tamite?= =?UTF-8?q?=20com=20processo=20incluido=20e=20bloco,=20valida=C3=A7=C3=A3o?= =?UTF-8?q?=20para=20visualiza=C3=A7=C3=A3o=20detalhada=20(#639)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Mauro Costa --- ...en_tramite_processo_em_bloco_cadastrar.php | 10 ++++- src/rn/ExpedirProcedimentoRN.php | 38 +++++++++++++++++++ 2 files changed, 46 insertions(+), 2 deletions(-) diff --git a/src/pen_tramite_processo_em_bloco_cadastrar.php b/src/pen_tramite_processo_em_bloco_cadastrar.php index e504647cb..a9b116776 100755 --- a/src/pen_tramite_processo_em_bloco_cadastrar.php +++ b/src/pen_tramite_processo_em_bloco_cadastrar.php @@ -165,7 +165,11 @@ } break; case 'pen_tramita_em_bloco_adicionar': - $arrProtocolosOrigem = array_merge($objPaginaSEI->getArrStrItensSelecionados('Gerados'), $objPaginaSEI->getArrStrItensSelecionados('Recebidos')); + $arrProtocolosOrigem = array_merge( + $objPaginaSEI->getArrStrItensSelecionados('Gerados'), + $objPaginaSEI->getArrStrItensSelecionados('Recebidos'), + $objPaginaSEI->getArrStrItensSelecionados('Detalhado') + ); $strIdItensSelecionados = $strIdItensSelecionados ?: $_GET['processos']; $strTitulo = 'Incluir Processo(s) no Bloco de Trâmite'; @@ -270,7 +274,9 @@ $objTramiteEmBlocoDTO->retNumOrdem(); $objTramiteEmBlocoDTO->retNumIdUnidade(); $objTramiteEmBlocoDTO->retStrDescricao(); - PaginaSEI::getInstance()->prepararOrdenacao($objTramiteEmBlocoDTO, 'Id', InfraDTO::$TIPO_ORDENACAO_DESC); + if ($_GET['acao'] != 'pen_tramita_em_bloco_adicionar') { + PaginaSEI::getInstance()->prepararOrdenacao($objTramiteEmBlocoDTO, 'Id', InfraDTO::$TIPO_ORDENACAO_DESC); + } $objTramiteEmBlocoRN = new TramiteEmBlocoRN(); foreach ($objTramiteEmBlocoRN->listar($objTramiteEmBlocoDTO) as $dados) { diff --git a/src/rn/ExpedirProcedimentoRN.php b/src/rn/ExpedirProcedimentoRN.php index a188b1553..ac1a71ae2 100755 --- a/src/rn/ExpedirProcedimentoRN.php +++ b/src/rn/ExpedirProcedimentoRN.php @@ -2466,6 +2466,43 @@ private function validarProcessoAbertoUnidade(InfraException $objInfraException, } } + private function validarProcessoIncluidoEmBlocoEmAndamento(InfraException $objInfraException, ProcedimentoDTO $objProcedimentoDTO, $strAtributoValidacao) + { + $concluido = array( + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE, + ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE + ); + + $objPenBlocoProcessoDTO = new PenBlocoProcessoDTO(); + $objPenBlocoProcessoDTO->setDblIdProtocolo($objProcedimentoDTO->getDblIdProcedimento()); + $objPenBlocoProcessoDTO->retNumIdAtividade(); + $objPenBlocoProcessoDTO->retStrProtocoloFormatadoProtocolo(); + $objPenBlocoProcessoDTO->retNumIdBloco(); + + $objPenBlocoProcessoRN = new PenBlocoProcessoRN(); + $arrPenBlocoProcessoDTO = $objPenBlocoProcessoRN->listar($objPenBlocoProcessoDTO); + + foreach ($arrPenBlocoProcessoDTO as $objPenBlocoProcessoDTO) { + if (!in_array($objPenBlocoProcessoDTO->getNumIdAtividade(), $concluido)) { + $objTramiteEmBlocoDTO = new TramiteEmBlocoDTO(); + $objTramiteEmBlocoDTO->setNumId($objPenBlocoProcessoDTO->getNumIdBloco()); + $objTramiteEmBlocoDTO->retNumOrdem(); + $objTramiteEmBlocoDTO->retStrSiglaUnidade(); + $objTramiteEmBlocoDTO->retStrDescricao(); + + $objTramiteEmBlocoRN = new TramiteEmBlocoRN(); + $objTramiteEmBlocoDTO = $objTramiteEmBlocoRN->consultar($objTramiteEmBlocoDTO); + + $mensagem = "Prezado(a) usuário(a), o processo {$objPenBlocoProcessoDTO->getStrProtocoloFormatadoProtocolo()} encontra-se inserido no bloco {$objTramiteEmBlocoDTO->getNumOrdem()} - " + . " {$objTramiteEmBlocoDTO->getStrDescricao()} da unidade {$objTramiteEmBlocoDTO->getStrSiglaUnidade()}." + . " Para continuar com essa ação é necessário que o processo seja removido do bloco em questão."; + $objInfraException->adicionarValidacao($mensagem, $strAtributoValidacao); + } + } + } + private function validarNivelAcessoProcesso(InfraException $objInfraException, ProcedimentoDTO $objProcedimentoDTO, $strAtributoValidacao) { if ($objProcedimentoDTO->getStrStaNivelAcessoLocalProtocolo() == ProtocoloRN::$NA_SIGILOSO) { @@ -2594,6 +2631,7 @@ public function validarPreCondicoesExpedirProcedimento(InfraException $objInfraE $this->validarDadosDocumentos($objInfraException, $objProcedimentoDTO->getArrObjDocumentoDTO(), $strAtributoValidacao); $this->validarDocumentacaoExistende($objInfraException, $objProcedimentoDTO, $strAtributoValidacao); $this->validarProcessoAbertoUnidade($objInfraException, $objProcedimentoDTO, $strAtributoValidacao); + $this->validarProcessoIncluidoEmBlocoEmAndamento($objInfraException, $objProcedimentoDTO, $strAtributoValidacao); $this->validarNivelAcessoProcesso($objInfraException, $objProcedimentoDTO, $strAtributoValidacao); $this->validarHipoteseLegalEnvio($objInfraException, $objProcedimentoDTO, $strAtributoValidacao); $this->validarAssinaturas($objInfraException, $objProcedimentoDTO, $strAtributoValidacao); From f791637496453077dfb4a2c717f8ca100ee455c3 Mon Sep 17 00:00:00 2001 From: Mauro Costa <83025710+Mauro1706@users.noreply.github.com> Date: Thu, 26 Sep 2024 09:48:27 -0300 Subject: [PATCH 12/12] 356 corrigir erro ao tentar incluir processos em bloco (#640) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * feat: validação de tamite com processo incluido e bloco, validação para visualização detalhada * fix: validação de envio individual de tramite incluido em bloco validando em envio por bloco --------- Co-authored-by: Mauro Costa --- src/pen_procedimento_expedir_validar.php | 2 ++ src/rn/ExpedirProcedimentoRN.php | 3 +-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/pen_procedimento_expedir_validar.php b/src/pen_procedimento_expedir_validar.php index f474e01ed..45fcf98cf 100755 --- a/src/pen_procedimento_expedir_validar.php +++ b/src/pen_procedimento_expedir_validar.php @@ -43,6 +43,7 @@ $objProcedimentoDTO->setArrObjDocumentoDTO($objExpedirProcedimentosRN->listarDocumentos($dblIdProcedimento)); $objProcedimentoDTO->setArrObjParticipanteDTO($objExpedirProcedimentosRN->listarInteressados($dblIdProcedimento)); $objExpedirProcedimentosRN->validarPreCondicoesExpedirProcedimento($objInfraException, $objProcedimentoDTO, $strProtocoloFormatado); + $objExpedirProcedimentosRN->validarProcessoIncluidoBlocoEmAndamento($objInfraException, $objProcedimentoDTO, $strProtocoloFormatado); // Processos apensados if(array_key_exists('selProcedimentosApensados', $_POST) && is_array($_POST['selProcedimentosApensados'])){ @@ -52,6 +53,7 @@ $objProcedimentoDTO->setArrObjDocumentoDTO($objExpedirProcedimentosRN->listarDocumentos($dblIdProcedimento)); $objProcedimentoDTO->setArrObjParticipanteDTO($objExpedirProcedimentosRN->listarInteressados($dblIdProcedimento)); $objExpedirProcedimentosRN->validarPreCondicoesExpedirProcedimento($objInfraException, $objProcedimentoDTO, $strProtocoloFormatado); + $objExpedirProcedimentosRN->validarProcessoIncluidoBlocoEmAndamento($objInfraException, $objProcedimentoDTO, $strProtocoloFormatado); } } } diff --git a/src/rn/ExpedirProcedimentoRN.php b/src/rn/ExpedirProcedimentoRN.php index ac1a71ae2..747cd8505 100755 --- a/src/rn/ExpedirProcedimentoRN.php +++ b/src/rn/ExpedirProcedimentoRN.php @@ -2466,7 +2466,7 @@ private function validarProcessoAbertoUnidade(InfraException $objInfraException, } } - private function validarProcessoIncluidoEmBlocoEmAndamento(InfraException $objInfraException, ProcedimentoDTO $objProcedimentoDTO, $strAtributoValidacao) + public function validarProcessoIncluidoBlocoEmAndamento(InfraException $objInfraException, ProcedimentoDTO $objProcedimentoDTO, $strAtributoValidacao) { $concluido = array( ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA, @@ -2631,7 +2631,6 @@ public function validarPreCondicoesExpedirProcedimento(InfraException $objInfraE $this->validarDadosDocumentos($objInfraException, $objProcedimentoDTO->getArrObjDocumentoDTO(), $strAtributoValidacao); $this->validarDocumentacaoExistende($objInfraException, $objProcedimentoDTO, $strAtributoValidacao); $this->validarProcessoAbertoUnidade($objInfraException, $objProcedimentoDTO, $strAtributoValidacao); - $this->validarProcessoIncluidoEmBlocoEmAndamento($objInfraException, $objProcedimentoDTO, $strAtributoValidacao); $this->validarNivelAcessoProcesso($objInfraException, $objProcedimentoDTO, $strAtributoValidacao); $this->validarHipoteseLegalEnvio($objInfraException, $objProcedimentoDTO, $strAtributoValidacao); $this->validarAssinaturas($objInfraException, $objProcedimentoDTO, $strAtributoValidacao);