From 05d5408d0b9868ff74ff3c25bfd30d8cdf7505aa Mon Sep 17 00:00:00 2001 From: Guilherme Andrade Del Cantoni Date: Tue, 8 May 2018 16:07:58 -0300 Subject: [PATCH] Ajuste em paginação de dados do SQL Server --- README.md | 13 ++++++++++--- int/ProcessoEletronicoINT.php | 32 ++++++++++++++++---------------- rn/ProcessoEletronicoRN.php | 2 +- rn/ProcessoExpedidoRN.php | 9 +++------ rn/ReceberProcedimentoRN.php | 2 +- 5 files changed, 31 insertions(+), 27 deletions(-) diff --git a/README.md b/README.md index f3e581c..a932e56 100644 --- a/README.md +++ b/README.md @@ -31,7 +31,14 @@ Procedimentos de instalação do módulo nos servidores de aplicação e atualiz - **SEI versão 3.0.5 ou superior instalada, exceto a versão 3.0.10.** - Usuário de acesso ao banco de dados do SEI e SIP com permissões para criar novas estruturas no banco de dados. -Para iniciar os procedimentos de configuração do módulo, será necessário registrar no **ConectaGov** as unidades administrativas que poderão realizar o envio e recebimento de processos/documentos externo no SEI. Este procedimento precisa ser realizado pelo **Gestor de Protocolo** previamente habilitado no portal do **ConectaGov**. Os testes devem ser feitos primeiro em um ambiente de homologação. Para solicitação de acesso ao ambiente de homologação, acesse [http://homolog.pen.portal.trafficmanager.net/solicitarCadastroComite](http://homolog.pen.portal.trafficmanager.net/solicitarCadastroComite "Portal de Administração ConectaGov PEN - Cadastro de Comitê"). Para maiores informações, entre em contato pelo e-mail processo.eletronico@planejamento.gov.br +Para iniciar os procedimentos de configuração do módulo, será necessário registrar no **ConectaGov** as unidades administrativas que poderão realizar o envio e recebimento de processos/documentos externo no SEI. Este procedimento precisa ser realizado pelo **Gestor de Protocolo** previamente habilitado no portal do **ConectaGov**. Os testes devem ser feitos primeiro em um ambiente de desenvolvimento/homologação. +Para solicitação de acesso aos ambientes, acesse os seguintes endereços: + + - Desenvolvimento [http://pen-portal.trafficmanager.net/solicitarCadastroComite](http://pen-portal.trafficmanager.net/solicitarCadastroComite "DESENVOLVIMENTO: Portal de Administração ConectaGov PEN - Cadastro de Comitê") + - Homologação [http://homolog.pen.portal.trafficmanager.net/solicitarCadastroComite](http://homolog.pen.portal.trafficmanager.net/solicitarCadastroComite "HOMOLOGAÇÃO: Portal de Administração ConectaGov PEN - Cadastro de Comitê") + - Produção [http://conectagov.processoeletronico.gov.br/solicitarCadastroComite](http://conectagov.processoeletronico.gov.br/solicitarCadastroComite "PRODUÇÃO: Portal de Administração ConectaGov PEN - Cadastro de Comitê") + + Para maiores informações, entre em contato pelo e-mail processo.eletronico@planejamento.gov.br ### Procedimentos @@ -126,7 +133,7 @@ Estes dois componentes são utilizados para gerenciar a fila de recebimento de n Para o ambiente de produção, deverá ser utilizado um certificado digital válido gerado por uma Autoridade de Registro - AR confiável (Exemplo: ICP-Brasil, Certisign, Verisign, etc.). - Maiores informações e solicitações podem ser feitas através do e-mail processo.eletrônico@planejamento.gov.br. + Maiores informações e solicitações podem ser feitas através do e-mail processo.eletronico@planejamento.gov.br. 8. Mover o arquivo de instalação do módulo no SEI **sei\_atualizar\_versao\_modulo_pen.php** para a pasta **sei/scripts**. Lembre-se de mover, e não copiar, por questões de segurança e padronização. @@ -215,7 +222,7 @@ Estes dois componentes são utilizados para gerenciar a fila de recebimento de n Caso a opção for pela criação de um novo tipo de processo específico, segue abaixo sugestão para configuração: - Nome: Demanda Externa: Outros Órgãos Públicos + Nome: Processo Recebido Externamente (a classificar) Descrição: Processos recebidos de outras instituições // O assunto deve ser definido juntamente com a área de documentação Sugestão de Assuntos: 019.01 - INFORMAÇÕES SOBRE O ÓRGÃO diff --git a/int/ProcessoEletronicoINT.php b/int/ProcessoEletronicoINT.php index 0632ae1..ebcdfb3 100644 --- a/int/ProcessoEletronicoINT.php +++ b/int/ProcessoEletronicoINT.php @@ -14,50 +14,50 @@ class ProcessoEletronicoINT extends InfraINT { const TEE_EXPEDICAO_ETAPA_VALIDACAO = 'Validando informações do processo...'; const TEE_EXPEDICAO_ETAPA_PROCEDIMENTO = 'Enviando dados do processo %s'; const TEE_EXPEDICAO_ETAPA_DOCUMENTO = 'Enviando documento %s'; - const TEE_EXPEDICAO_ETAPA_CONCLUSAO = 'Trâmite externo do processo finalizada com sucesso!'; + const TEE_EXPEDICAO_ETAPA_CONCLUSAO = 'Trâmite externo do processo finalizado com sucesso!'; /** * Concate as siglas das hierarquias no nome da unidade - * + * * @param array(EstruturaDTO) $estruturas * @return array */ private static function gerarHierarquiaEstruturas($estruturas = array()){ - - if(empty($estruturas)) { + + if(empty($estruturas)) { return $estruturas; } - - foreach($estruturas as &$estrutura) { - + + foreach($estruturas as &$estrutura) { + if($estrutura->isSetArrHierarquia()) { - $siglas = $estrutura->getArrHierarquia(); + $siglas = $estrutura->getArrHierarquia(); $nome = $estrutura->getStrNome(); $nome .= ' - '; - - $array = array($estrutura->getStrSigla()); + + $array = array($estrutura->getStrSigla()); foreach($estrutura->getArrHierarquia() as $sigla) { if(trim($sigla) !== '' && !in_array($sigla, array('PR', 'PE', 'UNIAO'))) { $array[] = $sigla; } } - $nome .= implode(' / ', $array); + $nome .= implode(' / ', $array); $estrutura->setStrNome($nome); } } - + return $estruturas; } - + public static function autoCompletarEstruturas($idRepositorioEstrutura, $strPalavrasPesquisa) { $objConecaoWebServerRN = new ProcessoEletronicoRN(); - return static::gerarHierarquiaEstruturas($objConecaoWebServerRN->listarEstruturas($idRepositorioEstrutura, $strPalavrasPesquisa)); + return static::gerarHierarquiaEstruturas($objConecaoWebServerRN->listarEstruturas($idRepositorioEstrutura, $strPalavrasPesquisa)); } - public static function autoCompletarProcessosApensados($dblIdProcedimentoAtual, $numIdUnidadeAtual, $strPalavrasPesquisa) { + public static function autoCompletarProcessosApensados($dblIdProcedimentoAtual, $numIdUnidadeAtual, $strPalavrasPesquisa) { $objExpedirProcedimentoRN = new ExpedirProcedimentoRN(); return $objExpedirProcedimentoRN->listarProcessosApensados($dblIdProcedimentoAtual, $numIdUnidadeAtual, $strPalavrasPesquisa); } -} \ No newline at end of file +} diff --git a/rn/ProcessoEletronicoRN.php b/rn/ProcessoEletronicoRN.php index bee6e74..93e5d77 100644 --- a/rn/ProcessoEletronicoRN.php +++ b/rn/ProcessoEletronicoRN.php @@ -312,7 +312,7 @@ class ProcessoEletronicoRN extends InfraRN { $parametros = new stdClass(); $parametros->filtroDeEstruturas = new stdClass(); $parametros->filtroDeEstruturas->identificacaoDoRepositorioDeEstruturas = $idRepositorioEstrutura; - $parametros->filtroDeEstruturas->apenasAtivas = false; + $parametros->filtroDeEstruturas->apenasAtivas = true; $nome = trim($nome); if(is_numeric($nome)) { diff --git a/rn/ProcessoExpedidoRN.php b/rn/ProcessoExpedidoRN.php index 53e9c2c..c601975 100644 --- a/rn/ProcessoExpedidoRN.php +++ b/rn/ProcessoExpedidoRN.php @@ -17,10 +17,9 @@ class ProcessoExpedidoRN extends InfraRN { $bolSqlServer = $this->getObjInfraIBanco() instanceof InfraSqlServer; $numLimit = $objProtocoloDTO->getNumMaxRegistrosRetorno(); $numOffset = $objProtocoloDTO->getNumPaginaAtual() * $objProtocoloDTO->getNumMaxRegistrosRetorno(); + $strInstrucaoPaginacao = (!$bolSqlServer) ? "LIMIT ".$numOffset.",".$numLimit : "OFFSET $numOffset ROWS FETCH NEXT $numLimit ROWS ONLY"; - $sql = "SELECT " . - (($bolSqlServer) ? "TOP $numLimit " : "") . - " + $sql = "SELECT p.id_protocolo, p.protocolo_formatado, a.id_unidade id_unidade, @@ -47,9 +46,7 @@ class ProcessoExpedidoRN extends InfraRN { AND at2.id_tarefa = ". ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_RECEBIDO) ." AND at2.dth_abertura > a.dth_abertura ) GROUP BY - 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 ". - (($bolSqlServer) ? "OFFSET $numOffset ROWS" : "LIMIT ".$numOffset.",".$numLimit." "); - + 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 ".$strInstrucaoPaginacao; $sqlCount = "SELECT count(*) total diff --git a/rn/ReceberProcedimentoRN.php b/rn/ReceberProcedimentoRN.php index 09d19aa..4e16669 100644 --- a/rn/ReceberProcedimentoRN.php +++ b/rn/ReceberProcedimentoRN.php @@ -1387,7 +1387,7 @@ class ReceberProcedimentoRN extends InfraRN $objUnidadeDTO = $objUnidadeRN->consultarRN0125($objUnidadeDTO); if(!isset($objUnidadeDTO)){ - $objInfraException->adicionarValidacao("Unidade de destino [Estrutura: {$numeroDeIdentificacaoDaEstrutura}] não configurada para receber trâmites externos."); + $objInfraException->adicionarValidacao("Unidade [Estrutura: {$numeroDeIdentificacaoDaEstrutura}] não configurada para receber processos externos no sistema de destino."); } } -- libgit2 0.21.2