diff --git a/src/PENIntegracao.php b/src/PENIntegracao.php
index b0a4a5e2..7ee8c052 100755
--- a/src/PENIntegracao.php
+++ b/src/PENIntegracao.php
@@ -164,7 +164,8 @@ public function montarBotaoProcesso(ProcedimentoAPI $objSeiIntegracaoDTO)
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE,
- ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE,
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO
);
foreach ($arrObjPenBlocoProcessoDTO as $objBlocoProcessoDTO) {
if (!in_array($objBlocoProcessoDTO->getNumIdAndamento(), $concluido)) {
diff --git a/src/pen_procedimento_cancelar_expedir.php b/src/pen_procedimento_cancelar_expedir.php
index e9967631..352046c4 100755
--- a/src/pen_procedimento_cancelar_expedir.php
+++ b/src/pen_procedimento_cancelar_expedir.php
@@ -37,7 +37,8 @@
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE,
- ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE,
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO
),
InfraDTO::$OPER_NOT_IN
);
diff --git a/src/pen_tramita_em_bloco_protocolo_listar.php b/src/pen_tramita_em_bloco_protocolo_listar.php
index f41dff7d..1677a840 100755
--- a/src/pen_tramita_em_bloco_protocolo_listar.php
+++ b/src/pen_tramita_em_bloco_protocolo_listar.php
@@ -195,6 +195,9 @@
case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE:
$strResultado .= '
';
break;
+ case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO:
+ $strResultado .= '
';
+ break;
case ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA:
$strResultado .= '
';
break;
diff --git a/src/pen_tramite_processo_em_bloco_cadastrar.php b/src/pen_tramite_processo_em_bloco_cadastrar.php
index a9b11677..954fd2ad 100755
--- a/src/pen_tramite_processo_em_bloco_cadastrar.php
+++ b/src/pen_tramite_processo_em_bloco_cadastrar.php
@@ -59,7 +59,8 @@
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE,
- ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE,
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO
);
if ($objPenBlocoProcessoDTO->getNumIdAndamento() === null || !in_array($objPenBlocoProcessoDTO->getNumIdAndamento(), $concluido)) {
$objPenBlocoProcessoRN->excluir(array($objPenBlocoProcessoDTO));
diff --git a/src/rn/ExpedirProcedimentoRN.php b/src/rn/ExpedirProcedimentoRN.php
index 747cd850..9dc8d327 100755
--- a/src/rn/ExpedirProcedimentoRN.php
+++ b/src/rn/ExpedirProcedimentoRN.php
@@ -2472,7 +2472,8 @@ public function validarProcessoIncluidoBlocoEmAndamento(InfraException $objInfra
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE,
- ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE,
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO
);
$objPenBlocoProcessoDTO = new PenBlocoProcessoDTO();
diff --git a/src/rn/PenBlocoProcessoRN.php b/src/rn/PenBlocoProcessoRN.php
index 3cc5131c..7f03184c 100755
--- a/src/rn/PenBlocoProcessoRN.php
+++ b/src/rn/PenBlocoProcessoRN.php
@@ -416,7 +416,8 @@ protected function validarBlocoDeTramiteControlado($idProtocolo)
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO,
- ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE,
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO
);
$arrTramitaEmBloco = $this->listar($objPenBlocoProcessoDTO);
@@ -555,7 +556,8 @@ private function validarStatusProcessoParaBloco($arrObjTramiteEmBlocoProtocoloDT
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE,
- ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE,
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO
);
$emAndamento = array(
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_INICIADO,
diff --git a/src/rn/ProcessoEletronicoRN.php b/src/rn/ProcessoEletronicoRN.php
index 813211ae..83e77c9d 100755
--- a/src/rn/ProcessoEletronicoRN.php
+++ b/src/rn/ProcessoEletronicoRN.php
@@ -38,6 +38,7 @@ class ProcessoEletronicoRN extends InfraRN
public static $STA_SITUACAO_TRAMITE_RECUSADO = 8; // Trâmite do processo recusado pelo destinatário (Situações 2, 3, 4)
public static $STA_SITUACAO_TRAMITE_CIENCIA_RECUSA = 9; // Remetente ciente da recusa do trâmite
public static $STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE = 10;
+ public static $STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO = 99;
/* TIPO DE TRÂMITE EXTERNO DE PROCESSO */
public static $STA_TIPO_TRAMITE_ENVIO = 'E'; // Trâmite de ENVIO de processo externo
diff --git a/src/rn/ReceberProcedimentoRN.php b/src/rn/ReceberProcedimentoRN.php
index 812680ef..54c9aee0 100755
--- a/src/rn/ReceberProcedimentoRN.php
+++ b/src/rn/ReceberProcedimentoRN.php
@@ -534,7 +534,8 @@ protected function receberTramitesRecusadosInternoControlado($parObjTramite)
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE,
- ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO,
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO
),
InfraDTO::$OPER_NOT_IN
);
diff --git a/src/rn/ReceberReciboTramiteRN.php b/src/rn/ReceberReciboTramiteRN.php
index b85a2714..e815b527 100755
--- a/src/rn/ReceberReciboTramiteRN.php
+++ b/src/rn/ReceberReciboTramiteRN.php
@@ -148,7 +148,8 @@ protected function receberReciboDeTramiteInternoControlado($objReciboTramite)
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE,
- ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO,
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO
),
InfraDTO::$OPER_NOT_IN
);
diff --git a/src/rn/TramitaEmBlocoProtocoloRN.php b/src/rn/TramitaEmBlocoProtocoloRN.php
index 51ed65f7..429f747e 100644
--- a/src/rn/TramitaEmBlocoProtocoloRN.php
+++ b/src/rn/TramitaEmBlocoProtocoloRN.php
@@ -423,7 +423,8 @@ private function validarStatusProcessoParaBloco($arrObjTramiteEmBlocoProtocoloDT
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE,
- ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE,
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO
);
$emAndamento = array(
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_INICIADO,
diff --git a/src/scripts/sei_atualizar_versao_modulo_pen.php b/src/scripts/sei_atualizar_versao_modulo_pen.php
index dd02683e..8823400a 100755
--- a/src/scripts/sei_atualizar_versao_modulo_pen.php
+++ b/src/scripts/sei_atualizar_versao_modulo_pen.php
@@ -2869,7 +2869,8 @@ protected function instalarV3070()
inner join md_pen_bloco_protocolo mpbp on mpbp.id_tramita_em_bloco = mpb.id
inner join protocolo p on p.id_protocolo = mpbp.id_protocolo
left join md_pen_expedir_lote mpel on mpel.id_lote = mpb.id
- LEFT join md_pen_rel_expedir_lote mprel on mprel.id_procedimento = mpbp.id_protocolo";
+ LEFT join md_pen_rel_expedir_lote mprel on mprel.id_procedimento = mpbp.id_protocolo
+ and mprel.id_lote = mpel.id_lote";
$blocosTramite = $objInfraBanco->consultarSql($sql);
@@ -2952,7 +2953,7 @@ protected function instalarV3070()
$objTramiteEmBlocoRN = new TramiteEmBlocoRN();
$arrObjTramiteEmBlocoDTO = $objTramiteEmBlocoRN->listar($objTramiteEmBlocoDTO);
- $this->validarBlocos($arrObjTramiteEmBlocoDTO);
+ $this->validarBlocos($arrObjTramiteEmBlocoDTO);
$this->atualizaOrdemTramiteEmBlocoPorUnidade();
@@ -3119,7 +3120,8 @@ public function validarSituacaoParaBloco($arrObjTramiteEmBlocoProtocoloDTO, $sit
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO,
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO_AUTOMATICAMENTE,
- ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE,
+ ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO
);
$emAndamento = array(
ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_INICIADO,
@@ -3254,7 +3256,8 @@ private function atualizarBlocosLegado($blocosTramite)
$objPenBlocoProcessoRN = new PenBlocoProcessoRN();
$arrIdProtocolo = array();
foreach($blocosTramite as $blocoTramite) {
- if (in_array($blocoTramite['id_protocolo'], $arrIdProtocolo)) {
+ $chave = $blocoTramite['id_protocolo'] . '-' . $blocoTramite['id_bloco'];
+ if (in_array($chave, $arrIdProtocolo)) {
continue;
}
@@ -3303,22 +3306,11 @@ private function atualizarBlocosLegado($blocosTramite)
$objPenBlocoProcessoDTO->setDthRegistro($dthRegistro);
$objPenBlocoProcessoDTO = $objPenBlocoProcessoRN->cadastrar($objPenBlocoProcessoDTO);
- $arrIdProtocolo[] = $blocoTramite['id_protocolo'];
+ $arrIdProtocolo[] = $blocoTramite['id_protocolo'] . '-' . $blocoTramite['id_bloco'];
}
}
}
- private function verificarIdAndamentoConcluido($arrPenBlocoProcessoDTO)
- {
- $arrIdAndamentoProcesso = InfraArray::converterArrInfraDTO($arrPenBlocoProcessoDTO, 'IdAndamento', 'IdAndamento');
-
- $bolVeriicarStatusDiferenteDeSucesso = array_filter($arrIdAndamentoProcesso, function($valor) {
- return $valor != ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE;
- });
-
- return !empty($bolVeriicarStatusDiferenteDeSucesso);
- }
-
/**
* Retorna o id do andamento do protocolo informado
*
@@ -3336,7 +3328,7 @@ private function buscarIdAndamento($idProtocolo, $staBloco)
$objPenProtocoloDTO = $objProtocoloBD->consultar($objPenProtocoloDTO);
if (!empty($objPenProtocoloDTO) && $objPenProtocoloDTO->getStrSinObteveRecusa() == 'S') {
- return ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CIENCIA_RECUSA;
+ return ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO;
}
$objAtividadeDTO = new AtividadeDTO();
@@ -3369,20 +3361,17 @@ private function buscarIdAndamento($idProtocolo, $staBloco)
$processoTramiteProcessamento = ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO);
$processoTramiteAberto = ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_NAO_INICIADO);
+ if ($numIdAndamento == $processoConcluidoRecebido && $staBloco == TramiteEmBlocoRN::$TE_ABERTO) {
+ return null;
+ }
+
switch ($numIdAndamento) {
- case $processoConcluidoAvulso:
- case $processoTramiteExpedido:
- return ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE;
case $processoTramiteProcessamento:
- return ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_INICIADO;
+ case $processoConcluidoAvulso:
+ case $processoTramiteExpedido:
case $processoTramiteCancelado:
- return ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CANCELADO;
case $processoConcluidoRecebido:
- if ($staBloco == TramiteEmBlocoRN::$TE_ABERTO) {
- return null;
- } else {
- return ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_RECIBO_RECEBIDO_REMETENTE;
- }
+ return ProcessoEletronicoRN::$STA_SITUACAO_TRAMITE_CONCLUIDO_LEGADO;
case $processoTramiteAberto:
default:
return null;