Commit 9387c8daf2306ee3b15093ddda49f19321c16b51

Authored by Guilherme Andrade Del Cantoni
1 parent dce777e9

Correção da indicação de número de versão do módulo

Showing 1 changed file with 245 additions and 245 deletions   Show diff stats
PENIntegracao.php
1 -<?php  
2 -  
3 -class PENIntegracao extends SeiIntegracao {  
4 -  
5 - private static $strDiretorio;  
6 -  
7 - public function getNome() {  
8 - return 'Módulo de Integração com o Barramento PEN';  
9 - }  
10 -  
11 - public function getVersao() {  
12 - return '1.0.0';  
13 - }  
14 -  
15 - public function getInstituicao() {  
16 - return 'TRF4 - Tribunal Regional Federal da 4ª Região';  
17 - }  
18 -  
19 - public function montarBotaoProcesso(ProcedimentoAPI $objSeiIntegracaoDTO) {  
20 -  
21 - $objProcedimentoDTO = new ProcedimentoDTO();  
22 - $objProcedimentoDTO->setDblIdProcedimento($objSeiIntegracaoDTO->getIdProcedimento());  
23 - $objProcedimentoDTO->retTodos();  
24 -  
25 - $objProcedimentoRN = new ProcedimentoRN();  
26 - $objProcedimentoDTO = $objProcedimentoRN->consultarRN0201($objProcedimentoDTO);  
27 -  
28 - $objSessaoSEI = SessaoSEI::getInstance();  
29 - $objPaginaSEI = PaginaSEI::getInstance();  
30 - $strAcoesProcedimento = "";  
31 -  
32 - $dblIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento();  
33 - $numIdUsuario = SessaoSEI::getInstance()->getNumIdUsuario();  
34 - $numIdUnidadeAtual = SessaoSEI::getInstance()->getNumIdUnidadeAtual();  
35 - $objInfraParametro = new InfraParametro(BancoSEI::getInstance());  
36 -  
37 - //Verifica se o processo encontra-se aberto na unidade atual  
38 - $objAtividadeRN = new AtividadeRN();  
39 - $objPesquisaPendenciaDTO = new PesquisaPendenciaDTO();  
40 - $objPesquisaPendenciaDTO->setDblIdProtocolo($dblIdProcedimento);  
41 - $objPesquisaPendenciaDTO->setNumIdUsuario($numIdUsuario);  
42 - $objPesquisaPendenciaDTO->setNumIdUnidade($numIdUnidadeAtual);  
43 - $objPesquisaPendenciaDTO->setStrSinMontandoArvore('N');  
44 - $arrObjProcedimentoDTO = $objAtividadeRN->listarPendenciasRN0754($objPesquisaPendenciaDTO);  
45 - $bolFlagAberto = count($arrObjProcedimentoDTO) == 1;  
46 -  
47 - //Verificação da Restrição de Acesso à Funcionalidade  
48 - $bolAcaoExpedirProcesso = $objSessaoSEI->verificarPermissao('pen_procedimento_expedir');  
49 -  
50 - $objExpedirProcedimentoRN = new ExpedirProcedimentoRN();  
51 - $objProcedimentoDTO = $objExpedirProcedimentoRN->consultarProcedimento($dblIdProcedimento);  
52 -  
53 - $bolProcessoEstadoNormal = !in_array($objProcedimentoDTO->getStrStaEstadoProtocolo(), array(  
54 - ProtocoloRN::$TE_PROCEDIMENTO_SOBRESTADO,  
55 - ProtocoloRN::$TE_PROCEDIMENTO_BLOQUEADO  
56 - ));  
57 -  
58 - //Apresenta o botão de expedir processo  
59 - if ($bolFlagAberto && $bolAcaoExpedirProcesso && $bolProcessoEstadoNormal && $objProcedimentoDTO->getStrStaNivelAcessoGlobalProtocolo() != ProtocoloRN::$NA_SIGILOSO) {  
60 - $numTabBotao = $objPaginaSEI->getProxTabBarraComandosSuperior();  
61 - $strAcoesProcedimento .= '<a id="validar_expedir_processo" href="' . $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador.php?acao=pen_procedimento_expedir&acao_origem=procedimento_visualizar&acao_retorno=arvore_visualizar&id_procedimento=' . $dblIdProcedimento . '&arvore=1')) . '" tabindex="' . $numTabBotao . '" class="botaoSEI"><img class="infraCorBarraSistema" src="' . $this->getDiretorioImagens() . '/pen_expedir_procedimento.gif" alt="Tramitar Externamente" title="Tramitar Externamente" /></a>';  
62 - }  
63 -  
64 - //Apresenta o botão da página de recibos  
65 - $strAcoesProcedimento .= '<a href="' . $objSessaoSEI->assinarLink('controlador.php?acao=pen_procedimento_estado&acao_origem=procedimento_visualizar&acao_retorno=arvore_visualizar&id_procedimento=' . $dblIdProcedimento . '&arvore=1') . '" tabindex="' . $numTabBotao . '" class="botaoSEI">';  
66 - $strAcoesProcedimento .= '<img class="infraCorBarraSistema" src="' . $this->getDiretorioImagens() . '/pen_consultar_recibos.png" alt="Consultar Recibos" title="Consultar Recibos"/>';  
67 - $strAcoesProcedimento .= '</a>';  
68 -  
69 - //Apresenta o botão de cancelar trâmite  
70 - $objAtividadeDTO = $objExpedirProcedimentoRN->verificarProcessoEmExpedicao($objSeiIntegracaoDTO->getIdProcedimento());  
71 -  
72 - if ($objAtividadeDTO && $objAtividadeDTO->getNumIdTarefa() == ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO)) {  
73 -  
74 - $strAcoesProcedimento .= '<a href="' . $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador.php?acao=pen_procedimento_cancelar_expedir&acao_origem=procedimento_visualizar&acao_retorno=arvore_visualizar&id_procedimento=' . $dblIdProcedimento . '&arvore=1')) . '" tabindex="' . $numTabBotao . '" class="botaoSEI">';  
75 - $strAcoesProcedimento .= '<img class="infraCorBarraSistema" src="' . $this->getDiretorioImagens() . '/sei_desanexar_processo.gif" alt="Cancelar Tramitação Externa" title="Cancelar Tramitação Externa" />';  
76 - $strAcoesProcedimento .= '</a>';  
77 - }  
78 -  
79 - return array($strAcoesProcedimento);  
80 - }  
81 -  
82 - public function montarIconeControleProcessos($arrObjProcedimentoAPI = array()) {  
83 -  
84 - $arrStrIcone = array();  
85 - $arrDblIdProcedimento = array();  
86 -  
87 - foreach ($arrObjProcedimentoAPI as $ObjProcedimentoAPI) {  
88 - $arrDblIdProcedimento[] = $ObjProcedimentoAPI->getIdProcedimento();  
89 - }  
90 -  
91 - $objProcedimentoDTO = new ProcedimentoDTO();  
92 - $objProcedimentoDTO->setDblIdProcedimento($arrDblIdProcedimento, InfraDTO::$OPER_IN);  
93 - $objProcedimentoDTO->retDblIdProcedimento();  
94 - $objProcedimentoDTO->retStrStaEstadoProtocolo();  
95 -  
96 - $objProcedimentoBD = new ProcedimentoBD(BancoSEI::getInstance());  
97 - $arrObjProcedimentoDTO = $objProcedimentoBD->listar($objProcedimentoDTO);  
98 -  
99 - if (!empty($arrObjProcedimentoDTO)) {  
100 -  
101 - foreach ($arrObjProcedimentoDTO as $objProcedimentoDTO) {  
102 -  
103 - $dblIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento();  
104 - $objPenProtocoloDTO = new PenProtocoloDTO();  
105 - $objPenProtocoloDTO->setDblIdProtocolo($dblIdProcedimento);  
106 - $objPenProtocoloDTO->retStrSinObteveRecusa();  
107 - $objPenProtocoloDTO->setNumMaxRegistrosRetorno(1);  
108 -  
109 - $objProtocoloBD = new ProtocoloBD(BancoSEI::getInstance());  
110 - $objPenProtocoloDTO = $objProtocoloBD->consultar($objPenProtocoloDTO);  
111 -  
112 - if (!empty($objPenProtocoloDTO) && $objPenProtocoloDTO->getStrSinObteveRecusa() == 'S') {  
113 - $arrStrIcone[$dblIdProcedimento] = array('<img src="' . $this->getDiretorioImagens() . '/pen_tramite_recusado.png" title="Um trâmite para esse processo foi recusado" />');  
114 - }  
115 -  
116 - }  
117 - }  
118 -  
119 - return $arrStrIcone;  
120 - }  
121 -  
122 - public function montarIconeAcompanhamentoEspecial($arrObjProcedimentoDTO) {  
123 -  
124 - }  
125 -  
126 - public function getDiretorioImagens() {  
127 - return static::getDiretorio() . '/imagens';  
128 - }  
129 -  
130 - public function montarMensagemProcesso(ProcedimentoAPI $objProcedimentoAPI) {  
131 -  
132 - $objExpedirProcedimentoRN = new ExpedirProcedimentoRN();  
133 - $objAtividadeDTO = $objExpedirProcedimentoRN->verificarProcessoEmExpedicao($objProcedimentoAPI->getIdProcedimento());  
134 -  
135 - if ($objAtividadeDTO && $objAtividadeDTO->getNumIdTarefa() == ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO)) {  
136 -  
137 - $objAtributoAndamentoDTO = new AtributoAndamentoDTO();  
138 - $objAtributoAndamentoDTO->setStrNome('UNIDADE_DESTINO');  
139 - $objAtributoAndamentoDTO->setNumIdAtividade($objAtividadeDTO->getNumIdAtividade());  
140 - $objAtributoAndamentoDTO->retStrValor();  
141 -  
142 - $objAtributoAndamentoRN = new AtributoAndamentoRN();  
143 - $objAtributoAndamentoDTO = $objAtributoAndamentoRN->consultarRN1366($objAtributoAndamentoDTO);  
144 -  
145 - return sprintf('Processo em trâmite externo para "%s".', $objAtributoAndamentoDTO->getStrValor());  
146 - }  
147 - }  
148 -  
149 - public static function getDiretorio() {  
150 -  
151 -  
152 - $arrConfig = ConfiguracaoSEI::getInstance()->getValor('SEI', 'Modulos');  
153 - $strModulo = $arrConfig['PENIntegracao'];  
154 -  
155 - return "modulos/".$strModulo;  
156 - }  
157 -  
158 - public function processarControlador($strAcao) {  
159 - switch ($strAcao) {  
160 - case 'pen_procedimento_expedir':  
161 - require_once dirname(__FILE__) . '/pen_procedimento_expedir.php';  
162 - return true;  
163 - //TODO: Alterar nome do recurso para pen_procedimento_expedir_unidade_sel  
164 - case 'pen_unidade_sel_expedir_procedimento':  
165 - require_once dirname(__FILE__) . '/pen_unidade_sel_expedir_procedimento.php';  
166 - return true;  
167 -  
168 - case 'pen_procedimento_processo_anexado':  
169 - require_once dirname(__FILE__) . '/pen_procedimento_processo_anexado.php';  
170 - return true;  
171 -  
172 - case 'pen_procedimento_cancelar_expedir':  
173 - require_once dirname(__FILE__) . '/pen_procedimento_cancelar_expedir.php';  
174 - return true;  
175 -  
176 - case 'pen_procedimento_expedido_listar':  
177 - require_once dirname(__FILE__) . '/pen_procedimento_expedido_listar.php';  
178 - return true;  
179 -  
180 - case 'pen_map_tipo_doc_enviado_listar':  
181 - case 'pen_map_tipo_doc_enviado_excluir':  
182 - case 'pen_map_tipo_doc_enviado_desativar':  
183 - case 'pen_map_tipo_doc_enviado_ativar':  
184 - require_once dirname(__FILE__) . '/pen_map_tipo_doc_enviado_listar.php';  
185 - return true;  
186 -  
187 - case 'pen_map_tipo_doc_enviado_cadastrar':  
188 - case 'pen_map_tipo_doc_enviado_visualizar':  
189 - require_once dirname(__FILE__) . '/pen_map_tipo_doc_enviado_cadastrar.php';  
190 - return true;  
191 -  
192 - case 'pen_map_tipo_doc_recebido_listar':  
193 - case 'pen_map_tipo_doc_recebido_excluir':  
194 - require_once dirname(__FILE__) . '/pen_map_tipo_doc_recebido_listar.php';  
195 - return true;  
196 -  
197 - case 'pen_map_tipo_doc_recebido_cadastrar':  
198 - case 'pen_map_tipo_doc_recebido_visualizar':  
199 - require_once dirname(__FILE__) . '/pen_map_tipo_doc_recebido_cadastrar.php';  
200 - return true;  
201 -  
202 - case 'apensados_selecionar_expedir_procedimento':  
203 - require_once dirname(__FILE__) . '/apensados_selecionar_expedir_procedimento.php';  
204 - return true;  
205 -  
206 - case 'pen_procedimento_estado':  
207 - require_once dirname(__FILE__) . '/pen_procedimento_estado.php';  
208 - return true;  
209 - }  
210 -  
211 - return false;  
212 - }  
213 -  
214 - public function processarControladorAjax($strAcao) {  
215 - $xml = null;  
216 -  
217 - switch ($_GET['acao_ajax']) {  
218 -  
219 - case 'pen_unidade_auto_completar_expedir_procedimento':  
220 - $arrObjEstruturaDTO = (array) ProcessoEletronicoINT::autoCompletarEstruturas($_POST['id_repositorio'], $_POST['palavras_pesquisa']);  
221 -  
222 - if (count($arrObjEstruturaDTO) > 0) {  
223 - $xml = InfraAjax::gerarXMLItensArrInfraDTO($arrObjEstruturaDTO, 'NumeroDeIdentificacaoDaEstrutura', 'Nome');  
224 - } else {  
225 - throw new InfraException("Unidade não Encontrada.", $e);  
226 - }  
227 - break;  
228 -  
229 - case 'pen_apensados_auto_completar_expedir_procedimento':  
230 - //TODO: Validar parâmetros passados via ajax  
231 - $dblIdProcedimentoAtual = $_POST['id_procedimento_atual'];  
232 - $numIdUnidadeAtual = SessaoSEI::getInstance()->getNumIdUnidadeAtual();  
233 - $arrObjProcedimentoDTO = ProcessoEletronicoINT::autoCompletarProcessosApensados($dblIdProcedimentoAtual, $numIdUnidadeAtual, $_POST['palavras_pesquisa']);  
234 - $xml = InfraAjax::gerarXMLItensArrInfraDTO($arrObjProcedimentoDTO, 'IdProtocolo', 'ProtocoloFormatadoProtocolo');  
235 - break;  
236 -  
237 - case 'pen_procedimento_expedir_validar':  
238 - require_once dirname(__FILE__) . '/pen_procedimento_expedir_validar.php';  
239 - break;  
240 - }  
241 -  
242 - return $xml;  
243 - }  
244 -  
245 -} 1 +<?php
  2 +
  3 +class PENIntegracao extends SeiIntegracao {
  4 +
  5 + private static $strDiretorio;
  6 +
  7 + public function getNome() {
  8 + return 'Módulo de Integração com o Barramento PEN';
  9 + }
  10 +
  11 + public function getVersao() {
  12 + return '1.0.1';
  13 + }
  14 +
  15 + public function getInstituicao() {
  16 + return 'TRF4 - Tribunal Regional Federal da 4ª Região';
  17 + }
  18 +
  19 + public function montarBotaoProcesso(ProcedimentoAPI $objSeiIntegracaoDTO) {
  20 +
  21 + $objProcedimentoDTO = new ProcedimentoDTO();
  22 + $objProcedimentoDTO->setDblIdProcedimento($objSeiIntegracaoDTO->getIdProcedimento());
  23 + $objProcedimentoDTO->retTodos();
  24 +
  25 + $objProcedimentoRN = new ProcedimentoRN();
  26 + $objProcedimentoDTO = $objProcedimentoRN->consultarRN0201($objProcedimentoDTO);
  27 +
  28 + $objSessaoSEI = SessaoSEI::getInstance();
  29 + $objPaginaSEI = PaginaSEI::getInstance();
  30 + $strAcoesProcedimento = "";
  31 +
  32 + $dblIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento();
  33 + $numIdUsuario = SessaoSEI::getInstance()->getNumIdUsuario();
  34 + $numIdUnidadeAtual = SessaoSEI::getInstance()->getNumIdUnidadeAtual();
  35 + $objInfraParametro = new InfraParametro(BancoSEI::getInstance());
  36 +
  37 + //Verifica se o processo encontra-se aberto na unidade atual
  38 + $objAtividadeRN = new AtividadeRN();
  39 + $objPesquisaPendenciaDTO = new PesquisaPendenciaDTO();
  40 + $objPesquisaPendenciaDTO->setDblIdProtocolo($dblIdProcedimento);
  41 + $objPesquisaPendenciaDTO->setNumIdUsuario($numIdUsuario);
  42 + $objPesquisaPendenciaDTO->setNumIdUnidade($numIdUnidadeAtual);
  43 + $objPesquisaPendenciaDTO->setStrSinMontandoArvore('N');
  44 + $arrObjProcedimentoDTO = $objAtividadeRN->listarPendenciasRN0754($objPesquisaPendenciaDTO);
  45 + $bolFlagAberto = count($arrObjProcedimentoDTO) == 1;
  46 +
  47 + //Verificação da Restrição de Acesso à Funcionalidade
  48 + $bolAcaoExpedirProcesso = $objSessaoSEI->verificarPermissao('pen_procedimento_expedir');
  49 +
  50 + $objExpedirProcedimentoRN = new ExpedirProcedimentoRN();
  51 + $objProcedimentoDTO = $objExpedirProcedimentoRN->consultarProcedimento($dblIdProcedimento);
  52 +
  53 + $bolProcessoEstadoNormal = !in_array($objProcedimentoDTO->getStrStaEstadoProtocolo(), array(
  54 + ProtocoloRN::$TE_PROCEDIMENTO_SOBRESTADO,
  55 + ProtocoloRN::$TE_PROCEDIMENTO_BLOQUEADO
  56 + ));
  57 +
  58 + //Apresenta o botão de expedir processo
  59 + if ($bolFlagAberto && $bolAcaoExpedirProcesso && $bolProcessoEstadoNormal && $objProcedimentoDTO->getStrStaNivelAcessoGlobalProtocolo() != ProtocoloRN::$NA_SIGILOSO) {
  60 + $numTabBotao = $objPaginaSEI->getProxTabBarraComandosSuperior();
  61 + $strAcoesProcedimento .= '<a id="validar_expedir_processo" href="' . $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador.php?acao=pen_procedimento_expedir&acao_origem=procedimento_visualizar&acao_retorno=arvore_visualizar&id_procedimento=' . $dblIdProcedimento . '&arvore=1')) . '" tabindex="' . $numTabBotao . '" class="botaoSEI"><img class="infraCorBarraSistema" src="' . $this->getDiretorioImagens() . '/pen_expedir_procedimento.gif" alt="Tramitar Externamente" title="Tramitar Externamente" /></a>';
  62 + }
  63 +
  64 + //Apresenta o botão da página de recibos
  65 + $strAcoesProcedimento .= '<a href="' . $objSessaoSEI->assinarLink('controlador.php?acao=pen_procedimento_estado&acao_origem=procedimento_visualizar&acao_retorno=arvore_visualizar&id_procedimento=' . $dblIdProcedimento . '&arvore=1') . '" tabindex="' . $numTabBotao . '" class="botaoSEI">';
  66 + $strAcoesProcedimento .= '<img class="infraCorBarraSistema" src="' . $this->getDiretorioImagens() . '/pen_consultar_recibos.png" alt="Consultar Recibos" title="Consultar Recibos"/>';
  67 + $strAcoesProcedimento .= '</a>';
  68 +
  69 + //Apresenta o botão de cancelar trâmite
  70 + $objAtividadeDTO = $objExpedirProcedimentoRN->verificarProcessoEmExpedicao($objSeiIntegracaoDTO->getIdProcedimento());
  71 +
  72 + if ($objAtividadeDTO && $objAtividadeDTO->getNumIdTarefa() == ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO)) {
  73 +
  74 + $strAcoesProcedimento .= '<a href="' . $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador.php?acao=pen_procedimento_cancelar_expedir&acao_origem=procedimento_visualizar&acao_retorno=arvore_visualizar&id_procedimento=' . $dblIdProcedimento . '&arvore=1')) . '" tabindex="' . $numTabBotao . '" class="botaoSEI">';
  75 + $strAcoesProcedimento .= '<img class="infraCorBarraSistema" src="' . $this->getDiretorioImagens() . '/sei_desanexar_processo.gif" alt="Cancelar Tramitação Externa" title="Cancelar Tramitação Externa" />';
  76 + $strAcoesProcedimento .= '</a>';
  77 + }
  78 +
  79 + return array($strAcoesProcedimento);
  80 + }
  81 +
  82 + public function montarIconeControleProcessos($arrObjProcedimentoAPI = array()) {
  83 +
  84 + $arrStrIcone = array();
  85 + $arrDblIdProcedimento = array();
  86 +
  87 + foreach ($arrObjProcedimentoAPI as $ObjProcedimentoAPI) {
  88 + $arrDblIdProcedimento[] = $ObjProcedimentoAPI->getIdProcedimento();
  89 + }
  90 +
  91 + $objProcedimentoDTO = new ProcedimentoDTO();
  92 + $objProcedimentoDTO->setDblIdProcedimento($arrDblIdProcedimento, InfraDTO::$OPER_IN);
  93 + $objProcedimentoDTO->retDblIdProcedimento();
  94 + $objProcedimentoDTO->retStrStaEstadoProtocolo();
  95 +
  96 + $objProcedimentoBD = new ProcedimentoBD(BancoSEI::getInstance());
  97 + $arrObjProcedimentoDTO = $objProcedimentoBD->listar($objProcedimentoDTO);
  98 +
  99 + if (!empty($arrObjProcedimentoDTO)) {
  100 +
  101 + foreach ($arrObjProcedimentoDTO as $objProcedimentoDTO) {
  102 +
  103 + $dblIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento();
  104 + $objPenProtocoloDTO = new PenProtocoloDTO();
  105 + $objPenProtocoloDTO->setDblIdProtocolo($dblIdProcedimento);
  106 + $objPenProtocoloDTO->retStrSinObteveRecusa();
  107 + $objPenProtocoloDTO->setNumMaxRegistrosRetorno(1);
  108 +
  109 + $objProtocoloBD = new ProtocoloBD(BancoSEI::getInstance());
  110 + $objPenProtocoloDTO = $objProtocoloBD->consultar($objPenProtocoloDTO);
  111 +
  112 + if (!empty($objPenProtocoloDTO) && $objPenProtocoloDTO->getStrSinObteveRecusa() == 'S') {
  113 + $arrStrIcone[$dblIdProcedimento] = array('<img src="' . $this->getDiretorioImagens() . '/pen_tramite_recusado.png" title="Um trâmite para esse processo foi recusado" />');
  114 + }
  115 +
  116 + }
  117 + }
  118 +
  119 + return $arrStrIcone;
  120 + }
  121 +
  122 + public function montarIconeAcompanhamentoEspecial($arrObjProcedimentoDTO) {
  123 +
  124 + }
  125 +
  126 + public function getDiretorioImagens() {
  127 + return static::getDiretorio() . '/imagens';
  128 + }
  129 +
  130 + public function montarMensagemProcesso(ProcedimentoAPI $objProcedimentoAPI) {
  131 +
  132 + $objExpedirProcedimentoRN = new ExpedirProcedimentoRN();
  133 + $objAtividadeDTO = $objExpedirProcedimentoRN->verificarProcessoEmExpedicao($objProcedimentoAPI->getIdProcedimento());
  134 +
  135 + if ($objAtividadeDTO && $objAtividadeDTO->getNumIdTarefa() == ProcessoEletronicoRN::obterIdTarefaModulo(ProcessoEletronicoRN::$TI_PROCESSO_ELETRONICO_PROCESSO_EXPEDIDO)) {
  136 +
  137 + $objAtributoAndamentoDTO = new AtributoAndamentoDTO();
  138 + $objAtributoAndamentoDTO->setStrNome('UNIDADE_DESTINO');
  139 + $objAtributoAndamentoDTO->setNumIdAtividade($objAtividadeDTO->getNumIdAtividade());
  140 + $objAtributoAndamentoDTO->retStrValor();
  141 +
  142 + $objAtributoAndamentoRN = new AtributoAndamentoRN();
  143 + $objAtributoAndamentoDTO = $objAtributoAndamentoRN->consultarRN1366($objAtributoAndamentoDTO);
  144 +
  145 + return sprintf('Processo em trâmite externo para "%s".', $objAtributoAndamentoDTO->getStrValor());
  146 + }
  147 + }
  148 +
  149 + public static function getDiretorio() {
  150 +
  151 +
  152 + $arrConfig = ConfiguracaoSEI::getInstance()->getValor('SEI', 'Modulos');
  153 + $strModulo = $arrConfig['PENIntegracao'];
  154 +
  155 + return "modulos/".$strModulo;
  156 + }
  157 +
  158 + public function processarControlador($strAcao) {
  159 + switch ($strAcao) {
  160 + case 'pen_procedimento_expedir':
  161 + require_once dirname(__FILE__) . '/pen_procedimento_expedir.php';
  162 + return true;
  163 + //TODO: Alterar nome do recurso para pen_procedimento_expedir_unidade_sel
  164 + case 'pen_unidade_sel_expedir_procedimento':
  165 + require_once dirname(__FILE__) . '/pen_unidade_sel_expedir_procedimento.php';
  166 + return true;
  167 +
  168 + case 'pen_procedimento_processo_anexado':
  169 + require_once dirname(__FILE__) . '/pen_procedimento_processo_anexado.php';
  170 + return true;
  171 +
  172 + case 'pen_procedimento_cancelar_expedir':
  173 + require_once dirname(__FILE__) . '/pen_procedimento_cancelar_expedir.php';
  174 + return true;
  175 +
  176 + case 'pen_procedimento_expedido_listar':
  177 + require_once dirname(__FILE__) . '/pen_procedimento_expedido_listar.php';
  178 + return true;
  179 +
  180 + case 'pen_map_tipo_doc_enviado_listar':
  181 + case 'pen_map_tipo_doc_enviado_excluir':
  182 + case 'pen_map_tipo_doc_enviado_desativar':
  183 + case 'pen_map_tipo_doc_enviado_ativar':
  184 + require_once dirname(__FILE__) . '/pen_map_tipo_doc_enviado_listar.php';
  185 + return true;
  186 +
  187 + case 'pen_map_tipo_doc_enviado_cadastrar':
  188 + case 'pen_map_tipo_doc_enviado_visualizar':
  189 + require_once dirname(__FILE__) . '/pen_map_tipo_doc_enviado_cadastrar.php';
  190 + return true;
  191 +
  192 + case 'pen_map_tipo_doc_recebido_listar':
  193 + case 'pen_map_tipo_doc_recebido_excluir':
  194 + require_once dirname(__FILE__) . '/pen_map_tipo_doc_recebido_listar.php';
  195 + return true;
  196 +
  197 + case 'pen_map_tipo_doc_recebido_cadastrar':
  198 + case 'pen_map_tipo_doc_recebido_visualizar':
  199 + require_once dirname(__FILE__) . '/pen_map_tipo_doc_recebido_cadastrar.php';
  200 + return true;
  201 +
  202 + case 'apensados_selecionar_expedir_procedimento':
  203 + require_once dirname(__FILE__) . '/apensados_selecionar_expedir_procedimento.php';
  204 + return true;
  205 +
  206 + case 'pen_procedimento_estado':
  207 + require_once dirname(__FILE__) . '/pen_procedimento_estado.php';
  208 + return true;
  209 + }
  210 +
  211 + return false;
  212 + }
  213 +
  214 + public function processarControladorAjax($strAcao) {
  215 + $xml = null;
  216 +
  217 + switch ($_GET['acao_ajax']) {
  218 +
  219 + case 'pen_unidade_auto_completar_expedir_procedimento':
  220 + $arrObjEstruturaDTO = (array) ProcessoEletronicoINT::autoCompletarEstruturas($_POST['id_repositorio'], $_POST['palavras_pesquisa']);
  221 +
  222 + if (count($arrObjEstruturaDTO) > 0) {
  223 + $xml = InfraAjax::gerarXMLItensArrInfraDTO($arrObjEstruturaDTO, 'NumeroDeIdentificacaoDaEstrutura', 'Nome');
  224 + } else {
  225 + throw new InfraException("Unidade não Encontrada.", $e);
  226 + }
  227 + break;
  228 +
  229 + case 'pen_apensados_auto_completar_expedir_procedimento':
  230 + //TODO: Validar parâmetros passados via ajax
  231 + $dblIdProcedimentoAtual = $_POST['id_procedimento_atual'];
  232 + $numIdUnidadeAtual = SessaoSEI::getInstance()->getNumIdUnidadeAtual();
  233 + $arrObjProcedimentoDTO = ProcessoEletronicoINT::autoCompletarProcessosApensados($dblIdProcedimentoAtual, $numIdUnidadeAtual, $_POST['palavras_pesquisa']);
  234 + $xml = InfraAjax::gerarXMLItensArrInfraDTO($arrObjProcedimentoDTO, 'IdProtocolo', 'ProtocoloFormatadoProtocolo');
  235 + break;
  236 +
  237 + case 'pen_procedimento_expedir_validar':
  238 + require_once dirname(__FILE__) . '/pen_procedimento_expedir_validar.php';
  239 + break;
  240 + }
  241 +
  242 + return $xml;
  243 + }
  244 +
  245 +}