diff --git a/src/PENIntegracao.php b/src/PENIntegracao.php
index 1b71c3043..32073e9f3 100755
--- a/src/PENIntegracao.php
+++ b/src/PENIntegracao.php
@@ -1,7 +1,7 @@
';
}
+ $strAcoesProcedimento .= 'TESTE AQUII';
+
return array($strAcoesProcedimento);
}
@@ -375,6 +377,11 @@ public function processarControlador($strAcao)
require_once dirname(__FILE__) . '/pen_procedimento_expedido_listar.php';
break;
+ case 'pen_tramite_bloco_listar':
+ require_once dirname(__FILE__) . '/pen_tramite_bloco_listar.php';
+ break;
+
+
case 'pen_map_tipo_documento_envio_listar';
case 'pen_map_tipo_documento_envio_excluir';
case 'pen_map_tipo_documento_envio_desativar';
@@ -474,9 +481,15 @@ public function processarControlador($strAcao)
require_once dirname(__FILE__) . '/pen_expedir_lote.php';
break;
+
case 'pen_expedir_lote_listar':
- require_once dirname(__FILE__) . '/pen_expedir_lote_listar.php';
- break;
+ require_once dirname(__FILE__) . '/pen_expedir_lote_listar.php';
+ break;
+
+ // novo
+ case 'md_pen_tramita_em_bloco':
+ require_once dirname(__FILE__) . '/pen_tramite_bloco_listar.php';
+ break;
default:
return false;
diff --git a/src/bd/TramiteEmBlocoBD.php b/src/bd/TramiteEmBlocoBD.php
new file mode 100644
index 000000000..fa4295b1d
--- /dev/null
+++ b/src/bd/TramiteEmBlocoBD.php
@@ -0,0 +1,14 @@
+adicionarAtributoTabela(InfraDTO::$PREFIXO_NUM,
+ 'Id',
+ 'id');
+
+ $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_NUM,
+ 'IdUnidade',
+ 'id_unidade');
+
+ $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_NUM,
+ 'IdUsuario',
+ 'id_usuario');
+
+ $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_STR,
+ 'Descricao',
+ 'descricao');
+
+ $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_STR,
+ 'IdxBloco',
+ 'idx_bloco');
+
+ $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_STR,
+ 'StaTipo',
+ 'sta_tipo');
+
+ $this->adicionarAtributoTabela(InfraDTO::$PREFIXO_STR,
+ 'StaEstado',
+ 'sta_estado');
+
+ $this->adicionarAtributoTabelaRelacionada(InfraDTO::$PREFIXO_STR,
+ 'SiglaUnidade',
+ 'uc.sigla',
+ 'unidade uc');
+
+ $this->adicionarAtributoTabelaRelacionada(InfraDTO::$PREFIXO_STR,
+ 'DescricaoUnidade',
+ 'uc.descricao',
+ 'unidade uc');
+
+ // $this->adicionarAtributoTabelaRelacionada(InfraDTO::$PREFIXO_NUM,
+ // 'IdGrupoBlocoRelBlocoUnidade',
+ // 'id_grupo_bloco',
+ // 'rel_bloco_unidade');
+
+ // $this->adicionarAtributoTabelaRelacionada(InfraDTO::$PREFIXO_NUM,
+ // 'IdUnidadeRelBlocoUnidade',
+ // 'id_unidade',
+ // 'rel_bloco_unidade');
+
+ // $this->adicionarAtributoTabelaRelacionada(InfraDTO::$PREFIXO_STR,
+ // 'SinPrioridadeRelBlocoUnidade',
+ // 'sin_prioridade',
+ // 'rel_bloco_unidade');
+
+ // $this->adicionarAtributoTabelaRelacionada(InfraDTO::$PREFIXO_STR,
+ // 'SinRevisaoRelBlocoUnidade',
+ // 'sin_revisao',
+ // 'rel_bloco_unidade');
+
+ // $this->adicionarAtributoTabelaRelacionada(InfraDTO::$PREFIXO_STR,
+ // 'SinComentarioRelBlocoUnidade',
+ // 'sin_comentario',
+ // 'rel_bloco_unidade');
+
+ // $this->adicionarAtributoTabelaRelacionada(InfraDTO::$PREFIXO_NUM,
+ // 'IdUsuarioAtribuicaoRelBlocoUnidade',
+ // 'id_usuario_atribuicao',
+ // 'rel_bloco_unidade');
+
+ // $this->adicionarAtributoTabelaRelacionada(InfraDTO::$PREFIXO_STR,
+ // 'SinRetornadoRelBlocoUnidade',
+ // 'sin_retornado',
+ // 'rel_bloco_unidade');
+
+ $this->adicionarAtributoTabelaRelacionada(InfraDTO::$PREFIXO_STR,
+ 'SiglaUnidadeRelBlocoUnidade',
+ 'ud.sigla',
+ 'unidade ud');
+
+ $this->adicionarAtributoTabelaRelacionada(InfraDTO::$PREFIXO_STR,
+ 'DescricaoUnidadeRelBlocoUnidade',
+ 'ud.descricao',
+ 'unidade ud');
+
+ $this->adicionarAtributoTabelaRelacionada(InfraDTO::$PREFIXO_STR,
+ 'SiglaUsuario',
+ 'sigla',
+ 'usuario');
+
+ $this->adicionarAtributoTabelaRelacionada(InfraDTO::$PREFIXO_STR,
+ 'NomeUsuario',
+ 'nome',
+ 'usuario');
+
+ $this->adicionarAtributo(InfraDTO::$PREFIXO_STR,'TipoDescricao');
+ // $this->adicionarAtributo(InfraDTO::$PREFIXO_STR,'StaEstadoDescricao');
+ // //$this->adicionarAtributo(InfraDTO::$PREFIXO_STR,'SinVazio');
+ // $this->adicionarAtributo(InfraDTO::$PREFIXO_STR,'PalavrasPesquisa');
+ // $this->adicionarAtributo(InfraDTO::$PREFIXO_NUM,'Documentos');
+ // $this->adicionarAtributo(InfraDTO::$PREFIXO_NUM,'Assinados');
+
+ // $this->adicionarAtributo(InfraDTO::$PREFIXO_OBJ,'RelBlocoUnidadeDTO');
+ // $this->adicionarAtributo(InfraDTO::$PREFIXO_ARR,'ObjRelBlocoUnidadeDTO');
+ // $this->adicionarAtributo(InfraDTO::$PREFIXO_ARR,'ObjRelBlocoProtocoloDTO');
+ // $this->adicionarAtributo(InfraDTO::$PREFIXO_STR,'StaTipoAtribuicao');
+
+ $this->configurarPK('Id', InfraDTO::$TIPO_PK_NATIVA );
+
+ // $this->configurarFK('Id', 'rel_bloco_unidade', 'id');
+ $this->configurarFK('IdUsuario', 'usuario', 'id_usuario');
+ $this->configurarFK('IdUnidade', 'unidade uc', 'uc.id_unidade');
+ // $this->configurarFK('IdUnidadeRelBlocoUnidade', 'unidade ud', 'ud.id_unidade');
+ }
+}
+?>
\ No newline at end of file
diff --git a/src/pen_tramite_bloco_listar.php b/src/pen_tramite_bloco_listar.php
new file mode 100644
index 000000000..ea622f785
--- /dev/null
+++ b/src/pen_tramite_bloco_listar.php
@@ -0,0 +1,425 @@
+validarLink();
+ $objSessaoSEI->validarPermissao($_GET['acao']);
+ $arrComandos = array();
+
+ $strTitulo = 'Tramite em Bloco';
+
+ $objFiltroDTO = new ProtocoloDTO();
+ $objFiltroDTO->setStrStaEstado(ProtocoloRN::$TE_PROCEDIMENTO_BLOQUEADO);
+ $objFiltroDTO->retDblIdProtocolo();
+ $objFiltroDTO->retStrProtocoloFormatado();
+
+ // Verificar no DTO sobre funções de agragação para clausula DISTINCT
+ if(get_parent_class(BancoSEI::getInstance()) != 'InfraMySqli') {
+ $objFiltroDTO->retDthConclusaoAtividade();
+ }
+ $objPaginaSEI->prepararPaginacao($objFiltroDTO, 50);
+
+ $objProcessoExpedidoRN = new ProcessoExpedidoRN();
+ $arrObjProcessoExpedidoDTO = $objProcessoExpedidoRN->listarProcessoExpedido($objFiltroDTO);
+
+ $numRegistros = 0;
+
+ if(!empty($arrObjProcessoExpedidoDTO)) {
+ $arrObjProcessoExpedidoDTO = InfraArray::distinctArrInfraDTO($arrObjProcessoExpedidoDTO, 'IdProtocolo');
+ $numRegistros = count($arrObjProcessoExpedidoDTO);
+ }
+
+ $objPaginaSEI->processarPaginacao($objFiltroDTO);
+
+ if (!empty($arrObjProcessoExpedidoDTO)) {
+
+ $arrComandos[] = '';
+
+ $strSumarioTabela = 'Tabela de Processos.';
+ $strCaptionTabela = 'Processos';
+
+ $strResultado .= '
' . "\n";
+ $strResultado .= '' . $objPaginaSEI->gerarCaptionTabela($strCaptionTabela, $numRegistros) . '';
+ $strResultado .= '';
+ $strResultado .= '' . $objPaginaSEI->getThCheck() . ' | ' . "\n";
+ $strResultado .= 'Processo | ' . "\n";
+ $strResultado .= 'Usuário | ' . "\n";
+ $strResultado .= 'Data do Envio | ' . "\n";
+ $strResultado .= 'Unidade Destino | ' . "\n";
+ $strResultado .= '
' . "\n";
+ $strCssTr = '';
+
+ $numIndice = 1;
+
+ foreach($arrObjProcessoExpedidoDTO as $objProcessoExpedidoDTO) {
+
+ $strCssTr = ($strCssTr == '') ? '
' : '
';
+ $strResultado .= $strCssTr;
+
+ $strResultado .= ''.$objPaginaSEI->getTrCheck($numIndice, $objProcessoExpedidoDTO->getDblIdProtocolo(), $objProcessoExpedidoDTO->getStrProtocoloFormatado()).' | '."\n";
+ $strResultado .= ''.$objProcessoExpedidoDTO->getStrProtocoloFormatado().' | ' . "\n";
+ $strResultado .= '' . $objProcessoExpedidoDTO->getStrNomeUsuario() . ' | ';
+ $strResultado .= '' . $objProcessoExpedidoDTO->getDthExpedido() . ' | ';
+ $strResultado .= '' . $objProcessoExpedidoDTO->getStrDestino();
+
+ if ($bolAcaoRemoverSobrestamento) {
+ $strResultado .= ' ';
+ }
+
+ $strResultado .= ' |
' . "\n";
+ $numIndice++;
+ }
+ $strResultado .= '
';
+ }
+
+ $arrComandos[] = '';
+ $arrComandos[] = '';
+ $arrComandos[] = '';
+ $arrComandos[] = '';
+ // Array de dados
+ $dados = array(
+ array("Número" => 1, "Sinalizações" => "Sinalização 1", "Estados" => "Estado 1", "Descrições" => "Descrição 1", "Ações" => ""),
+ array("Número" => 2, "Sinalizações" => "Sinalização 2", "Estados" => "Estado 2", "Descrições" => "Descrição 2", "Ações" => ""),
+ array("Número" => 3, "Sinalizações" => "Sinalização 3", "Estados" => "Estado 3", "Descrições" => "Descrição 3", "Ações" => "")
+ );
+
+ // Cabeçalho da tabela
+ $colunas = array("Número", "Sinalizações", "Estados", "Descrições", "Ações");
+
+ // Início da tabela
+ $strSumarioTabela = 'Tabela de Blocos Tramitados.';
+ $strCaptionTabela = 'Blocos';
+
+
+ $strResultado = "" . "\n";
+ $strResultado .= ''.PaginaSEI::getInstance()->gerarCaptionTabela($strCaptionTabela, $numRegistros).'';
+ $strResultado .= "";
+ $strResultado .= ''.PaginaSEI::getInstance()->getThCheck().' | '."\n";
+
+ foreach ($colunas as $coluna) {
+ $strResultado .= "{$coluna} | ";
+ }
+ $strResultado .= "
";
+
+ // Linhas da tabela
+ foreach ($dados as $linha) {
+ $strResultado .= "";
+ $strResultado .= ''.PaginaSEI::getInstance()->getTrCheck($key,$key,$key).' | ';
+ // $strResultado .= ''.PaginaSEI::getInstance()->getTrCheck($i,$objBlocoDTO->getNumIdBloco(),$objBlocoDTO->getNumIdBloco()).' | ';
+ foreach ($colunas as $key => $coluna) {
+ $strResultado .= " {$linha[$coluna]}";
+
+ // Adiciona botões na coluna de ações
+ if ($key === count($linha) - 1) {
+
+ $id = $key; // $id = $objBlocoDTO->getNumIdBloco();
+
+ // visualizar
+ $strResultado .= ' ';
+
+ // atribuir
+ $strResultado .= ' ';
+
+ // alterar
+ $strResultado .= ' ';
+
+ // concluir
+ $strResultado .= ' ';
+
+ // Excluir
+ $strResultado .= ' ';
+ }
+
+ $strResultado .= " | ";
+ }
+
+ $strResultado .= "
";
+ }
+
+ // Fim da tabela
+ $strResultado .= "
";
+
+}
+catch (Exception $e) {
+ $objPaginaSEI->processarExcecao($e);
+}
+
+$objPaginaSEI->montarDocType();
+$objPaginaSEI->abrirHtml();
+$objPaginaSEI->abrirHead();
+$objPaginaSEI->montarMeta();
+$objPaginaSEI->montarTitle(':: ' . $objPaginaSEI->getStrNomeSistema() . ' - ' . $strTitulo . ' ::');
+$objPaginaSEI->montarStyle();
+?>
+
+montarJavaScript(); ?>
+
+
+
+
+fecharHead();
+$objPaginaSEI->abrirBody($strTitulo, 'onload="inicializar();"');
+?>
+
+fecharBody();
+$objPaginaSEI->fecharHtml();
+
+
+endif;
+?>
+
+
+
+fecharHead();
+$objPaginaSEI->abrirBody( $strTitulo, 'onload="inicializar();"');
+?>
+
+
+$objPaginaSEI->fecharBody();
+$objPaginaSEI->fecharHtml();
+?>
+
+
+
+
diff --git a/src/pen_tramite_em_bloco_cadastro.php b/src/pen_tramite_em_bloco_cadastro.php
new file mode 100755
index 000000000..c5abccb0f
--- /dev/null
+++ b/src/pen_tramite_em_bloco_cadastro.php
@@ -0,0 +1,197 @@
+
+/**
+*
+*
+*/
+try {
+ require_once DIR_SEI_WEB.'/SEI.php';
+
+ session_start();
+
+ //////////////////////////////////////////////////////////////////////////////
+ InfraDebug::getInstance()->setBolLigado(false);
+ InfraDebug::getInstance()->setBolDebugInfra(true);
+ InfraDebug::getInstance()->limpar();
+ //////////////////////////////////////////////////////////////////////////////
+
+ SessaoSEI::getInstance()->validarLink();
+
+ SessaoSEI::getInstance()->validarPermissao($_GET['acao']);
+
+ $strParametros = '';
+ if(isset($_GET['arvore'])) {
+ PaginaSEI::getInstance()->setBolArvore($_GET['arvore']);
+ $strParametros .= '&arvore='.$_GET['arvore'];
+ }
+
+ if (isset($_GET['id_procedimento'])) {
+ $strParametros .= "&id_procedimento=".$_GET['id_procedimento'];
+ }
+
+ if (isset($_GET['id_documento'])) {
+ $strParametros .= "&id_documento=".$_GET['id_documento'];
+ }
+
+ $objTramiteEmBlocoDTO = new TramiteEmBlocoDTO();
+
+ $strDesabilitar = '';
+
+ $arrComandos = array();
+ $bolCadastroOk = false;
+
+ switch($_GET['acao']) {
+ case 'pen_tramite_em_bloco_cadastrar':
+
+ $strTitulo = 'Novo Trâmite em Bloco';
+ $arrComandos[] = '';
+ $arrComandos[] = '';
+
+ $objTramiteEmBlocoDTO->setNumId(null);
+ $objTramiteEmBlocoDTO->setStrStaTipo(TramiteEmBlocoRN::$TB_INTERNO);
+ $objTramiteEmBlocoDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual());
+ $objTramiteEmBlocoDTO->setNumIdUsuario(SessaoSEI::getInstance()->getNumIdUsuario());
+ $objTramiteEmBlocoDTO->setStrDescricao($_POST['txtDescricao']);
+ $objTramiteEmBlocoDTO->setStrIdxBloco(null);
+ $objTramiteEmBlocoDTO->setStrStaEstado(TramiteEmBlocoRN::$TE_ABERTO);
+ if (isset($_POST['sbmCadastrarTramiteEmBloco'])) {
+ try{
+ //
+ $objTramiteEmBlocoRN = new TramiteEmBlocoRN();
+ $objTramiteEmBlocoDTO = $objTramiteEmBlocoRN->cadastrar($objTramiteEmBlocoDTO);
+ PaginaSEI::getInstance()->setStrMensagem('Trâmite em Bloco "' . $objTramiteEmBlocoDTO->getNumId() . '" cadastrado com sucesso.');
+ header('Location: ' . SessaoSEI::getInstance()->assinarLink('controlador.php?acao=' . PaginaSEI::getInstance()->getAcaoRetorno() . '&acao_origem=' . $_GET['acao'] . '&id_bloco=' . $objTramiteEmBlocoDTO->getNumId() . $strParametros . PaginaSEI::getInstance()->montarAncora($objTramiteEmBlocoDTO->getNumId())));
+ die;
+ }catch(Exception $e){
+ PaginaSEI::getInstance()->processarExcecao($e);
+ }
+ }
+ break;
+
+ case 'pen_tramite_em_bloco_alterar':
+
+ $strTitulo = 'Alterar Trâmite em Bloco';
+ $arrComandos[] = '';
+ $strDesabilitar = 'disabled="disabled"';
+
+ if (isset($_GET['id_bloco'])){
+ $objTramiteEmBlocoDTO->setNumId($_GET['id_bloco']);
+ $objTramiteEmBlocoDTO->retTodos();
+ $objTramiteEmBlocoRN = new TramiteEmBlocoRN();
+ $objTramiteEmBlocoDTO = $objTramiteEmBlocoRN->consultar($objTramiteEmBlocoDTO);
+ if ($objTramiteEmBlocoDTO==null){
+ throw new InfraException("Registro não encontrado.");
+ }
+ } else {
+ $objTramiteEmBlocoDTO->setNumId($_POST['hdnIdBloco']);
+ $objTramiteEmBlocoDTO->setStrDescricao($_POST['txtDescricao']);
+ }
+
+ $arrComandos[] = '';
+
+ if (isset($_POST['sbmAlterarBloco'])) {
+ try {
+ $objTramiteEmBlocoRN = new TramiteEmBlocoRN();
+ $objTramiteEmBlocoRN->alterar($objTramiteEmBlocoDTO);
+ PaginaSEI::getInstance()->setStrMensagem('Trâmite em Bloco "'.$objTramiteEmBlocoDTO->getNumId().'" alterado com sucesso.');
+ header('Location: '.SessaoSEI::getInstance()->assinarLink('controlador.php?acao='.PaginaSEI::getInstance()->getAcaoRetorno().'&acao_origem='.$_GET['acao'].PaginaSEI::getInstance()->montarAncora($objTramiteEmBlocoDTO->getNumId())));
+ die;
+ } catch (Exception $e) {
+ PaginaSEI::getInstance()->processarExcecao($e);
+ }
+ }
+ break;
+
+ default:
+ throw new InfraException("Ação '".$_GET['acao']."' não reconhecida.");
+ }
+
+} catch(Exception $e) {
+ PaginaSEI::getInstance()->processarExcecao($e);
+}
+
+PaginaSEI::getInstance()->montarDocType();
+PaginaSEI::getInstance()->abrirHtml();
+PaginaSEI::getInstance()->abrirHead();
+PaginaSEI::getInstance()->montarMeta();
+PaginaSEI::getInstance()->montarTitle(PaginaSEI::getInstance()->getStrNomeSistema().' - '.$strTitulo);
+PaginaSEI::getInstance()->montarStyle();
+PaginaSEI::getInstance()->abrirStyle();
+?>
+#divIdentificacao {display:none;}
+#lblIdBloco {position:absolute;left:0%;top:0%;width:25%;}
+#txtIdBloco {position:absolute;left:0%;top:40%;width:25%;}
+
+#lblDescricao {position:absolute;left:0%;top:0%;width:95%;}
+#txtDescricao {position:absolute;left:0%;top:18%;width:95%;}
+
+
+PaginaSEI::getInstance()->fecharStyle();
+PaginaSEI::getInstance()->montarJavaScript();
+PaginaSEI::getInstance()->abrirJavaScript();
+?>
+
+function inicializar(){
+
+
+ if ($_GET['arvore']=='1') { ?>
+ parent.document.getElementById('ifrVisualizacao').contentWindow.atualizarBlocos(=$objTramiteEmBlocoDTO->getNumId()?>);
+ } else { ?>
+ window.parent.atualizarBlocos(=$objTramiteEmBlocoDTO->getNumId()?>);
+ } ?>
+ self.setTimeout('infraFecharJanelaModal()',500);
+ return;
+ }?>
+
+ if ('=$_GET['acao']?>'=='pen_tramite_em_bloco_consultar') {
+ document.getElementById('divIdentificacao').style.display = 'block';
+ infraDesabilitarCamposAreaDados();
+ document.getElementById('btnFechar').focus();
+ return;
+ } else if ('=$_GET['acao']?>'=='pen_tramite_em_bloco_cadastrar') {
+ document.getElementById('divIdentificacao').style.display = 'none';
+ document.getElementById('txtDescricao').focus();
+ } else {
+ document.getElementById('divIdentificacao').style.display = 'block';
+ document.getElementById('btnCancelar').focus();
+ }
+
+ infraEfeitoTabelas();
+}
+
+function validarCadastroRI1284() {
+ return true;
+}
+
+function OnSubmitForm() {
+ return validarCadastroRI1284();
+}
+
+
+
+PaginaSEI::getInstance()->fecharJavaScript();
+PaginaSEI::getInstance()->fecharHead();
+PaginaSEI::getInstance()->abrirBody($strTitulo,'onload="inicializar();"');
+?>
+
+
+PaginaSEI::getInstance()->fecharBody();
+PaginaSEI::getInstance()->fecharHtml();
+?>
\ No newline at end of file
diff --git a/src/rn/TramiteEmBlocoRN.php b/src/rn/TramiteEmBlocoRN.php
new file mode 100755
index 000000000..8ee436f97
--- /dev/null
+++ b/src/rn/TramiteEmBlocoRN.php
@@ -0,0 +1,307 @@
+getStrStaTipo())){
+ $objInfraException->adicionarValidacao('Tipo não informado.');
+ }else{
+ if (!in_array($objTramiteEmBlocoDTO->getStrStaTipo(), InfraArray::converterArrInfraDTO($this->listarValoresTipo(),'StaTipo'))){
+ $objInfraException->adicionarValidacao('Tipo inválido.');
+ }
+ }
+ }
+
+ private function validarNumIdUsuario(TramiteEmBlocoDTO $objTramiteEmBlocoDTO, InfraException $objInfraException) {
+ if (InfraString::isBolVazia($objTramiteEmBlocoDTO->getNumIdUsuario())){
+ $objInfraException->adicionarValidacao('Usuário não informado.');
+ }
+ }
+
+ private function validarStrDescricao(TramiteEmBlocoDTO $objTramiteEmBlocoDTO, InfraException $objInfraException){
+ if (InfraString::isBolVazia($objTramiteEmBlocoDTO->getStrDescricao())) {
+
+ $objTramiteEmBlocoDTO->setStrDescricao(null);
+
+ } else {
+
+ $objTramiteEmBlocoDTO->setStrDescricao(trim($objTramiteEmBlocoDTO->getStrDescricao()));
+ $objTramiteEmBlocoDTO->setStrDescricao(InfraUtil::filtrarISO88591($objTramiteEmBlocoDTO->getStrDescricao()));
+
+ if (strlen($objTramiteEmBlocoDTO->getStrDescricao()) > $this->getNumMaxTamanhoDescricao()){
+ $objInfraException->adicionarValidacao('Descrição possui tamanho superior a ' .$this->getNumMaxTamanhoDescricao(). ' caracteres.');
+ }
+
+ }
+ }
+
+ private function validarStrIdxBloco(TramiteEmBlocoDTO $objTramiteEmBlocoDTO, InfraException $objInfraException){
+ if (InfraString::isBolVazia($objTramiteEmBlocoDTO->getStrIdxBloco())){
+
+ $objTramiteEmBlocoDTO->setStrIdxBloco(null);
+
+ }else{
+
+ $objTramiteEmBlocoDTO->setStrIdxBloco(trim($objTramiteEmBlocoDTO->getStrIdxBloco()));
+
+ if (strlen($objTramiteEmBlocoDTO->getStrIdxBloco()) > 500){
+ $objInfraException->adicionarValidacao('Indexação possui tamanho superior a 500 caracteres.');
+ }
+
+ }
+ }
+
+ private function validarStrStaEstado(TramiteEmBlocoDTO $objTramiteEmBlocoDTO, InfraException $objInfraException){
+ if (InfraString::isBolVazia($objTramiteEmBlocoDTO->getStrStaEstado())) {
+
+ $objInfraException->adicionarValidacao('Estado não informado.');
+
+ } else {
+
+ if (!in_array($objTramiteEmBlocoDTO->getStrStaEstado(), InfraArray::converterArrInfraDTO($this->listarValoresEstado(), 'StaEstado'))){
+ $objInfraException->adicionarValidacao('Estado inválido.');
+ }
+
+ }
+ }
+
+ public function listarValoresTipo(){
+ try {
+
+ $arrObjTipoDTO = array();
+
+ $objTipoDTO = new TipoDTO();
+ $objTipoDTO->setStrStaTipo(self::$TB_INTERNO);
+ $objTipoDTO->setStrDescricao('Interno');
+ $arrObjTipoDTO[] = $objTipoDTO;
+
+
+ return $arrObjTipoDTO;
+
+ }catch(Exception $e){
+ throw new InfraException('Erro listando valores de Tipo.', $e);
+ }
+ }
+
+ public function listarValoresEstado(){
+ try {
+
+ $objArrEstadoBlocoDTO = array();
+
+ $objEstadoBlocoDTO = new EstadoBlocoDTO();
+ $objEstadoBlocoDTO->setStrStaEstado(self::$TE_ABERTO);
+ $objEstadoBlocoDTO->setStrDescricao('Gerado');
+ $objArrEstadoBlocoDTO[] = $objEstadoBlocoDTO;
+
+ return $objArrEstadoBlocoDTO;
+
+ } catch(Exception $e) {
+ throw new InfraException('Erro listando valores de Estado.',$e);
+ }
+ }
+
+ protected function listarConectado(TramiteEmBlocoDTO $objTramiteEmBlocoDTO) {
+ try {
+
+ //Valida Permissao
+ SessaoSEI::getInstance()->validarAuditarPermissao('pen_tramite_em_bloco_listar',__METHOD__,$objTramiteEmBlocoDTO);
+
+
+ if ($objTramiteEmBlocoDTO->isRetStrTipoDescricao()) {
+ $objTramiteEmBlocoDTO->retStrStaTipo();
+ }
+
+ $objTramiteEmBlocoBD = new TramiteEmBlocoBD($this->getObjInfraIBanco());
+ $ret = $objTramiteEmBlocoBD->listar($objTramiteEmBlocoDTO);
+
+ if ($objTramiteEmBlocoDTO->isRetStrTipoDescricao()) {
+ $arrObjTipoDTO = $this->listarValoresTipo();
+ foreach ($ret as $dto) {
+ foreach ($arrObjTipoDTO as $objTipoDTO) {
+ if ($dto->getStrStaTipo() == $objTipoDTO->getStrStaTipo()){
+ $dto->setStrTipoDescricao($objTipoDTO->getStrDescricao());
+ break;
+ }
+ }
+ }
+ }
+
+ //Auditoria
+
+ return $ret;
+
+ } catch(Exception $e) {
+ throw new InfraException('Erro listando Tramite em Blocos.',$e);
+ }
+ }
+
+ protected function montarIndexacaoControlado(TramiteEmBlocoDTO $obTramiteEmBlocoDTO){
+ try{
+
+ $dto = new TramiteEmBlocoDTO();
+ $dto->retNumId();
+ $dto->retStrDescricao();
+
+ if (is_array($obTramiteEmBlocoDTO->getNumId())) {
+ $dto->setNumId($obTramiteEmBlocoDTO->getNumId(), InfraDTO::$OPER_IN);
+ } else {
+ $dto->setNumId($obTramiteEmBlocoDTO->getNumId());
+ }
+
+ $objTramiteEmBlocoDTOIdx = new TramiteEmBlocoDTO();
+ $objInfraException = new InfraException();
+ $objTramiteEmBlocoBD = new TramiteEmBlocoBD($this->getObjInfraIBanco());
+
+ $arrObjTramiteEmBlocoDTO = $this->listar($dto);
+
+ foreach($arrObjTramiteEmBlocoDTO as $dto) {
+
+ $objTramiteEmBlocoDTOIdx->setNumId($dto->getNumId());
+ $objTramiteEmBlocoDTOIdx->setStrIdxBloco(InfraString::prepararIndexacao($dto->getNumId().' '.$dto->getStrDescricao()));
+
+ $this->validarStrIdxBloco($objTramiteEmBlocoDTOIdx, $objInfraException);
+ $objInfraException->lancarValidacoes();
+
+ $objTramiteEmBlocoBD->alterar($objTramiteEmBlocoDTOIdx);
+ }
+
+ } catch(Exception $e) {
+ throw new InfraException('Erro montando indexação de bloco.',$e);
+ }
+ }
+
+ protected function cadastrarControlado(TramiteEmBlocoDTO $objTramiteEmBlocoDTO) {
+ try {
+
+ //Valida Permissao
+ SessaoSEI::getInstance()->validarAuditarPermissao('pen_tramite_em_bloco_cadastrar',__METHOD__,$objTramiteEmBlocoDTO);
+
+ //Regras de Negocio
+ $objInfraException = new InfraException();
+
+
+ $this->validarStrStaTipo($objTramiteEmBlocoDTO, $objInfraException);
+ $this->validarNumIdUsuario($objTramiteEmBlocoDTO, $objInfraException);
+ $this->validarStrDescricao($objTramiteEmBlocoDTO, $objInfraException);
+ $this->validarStrIdxBloco($objTramiteEmBlocoDTO, $objInfraException);
+ $this->validarStrStaEstado($objTramiteEmBlocoDTO, $objInfraException);
+
+
+ $objInfraException->lancarValidacoes();
+
+ $objTramiteEmBlocoBD = new TramiteEmBlocoBD($this->getObjInfraIBanco());
+ $ret = $objTramiteEmBlocoBD->cadastrar($objTramiteEmBlocoDTO);
+
+ $this->montarIndexacao($ret);
+
+ return $ret;
+
+ } catch (Exception $e) {
+ throw new InfraException('Erro cadastrando Bloco.',$e);
+ }
+ }
+
+ protected function consultarConectado(TramiteEmBlocoDTO $objTramiteEmBlocoDTO){
+ try {
+
+ //Valida Permissao
+ SessaoSEI::getInstance()->validarAuditarPermissao('pen_tramite_em_bloco_consultar',__METHOD__,$objTramiteEmBlocoDTO);
+
+ if ($objTramiteEmBlocoDTO->isRetStrTipoDescricao()) {
+ $objTramiteEmBlocoDTO->retStrStaTipo();
+ }
+
+ $objTramiteEmBlocoBD = new TramiteEmBlocoBD($this->getObjInfraIBanco());
+ $ret = $objTramiteEmBlocoBD->consultar($objTramiteEmBlocoDTO);
+
+ if ($ret != null){
+ if ($objTramiteEmBlocoDTO->isRetStrTipoDescricao()) {
+ $arrObjTipoDTO = $this->listarValoresTipo();
+ foreach ($arrObjTipoDTO as $objTipoDTO) {
+ if ($ret->getStrStaTipo() == $objTipoDTO->getStrStaTipo()){
+ $ret->setStrTipoDescricao($objTipoDTO->getStrDescricao());
+ break;
+ }
+ }
+ }
+ }
+ //Auditoria
+
+ return $ret;
+ } catch (Exception $e) {
+ throw new InfraException('Erro consultando Bloco.',$e);
+ }
+ }
+
+ protected function alterarControlado(TramiteEmBlocoDTO $objTramiteEmBlocoDTO){
+ try {
+
+ //Valida Permissao
+ SessaoSEI::getInstance()->validarAuditarPermissao('pen_tramite_em_bloco_alterar',__METHOD__,$objTramiteEmBlocoDTO);
+
+ //Regras de Negocio
+ $objInfraException = new InfraException();
+
+ $dto = new TramiteEmBlocoDTO();
+ $dto->retStrStaTipo();
+ $dto->setNumId($objTramiteEmBlocoDTO->getNumId());
+
+ $dto = $this->consultar($dto);
+
+ if ($objTramiteEmBlocoDTO->isSetStrStaTipo() && $objTramiteEmBlocoDTO->getStrStaTipo()!=$dto->getStrStaTipo()){
+ $objInfraException->lancarValidacao('Não é possível alterar o tipo do bloco.');
+ }
+
+ $objTramiteEmBlocoDTO->setStrStaTipo($dto->getStrStaTipo());
+
+ if ($objTramiteEmBlocoDTO->isSetStrStaTipo()){
+ $this->validarStrStaTipo($objTramiteEmBlocoDTO, $objInfraException);
+ }
+ if ($objTramiteEmBlocoDTO->isSetNumIdUsuario()){
+ $this->validarNumIdUsuario($objTramiteEmBlocoDTO, $objInfraException);
+ }
+ if ($objTramiteEmBlocoDTO->isSetStrDescricao()){
+ $this->validarStrDescricao($objTramiteEmBlocoDTO, $objInfraException);
+ }
+ if ($objTramiteEmBlocoDTO->isSetStrIdxBloco()){
+ $this->validarStrIdxBloco($objTramiteEmBlocoDTO, $objInfraException);
+ }
+ if ($objTramiteEmBlocoDTO->isSetStrStaEstado()){
+ $this->validarStrStaEstado($objTramiteEmBlocoDTO, $objInfraException);
+ }
+
+ $objInfraException->lancarValidacoes();
+
+ $objTramiteEmBlocoBD = new TramiteEmBlocoBD($this->getObjInfraIBanco());
+ $objTramiteEmBlocoBD->alterar($objTramiteEmBlocoDTO);
+
+ $this->montarIndexacao($objTramiteEmBlocoDTO);
+
+ //Auditoria
+
+ } catch (Exception $e){
+ throw new InfraException('Erro alterando Bloco.',$e);
+ }
+ }
+}
diff --git a/src/scripts/sei_atualizar_versao_modulo_pen.php b/src/scripts/sei_atualizar_versao_modulo_pen.php
index 81f854fd6..2da07d7d1 100755
--- a/src/scripts/sei_atualizar_versao_modulo_pen.php
+++ b/src/scripts/sei_atualizar_versao_modulo_pen.php
@@ -263,6 +263,8 @@ protected function atualizarVersaoConectado()
$this->instalarV3024();
case '3.2.4':
$this->instalarV3030();
+ case '3.4.0':
+ $this->instalarV3040();
break; // Ausência de [break;] proposital para realizar a atualização incremental de versões
@@ -1656,9 +1658,9 @@ protected function instalarV1114()
//Sequência: md_pen_seq_tramite_pendente
$rs = BancoSEI::getInstance()->consultarSql('select max(id) as total from md_pen_tramite_pendente');
$numMaxId = $rs[0]['total'];
- if ($numMaxId == null) {
- $numMaxId = 0;
- }
+ if ($numMaxId == null) {
+ $numMaxId = 0;
+ }
BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_tramite_pendente', $numMaxId + 1);
$objInfraSequenciaDTO->setStrNome('md_pen_tramite_pendente');
$objInfraSequenciaDTO->retStrNome();
@@ -2520,8 +2522,49 @@ protected function instalarV3030() {
$this->atualizarNumeroVersao("3.3.0");
}
-}
+ // novo tramite em bloco
+ protected function instalarV3040() {
+ $objInfraMetaBD = new InfraMetaBD(BancoSEI::getInstance());
+
+ $objMetaBD = $this->objMeta;
+ $objMetaBD->criarTabela(array(
+ 'tabela' => 'md_pen_tramita_em_bloco',
+ 'cols' => array(
+ 'id' => array($objMetaBD->tipoNumero(), PenMetaBD::NNULLO),
+ 'id_unidade' => array($objMetaBD->tipoNumero(), PenMetaBD::SNULLO),
+ 'id_usuario' => array($objMetaBD->tipoNumero(), PenMetaBD::SNULLO),
+ 'descricao' => array($objMetaBD->tipoTextoVariavel(255), PenMetaBD::SNULLO),
+ 'idx_bloco' => array($objMetaBD->tipoTextoVariavel(500), PenMetaBD::SNULLO),
+ 'sta_tipo' => array($objMetaBD->tipoTextoFixo(1), PenMetaBD::SNULLO),
+ 'sta_estado' => array($objMetaBD->tipoTextoFixo(1), PenMetaBD::SNULLO),
+ ),
+ 'pk' => array('cols' => array('id')),
+ 'uk' => array(),
+ 'fks' => array(
+ 'unidade' => array('nome' => 'fk_tramite_bloco_unidade', 'cols' => array('id_unidade', 'id_unidade')),
+ 'usuario' => array('nome' => 'fk_tramite_bloco_usuario', 'cols' => array('id_usuario', 'id_usuario')),
+ )
+ ));
+
+ # Criar sequencia para tramite em bloco
+
+ $objInfraSequenciaRN = new InfraSequenciaRN();
+ $objInfraSequenciaDTO = new InfraSequenciaDTO();
+
+ //Sequência: md_pen_seq_tramita_em_bloco
+ $rs = BancoSEI::getInstance()->consultarSql('select max(id) as total from md_pen_tramita_em_bloco');
+ $numMaxId = isset($rs[0]['total']) ? $rs[0]['total'] : 0;
+
+ BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_tramita_em_bloco', $numMaxId + 1);
+ $objInfraSequenciaDTO->setStrNome('md_pen_tramita_em_bloco');
+ $objInfraSequenciaDTO->retStrNome();
+ $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
+ $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
+
+ $this->atualizarNumeroVersao("3.4.0");
+ }
+}
try {
session_start();
diff --git a/src/scripts/sip_atualizar_versao_modulo_pen.php b/src/scripts/sip_atualizar_versao_modulo_pen.php
index 919766680..63dfa41cc 100755
--- a/src/scripts/sip_atualizar_versao_modulo_pen.php
+++ b/src/scripts/sip_atualizar_versao_modulo_pen.php
@@ -1,7 +1,7 @@
instalarV3024();
case '3.2.4':
$this->instalarV3030();
+ case '3.4.0':
+ $this->instalarV3040();
break; // Ausência de [break;] proposital para realizar a atualização incremental de versões
default:
@@ -623,13 +625,38 @@ private function instalarV100()
$numIdSistema = $this->getNumIdSistema('SEI');
$numIdMenu = $this->getNumIdMenu('Principal', $numIdSistema);
+ //----------------------------------------------------------------------
+ // Tramita.GOV.BR
+ //----------------------------------------------------------------------
+ $objItemMenuDTO = new ItemMenuDTO();
+ $objItemMenuDTO->setNumIdSistema($numIdSistema);
+ $objItemMenuDTO->setNumIdMenu($numIdMenu);
+ $objItemMenuDTO->setStrRotulo('Tramita.GOV.BR');
+ $objItemMenuDTO->setNumMaxRegistrosRetorno(1);
+ $objItemMenuDTO->retNumIdItemMenu();
+
+ $objItemMenuBD = new ItemMenuBD(BancoSip::getInstance());
+
+ $objItemMenuDTO = $objItemMenuBD->consultar($objItemMenuDTO);
+
+ //----------------------------------------------------------------------
+ // Tramita.GOV.BR
+ //----------------------------------------------------------------------
+ $numIdRecurso = $this->criarRecurso('pen_procedimento_expedido_listar', 'Tramita.GOV.BR', $numIdSistema);
+ $this->criarMenu('Tramita.GOV.BR', 55, null, $numIdMenu, $numIdRecurso, $numIdSistema);
+
+ //Atribui as permissões aos recursos e menus
+ $this->atribuirPerfil($numIdSistema);
+
+
//----------------------------------------------------------------------
// Expedir procedimento
//----------------------------------------------------------------------
$this->criarRecurso('pen_procedimento_expedir', 'Expedir Procedimento', $numIdSistema);
$this->criarRecurso('apensados_selecionar_expedir_procedimento', 'Processos Apensados', $numIdSistema);
- $numIdRecurso = $this->criarRecurso('pen_procedimento_expedido_listar', 'Processos Trâmitados Externamente', $numIdSistema);
- $this->criarMenu('Processos Trâmitados Externamente', 55, null, $numIdMenu, $numIdRecurso, $numIdSistema);
+ //$numIdRecurso = $this->criarRecurso('pen_procedimento_expedido_listar', 'Processos Trâmitados Externamente', $numIdSistema);
+ //$this->criarMenu('Processos Trâmitados Externamente', 55, null, $numIdMenu, $numIdRecurso, $numIdSistema);
+
//----------------------------------------------------------------------
// Mapeamento de documentos enviados
//----------------------------------------------------------------------
@@ -1179,11 +1206,11 @@ private function instalarV119()
$objRecursoDTO->retNumIdRecurso();
$objRecursoBD = new RecursoBD($this->getObjInfraIBanco());
$objRecursoDTO = $objRecursoBD->consultar($objRecursoDTO);
- if (isset($objRecursoDTO)) {
+ if (isset($objRecursoDTO)) {
$numIdRecurso = $objRecursoDTO->getNumIdRecurso();
$objRecursoDTO->setStrDescricao('Processos Tramitados Externamente');
$objRecursoBD->alterar($objRecursoDTO);
- }
+ }
$objItemMenuDTO = new ItemMenuDTO();
$objItemMenuDTO->setNumIdItemMenuPai(null);
@@ -1194,12 +1221,11 @@ private function instalarV119()
$objItemMenuDTO->retNumIdItemMenu();
$objItemMenuBD = new ItemMenuBD(BancoSip::getInstance());
$objItemMenuDTO = $objItemMenuBD->consultar($objItemMenuDTO);
- if (isset($objItemMenuDTO)) {
+ if (isset($objItemMenuDTO)) {
$objItemMenuDTO->setStrDescricao('Processos Tramitados Externamente');
$objItemMenuDTO->setStrRotulo('Processos Tramitados Externamente');
$objItemMenuBD->alterar($objItemMenuDTO);
- }
-
+ }
$this->atualizarNumeroVersao('1.1.9');
}
@@ -1209,6 +1235,56 @@ private function instalarV119()
*/
private function instalarV1110()
{
+ $objItemMenuBD = new ItemMenuBD(BancoSip::getInstance());
+
+ $numIdSistema = $this->getNumIdSistema('SEI');
+ $numIdMenu = $this->getNumIdMenu('Principal', $numIdSistema);
+
+ //Menu Tramita.GOV.BR
+ $objItemMenuDTO = new ItemMenuDTO();
+ $objItemMenuDTO->setNumIdSistema($numIdSistema);
+ $objItemMenuDTO->setNumIdMenu($numIdMenu);
+ $objItemMenuDTO->setStrRotulo('Tramita.GOV.BR');
+ $objItemMenuDTO->setNumMaxRegistrosRetorno(1);
+ $objItemMenuDTO->retNumIdItemMenu();
+
+ $objItemMenuDTO = $objItemMenuBD->consultar($objItemMenuDTO);
+
+ if (empty($objItemMenuDTO)) {
+ throw new InfraException('Menu "Tramita.GOV.BR" não foi localizado');
+ }
+
+ // ---------- antigo método (instalarV006R004S001US043) ---------- //
+ $objBD = new ItemMenuBD(BancoSip::getInstance());
+
+ $numIdSistema = $this->getNumIdSistema('SEI');
+ $numIdMenu = $this->getNumIdMenu('Principal', $numIdSistema);
+
+ $objDTO = new ItemMenuDTO();
+ $objDTO->setNumIdSistema($numIdSistema);
+ $objDTO->setNumIdMenu($numIdMenu);
+ $objDTO->setStrRotulo('Tramita.GOV.BR');
+ $objDTO->setNumMaxRegistrosRetorno(1);
+ $objDTO->retNumIdItemMenu();
+
+ $objDTO = $objBD->consultar($objDTO);
+ if (empty($objDTO)) {
+ throw new InfraException('Menu "Tramita.GOV.BR" não foi localizado');
+ }
+
+ $numIdItemMenuPai = $objDTO->getNumIdItemMenu();
+
+ $numIdRecurso = $this->criarRecurso('pen_tramite_bloco_listar', 'Blocos de Trâmite Externo', $numIdSistema);
+ $this->criarMenu('Blocos de Trâmite Externo', 57, $numIdItemMenuPai, $numIdMenu, $numIdRecurso, $numIdSistema);
+
+ $numIdRecurso = $this->criarRecurso('pen_procedimento_expedido_listar', 'Processos Tramitados Externamente', $numIdSistema);
+ $this->criarMenu('Processos Tramitados Externamente', 55, $numIdItemMenuPai, $numIdMenu, $numIdRecurso, $numIdSistema);
+
+ $numIdRecurso = $this->criarRecurso('pen_expedir_lote_listar', 'Processos Tramitados em Lote', $numIdSistema);
+ $this->criarMenu('Processos Tramitados em Lote', 56, $numIdItemMenuPai, $numIdMenu, $numIdRecurso, $numIdSistema);
+
+ $this->atribuirPerfil($numIdSistema);
+
$this->atualizarNumeroVersao('1.1.10');
}
@@ -1475,17 +1551,17 @@ private function instalarV2000_beta1()
$this->logar('Atribuição de permissões do módulo ao perfil Básico do SEI');
- $strNomeMenuProcessosTramitados = "Processos Tramitados Externamente";
+ $strNomeMenuProcessosTramitados = "Tramita.GOV.BR";
$numIdSistemaSei = ScriptSip::obterIdSistema('SEI');
$numIdPerfilSeiBasico = ScriptSip::obterIdPerfil($numIdSistemaSei, "Básico");
$numIdMenuSei = ScriptSip::obterIdMenu($numIdSistemaSei, 'Principal');
// Remove item de menu e adiciona-o novamente para criá-lo seguindo o padrão definido na rotina adicionarItemMenu
- ScriptSip::adicionarRecursoPerfil($numIdSistemaSei, $numIdPerfilSeiBasico, 'pen_procedimento_expedir');
+ /* ScriptSip::adicionarRecursoPerfil($numIdSistemaSei, $numIdPerfilSeiBasico, 'pen_procedimento_expedir');
$objRecursoDTO = ScriptSip::adicionarRecursoPerfil($numIdSistemaSei, $numIdPerfilSeiBasico, 'pen_procedimento_expedido_listar');
$numIdMenuProcessoTramitados = ScriptSip::obterIdItemMenu($numIdSistemaSei, $numIdMenuSei, $strNomeMenuProcessosTramitados);
ScriptSip::removerItemMenu($numIdSistemaSei, $numIdMenuSei, $numIdMenuProcessoTramitados);
- ScriptSip::adicionarItemMenu($numIdSistemaSei, $numIdPerfilSeiBasico, $numIdMenuSei, null, $objRecursoDTO->getNumIdRecurso(), $strNomeMenuProcessosTramitados, 55);
+ ScriptSip::adicionarItemMenu($numIdSistemaSei, $numIdPerfilSeiBasico, $numIdMenuSei, null, $objRecursoDTO->getNumIdRecurso(), $strNomeMenuProcessosTramitados, 55);*/
$this->atualizarNumeroVersao("2.0.0-beta1");
}
@@ -1629,8 +1705,8 @@ protected function instalarV3010()
$this->criarRecurso('pen_expedir_lote', 'Expedir Procedimento em Lote', $numIdSistema);
ScriptSip::adicionarRecursoPerfil($numIdSistema, $numIdPerfilSeiAdministrador, 'pen_expedir_lote');
- $numIdRecurso = $this->criarRecurso('pen_expedir_lote_listar', 'Listar Processos Tramitados em Lote', $numIdSistema);
- ScriptSip::adicionarItemMenu($numIdSistema, $numIdPerfilSeiAdministrador, $numIdMenu, null, $numIdRecurso, "Processos Tramitados em Lote", 55);
+ //$numIdRecurso = $this->criarRecurso('pen_expedir_lote_listar', 'Listar Processos Tramitados em Lote', $numIdSistema);
+ //ScriptSip::adicionarItemMenu($numIdSistema, $numIdPerfilSeiAdministrador, $numIdMenu, null, $numIdRecurso, "Processos Tramitados em Lote", 55);
$this->atualizarNumeroVersao("3.1.0");
}
@@ -1811,6 +1887,76 @@ protected function instalarV3030()
{
$this->atualizarNumeroVersao("3.3.0");
}
+
+ protected function instalarV3040()
+ {
+ /* Corrige nome de menu de trâmite de documentos */
+ $numIdSistema = $this->getNumIdSistema('SEI');
+ $numIdMenu = $this->getNumIdMenu('Principal', $numIdSistema);
+
+ //Corrige nome do recurso
+ $objRecursoDTO = new RecursoDTO();
+ $objRecursoDTO->setNumIdSistema($numIdSistema);
+ $objRecursoDTO->setStrNome('md_pen_tramita_em_bloco');
+ $objRecursoDTO->retNumIdRecurso();
+ $objRecursoBD = new RecursoBD($this->getObjInfraIBanco());
+ $objRecursoDTO = $objRecursoBD->consultar($objRecursoDTO);
+ if (isset($objRecursoDTO)) {
+ $numIdRecurso = $objRecursoDTO->getNumIdRecurso();
+ $objRecursoDTO->setStrDescricao('Blocos de Trâmite Externo');
+ $objRecursoBD->alterar($objRecursoDTO);
+ }
+
+ $objItemMenuDTO = new ItemMenuDTO();
+ $objItemMenuDTO->setNumIdItemMenuPai(null);
+ $objItemMenuDTO->setNumIdSistema($numIdSistema);
+ $objItemMenuDTO->setNumIdRecurso($numIdRecurso);
+ $objItemMenuDTO->setStrRotulo('Blocos de Trâmite Externo');
+ $objItemMenuDTO->retNumIdMenu();
+ $objItemMenuDTO->retNumIdItemMenu();
+ $objItemMenuBD = new ItemMenuBD(BancoSip::getInstance());
+ $objItemMenuDTO = $objItemMenuBD->consultar($objItemMenuDTO);
+
+ if (isset($objItemMenuDTO)) {
+ $objItemMenuDTO->setStrDescricao('Blocos de Trâmite Externo');
+ $objItemMenuDTO->setStrRotulo('Blocos de Trâmite Externo');
+ $objItemMenuBD->alterar($objItemMenuDTO);
+ }
+ // adicionar submenu
+ // if (!empty($objItemMenuDTO)) {
+
+ // $numIdItemMenuMapeamento = $objItemMenuDTO->getNumIdItemMenu();
+
+ // $objDTO = new ItemMenuDTO();
+ // $objDTO->setNumIdSistema($numIdSistema);
+ // $objDTO->setNumIdMenu($numIdMenu);
+ // $objDTO->setNumIdItemMenuPai($numIdItemMenuMapeamento);
+ // $objDTO->retTodos();
+
+ // $arrObjDTO = $objItemMenuDTO->listar($objDTO);
+
+ // if (!empty($arrObjDTO)) {
+ // $numIdItemMenuPai = $this->criarMenu('Listagem', 0, $numIdItemMenuMapeamento, $numIdMenu, null, $numIdSistema);
+ // $numIdItemMenuPai = $this->criarMenu('Mapeamento de Tipos de Documento', 10, $numIdItemMenuPai, $numIdMenu, null, $numIdSistema);
+
+ // foreach ($arrObjDTO as $objDTO) {
+ // $objDTO->setNumIdItemMenuPai($numIdItemMenuPai);
+ // $objItemMenuDTO->alterar($objDTO);
+ // }
+
+ // $objItemMenuDTO->excluir($objItemMenuDTO);
+ // }
+ // }
+
+ $this->logar('Atribuição de permissões do módulo ao perfil do SEI');
+
+ // adicionar permissão
+ $numIdPerfilSeiAdministrador = ScriptSip::obterIdPerfil($numIdSistema, "Administrador");
+ $this->criarRecurso('md_pen_tramita_em_bloco', 'Blocos de Trâmite Externo', $numIdSistema);
+ ScriptSip::adicionarRecursoPerfil($numIdSistema, $numIdPerfilSeiAdministrador, 'md_pen_tramita_em_bloco');
+
+ $this->atualizarNumeroVersao("3.4.0");
+ }
}