Commit 463f1d893020924fdee35ba4893e636c0e0fdbe3

Authored by Guilherme Andrade Del Cantoni
1 parent 2defe5d0

Adição de mensagem de notificação de final de execução de script

rn/PenAtualizadorRN.php
@@ -82,17 +82,24 @@ abstract class PenAtualizadorRN extends InfraRN { @@ -82,17 +82,24 @@ abstract class PenAtualizadorRN extends InfraRN {
82 * 82 *
83 * @return null 83 * @return null
84 */ 84 */
85 - protected function finalizar() {  
86 -  
87 - $this->logar('TEMPO TOTAL DE EXECUCAO: ' . InfraUtil::verificarTempoProcessamento($this->numSeg) . ' s'); 85 + protected function finalizar($strMsg=null, $bolErro=false){
  86 + if (!$bolErro) {
  87 + $this->numSeg = InfraUtil::verificarTempoProcessamento($this->numSeg);
  88 + $this->logar('TEMPO TOTAL DE EXECUCAO: ' . $this->numSeg . ' s');
  89 + }else{
  90 + $strMsg = 'ERRO: '.$strMsg;
  91 + }
88 92
89 - $this->objDebug->setBolLigado(false);  
90 - $this->objDebug->setBolDebugInfra(false);  
91 - $this->objDebug->setBolEcho(false); 93 + if ($strMsg!=null){
  94 + $this->logar($strMsg);
  95 + }
92 96
93 - print PHP_EOL;  
94 - die();  
95 - } 97 + InfraDebug::getInstance()->setBolLigado(false);
  98 + InfraDebug::getInstance()->setBolDebugInfra(false);
  99 + InfraDebug::getInstance()->setBolEcho(false);
  100 + $this->numSeg = 0;
  101 + die;
  102 + }
96 103
97 /** 104 /**
98 * Construtor 105 * Construtor
rn/PenAtualizarSeiRN.php
@@ -50,9 +50,10 @@ class PenAtualizarSeiRN extends PenAtualizadorRN { @@ -50,9 +50,10 @@ class PenAtualizarSeiRN extends PenAtualizadorRN {
50 } else if ($strVersaoModuloPen == '1.0.1') { 50 } else if ($strVersaoModuloPen == '1.0.1') {
51 $this->instalarV102(); 51 $this->instalarV102();
52 } else if ($strVersaoModuloPen == '1.1.0') { 52 } else if ($strVersaoModuloPen == '1.1.0') {
  53 +
53 } 54 }
54 55
55 - 56 + $this->finalizar('FIM');
56 InfraDebug::getInstance()->setBolDebugInfra(true); 57 InfraDebug::getInstance()->setBolDebugInfra(true);
57 } catch (Exception $e) { 58 } catch (Exception $e) {
58 59
@@ -62,7 +63,8 @@ class PenAtualizarSeiRN extends PenAtualizadorRN { @@ -62,7 +63,8 @@ class PenAtualizarSeiRN extends PenAtualizadorRN {
62 throw new InfraException('Erro atualizando VERSAO.', $e); 63 throw new InfraException('Erro atualizando VERSAO.', $e);
63 } 64 }
64 } 65 }
65 - 66 +
  67 +
66 /** 68 /**
67 * Cria um novo parâmetro 69 * Cria um novo parâmetro
68 * @return int Código do Parametro gerado 70 * @return int Código do Parametro gerado
rn/PenAtualizarSipRN.php
@@ -1,353 +0,0 @@ @@ -1,353 +0,0 @@
1 -<?php  
2 -require_once dirname(__FILE__) . '/../../../../sip/Sip.php';  
3 -  
4 -/**  
5 - * Atualizador do sistema SIP para instalar/atualizar o módulo PEN  
6 - *  
7 - * @author Join Tecnologia  
8 - */  
9 -class PenAtualizarSipRN extends PenAtualizadorRN {  
10 -  
11 - protected $versaoMinRequirida = '1.30.0';  
12 - protected $sei_versao = 'PEN_VERSAO_MODULO_SIP';  
13 -  
14 - private $arrRecurso = array();  
15 - private $arrMenu = array();  
16 -  
17 - /**  
18 - * Retorna/Cria a conexão com o banco de dados  
19 - *  
20 - * @return InfraIBanco  
21 - */  
22 - protected function inicializarObjInfraIBanco() {  
23 - if(empty($this->objBanco)) {  
24 -  
25 - $this->objBanco = BancoSip::getInstance();  
26 - }  
27 - return $this->objBanco;  
28 - }  
29 -  
30 - /**  
31 - * Retorna o ID do sistema  
32 - *  
33 - * @return int  
34 - */  
35 - protected function getNumIdSistema($strSigla = 'SIP'){  
36 -  
37 - $objDTO = new SistemaDTO();  
38 - $objDTO->setStrSigla($strSigla);  
39 - $objDTO->setNumMaxRegistrosRetorno(1);  
40 - $objDTO->retNumIdSistema();  
41 -  
42 - $objRN = new SistemaRN();  
43 - $objDTO = $objRN->consultar($objDTO);  
44 -  
45 - return (empty($objDTO)) ? '0' : $objDTO->getNumIdSistema();  
46 - }  
47 -  
48 - /**  
49 - *  
50 - * @return int Código do Menu  
51 - */  
52 - protected function getNumIdMenu($strMenu = 'Principal', $numIdSistema = 0){  
53 -  
54 - $objDTO = new MenuDTO();  
55 - $objDTO->setNumIdSistema($numIdSistema);  
56 - $objDTO->setStrNome($strMenu);  
57 - $objDTO->setNumMaxRegistrosRetorno(1);  
58 - $objDTO->retNumIdMenu();  
59 -  
60 - $objRN = new MenuRN();  
61 - $objDTO = $objRN->consultar($objDTO);  
62 -  
63 - if(empty($objDTO)){  
64 - throw new InfraException('Menu '.$strMenu.' não encontrado.');  
65 - }  
66 -  
67 - return $objDTO->getNumIdMenu();  
68 - }  
69 -  
70 - /**  
71 - *  
72 - * @return int Código do Recurso gerado  
73 - */  
74 - protected function criarRecurso($strNome = '', $strDescricao = null, $numIdSistema = 0){  
75 -  
76 - $objDTO = new RecursoDTO();  
77 - $objDTO->setNumIdSistema($numIdSistema);  
78 - $objDTO->setStrNome($strNome);  
79 - $objDTO->setNumMaxRegistrosRetorno(1);  
80 - $objDTO->retNumIdRecurso();  
81 -  
82 - $objBD = new RecursoBD($this->getObjInfraIBanco());  
83 - $objDTO = $objBD->consultar($objDTO);  
84 -  
85 - if(empty($objDTO)){  
86 -  
87 - $objDTO = new RecursoDTO();  
88 - $objDTO->setNumIdRecurso(null);  
89 - $objDTO->setStrDescricao($strDescricao);  
90 - $objDTO->setNumIdSistema($numIdSistema);  
91 - $objDTO->setStrNome($strNome);  
92 - $objDTO->setStrCaminho('controlador.php?acao='.$strNome);  
93 - $objDTO->setStrSinAtivo('S');  
94 -  
95 - $objDTO = $objBD->cadastrar($objDTO);  
96 - }  
97 -  
98 - $this->arrRecurso[] = $objDTO->getNumIdRecurso();  
99 -  
100 - return $objDTO->getNumIdRecurso();  
101 - }  
102 -  
103 - /**  
104 - * Cria um menu  
105 - *  
106 - * @return int  
107 - */  
108 - protected function criarMenu($strRotulo = '', $numSequencia = 10, $numIdItemMenuPai = null, $numIdMenu = null, $numIdRecurso = null, $numIdSistema = 0){  
109 -  
110 - $objDTO = new ItemMenuDTO();  
111 - $objDTO->setNumIdItemMenuPai($numIdItemMenuPai);  
112 - $objDTO->setNumIdSistema($numIdSistema);  
113 - $objDTO->setStrRotulo($strRotulo);  
114 - $objDTO->setNumIdRecurso($numIdRecurso);  
115 - $objDTO->setNumMaxRegistrosRetorno(1);  
116 - $objDTO->retNumIdItemMenu();  
117 -  
118 - $objBD = new ItemMenuBD($this->inicializarObjInfraIBanco());  
119 - $objDTO = $objBD->consultar($objDTO);  
120 -  
121 - if(empty($objDTO)){  
122 -  
123 - $objDTO = new ItemMenuDTO();  
124 - $objDTO->setNumIdMenu($numIdMenu);  
125 - $objDTO->setNumIdMenuPai($numIdMenu);  
126 - $objDTO->setNumIdItemMenu(null);  
127 - $objDTO->setNumIdItemMenuPai($numIdItemMenuPai);  
128 - $objDTO->setNumIdSistema($numIdSistema);  
129 - $objDTO->setNumIdRecurso($numIdRecurso);  
130 - $objDTO->setStrRotulo($strRotulo);  
131 - $objDTO->setStrDescricao(null);  
132 - $objDTO->setNumSequencia($numSequencia);  
133 - $objDTO->setStrSinNovaJanela('N');  
134 - $objDTO->setStrSinAtivo('S');  
135 -  
136 - $objDTO = $objBD->cadastrar($objDTO);  
137 - }  
138 -  
139 - if(!empty($numIdRecurso)) {  
140 -  
141 - $this->arrMenu[] = array($objDTO->getNumIdItemMenu(), $numIdMenu, $numIdRecurso);  
142 - }  
143 -  
144 - return $objDTO->getNumIdItemMenu();  
145 - }  
146 -  
147 - public function addRecursosToPerfil($numIdPerfil, $numIdSistema){  
148 -  
149 - if(!empty($this->arrRecurso)) {  
150 -  
151 - $objDTO = new RelPerfilRecursoDTO();  
152 - $objBD = new RelPerfilRecursoBD($this->inicializarObjInfraIBanco());  
153 -  
154 - foreach($this->arrRecurso as $numIdRecurso) {  
155 -  
156 - $objDTO->setNumIdSistema($numIdSistema);  
157 - $objDTO->setNumIdPerfil($numIdPerfil);  
158 - $objDTO->setNumIdRecurso($numIdRecurso);  
159 -  
160 - if($objBD->contar($objDTO) == 0) {  
161 - $objBD->cadastrar($objDTO);  
162 - }  
163 - }  
164 - }  
165 - }  
166 -  
167 - public function addMenusToPerfil($numIdPerfil, $numIdSistema){  
168 -  
169 - if(!empty($this->arrMenu)) {  
170 -  
171 - $objDTO = new RelPerfilItemMenuDTO();  
172 - $objBD = new RelPerfilItemMenuBD($this->inicializarObjInfraIBanco());  
173 -  
174 - foreach($this->arrMenu as $array) {  
175 -  
176 - list($numIdItemMenu, $numIdMenu, $numIdRecurso) = $array;  
177 -  
178 - $objDTO->setNumIdPerfil($numIdPerfil);  
179 - $objDTO->setNumIdSistema($numIdSistema);  
180 - $objDTO->setNumIdRecurso($numIdRecurso);  
181 - $objDTO->setNumIdMenu($numIdMenu);  
182 - $objDTO->setNumIdItemMenu($numIdItemMenu);  
183 -  
184 - if($objBD->contar($objDTO) == 0) {  
185 - $objBD->cadastrar($objDTO);  
186 - }  
187 - }  
188 - }  
189 - }  
190 -  
191 - public function atribuirPerfil($numIdSistema){  
192 -  
193 - $objDTO = new PerfilDTO();  
194 - $objBD = new PerfilBD($this->inicializarObjInfraIBanco());  
195 - $objRN = $this;  
196 -  
197 - // Vincula a um perfil os recursos e menus adicionados nos métodos criarMenu e criarReturso  
198 - $fnCadastrar = function($strNome, $numIdSistema) use($objDTO, $objBD, $objRN) {  
199 -  
200 - $objDTO->unSetTodos();  
201 - $objDTO->setNumIdSistema($numIdSistema);  
202 - $objDTO->setStrNome($strNome, InfraDTO::$OPER_LIKE);  
203 - $objDTO->setNumMaxRegistrosRetorno(1);  
204 - $objDTO->retNumIdPerfil();  
205 -  
206 - $objPerfilDTO = $objBD->consultar($objDTO);  
207 -  
208 - if(!empty($objPerfilDTO)) {  
209 - $objRN->addRecursosToPerfil($objPerfilDTO->getNumIdPerfil(), $numIdSistema);  
210 - $objRN->addMenusToPerfil($objPerfilDTO->getNumIdPerfil(), $numIdSistema);  
211 - }  
212 - };  
213 -  
214 - //$fnCadastrar('ADMINISTRADOR', $numIdSistema);  
215 - //$fnCadastrar('BASICO', $numIdSistema);  
216 - }  
217 -  
218 - /**  
219 - * Instala/Atualiza os módulo PEN para versão 1.0  
220 - */  
221 - protected function instalarV001(){  
222 -  
223 - $numIdSistema = $this->getNumIdSistema('SEI');  
224 - $numIdMenu = $this->getNumIdMenu('Principal', $numIdSistema);  
225 -  
226 - //----------------------------------------------------------------------  
227 - // Expedir procedimento  
228 - //----------------------------------------------------------------------  
229 - $this->criarRecurso('pen_procedimento_expedir', 'Expedir Procedimento', $numIdSistema);  
230 - $this->criarRecurso('apensados_selecionar_expedir_procedimento', 'Processos Apensados', $numIdSistema);  
231 - $numIdRecurso = $this->criarRecurso('pen_procedimento_expedido_listar', 'Processos Expedidos', $numIdSistema);  
232 - $this->criarMenu('Processos Expedidos', 55, null, $numIdMenu, $numIdRecurso, $numIdSistema);  
233 - //----------------------------------------------------------------------  
234 - // Mapeamento de documentos enviados  
235 - //----------------------------------------------------------------------  
236 - $this->criarRecurso('pen_map_tipo_documento_envio_visualizar', 'Visualização de mapeamento de documentos enviados', $numIdSistema);  
237 -  
238 - // Acha o menu existente de Tipos de Documento  
239 - $objItemMenuDTO = new ItemMenuDTO();  
240 - $objItemMenuDTO->setNumIdSistema($numIdSistema);  
241 - $objItemMenuDTO->setNumIdMenu($numIdMenu);  
242 - $objItemMenuDTO->setStrRotulo('Tipos de Documento');  
243 - $objItemMenuDTO->setNumMaxRegistrosRetorno(1);  
244 - $objItemMenuDTO->retNumIdItemMenu();  
245 -  
246 - $objItemMenuBD = new ItemMenuBD($this->inicializarObjInfraIBanco());  
247 - $objItemMenuDTO = $objItemMenuBD->consultar($objItemMenuDTO);  
248 -  
249 - if(empty($objItemMenuDTO)) {  
250 - throw new InfraException('Menu "Tipo de Documentos" não foi localizado');  
251 - }  
252 -  
253 - $numIdItemMenuPai = $objItemMenuDTO->getNumIdItemMenu();  
254 -  
255 - // Gera o submenu Mapeamento  
256 - $_numIdItemMenuPai = $this->criarMenu('Mapeamento', 50, $numIdItemMenuPai, $numIdMenu, null, $numIdSistema);  
257 -  
258 - // Gera o submenu Mapeamento > Envio  
259 - $numIdItemMenuPai = $this->criarMenu('Envio', 10, $_numIdItemMenuPai, $numIdMenu, null, $numIdSistema);  
260 -  
261 - // Gera o submenu Mapeamento > Envio > Cadastrar  
262 - $numIdRecurso = $this->criarRecurso('pen_map_tipo_documento_envio_cadastrar', 'Cadastro de mapeamento de documentos enviados', $numIdSistema);  
263 - $this->criarMenu('Cadastrar', 10, $numIdItemMenuPai, $numIdMenu, $numIdRecurso, $numIdSistema);  
264 -  
265 - // Gera o submenu Mapeamento > Envio > Listar  
266 - $numIdRecurso = $this->criarRecurso('pen_map_tipo_documento_envio_listar', 'Listagem de mapeamento de documentos enviados', $numIdSistema);  
267 - $this->criarMenu('Listar', 20, $numIdItemMenuPai, $numIdMenu, $numIdRecurso, $numIdSistema);  
268 -  
269 - // Gera o submenu Mapeamento > Recebimento  
270 - $numIdItemMenuPai = $this->criarMenu('Recebimento', 20, $_numIdItemMenuPai, $numIdMenu, null, $numIdSistema);  
271 -  
272 - // Gera o submenu Mapeamento > Recebimento > Cadastrar  
273 - $numIdRecurso = $this->criarRecurso('pen_map_tipo_documento_recebimento_cadastrar', 'Cadastro de mapeamento de documentos recebidos', $numIdSistema);  
274 - $this->criarMenu('Cadastrar', 10, $numIdItemMenuPai, $numIdMenu, $numIdRecurso, $numIdSistema);  
275 -  
276 - // Gera o submenu Mapeamento > Recebimento > Listar  
277 - $numIdRecurso = $this->criarRecurso('pen_map_tipo_documento_recebimento_listar', 'Listagem de mapeamento de documentos recebidos', $numIdSistema);  
278 - $this->criarMenu('Listar', 20, $numIdItemMenuPai, $numIdMenu, $numIdRecurso, $numIdSistema);  
279 -  
280 - //Atribui as permissões aos recursos e menus  
281 - $this->atribuirPerfil($numIdSistema);  
282 - }  
283 -  
284 - protected function instalarV002(){  
285 -  
286 - }  
287 -  
288 - protected function instalarV003R003S003IW001(){  
289 -  
290 -  
291 - $objBD = new ItemMenuBD($this->inicializarObjInfraIBanco());  
292 -  
293 - //----------------------------------------------------------------------  
294 - // Achar o root  
295 -  
296 - $numIdSistema = $this->getNumIdSistema('SEI');  
297 - $numIdMenu = $this->getNumIdMenu('Principal', $numIdSistema);  
298 -  
299 - $objDTO = new ItemMenuDTO();  
300 - $objDTO->setNumIdSistema($numIdSistema);  
301 - $objDTO->setNumIdMenu($numIdMenu);  
302 - $objDTO->setStrRotulo('Administração');  
303 - $objDTO->setNumMaxRegistrosRetorno(1);  
304 - $objDTO->retNumIdItemMenu();  
305 -  
306 - $objDTO = $objBD->consultar($objDTO);  
307 -  
308 - if(empty($objDTO)) {  
309 - throw new InfraException('Menu "Administração" não foi localizado');  
310 - }  
311 -  
312 - $numIdItemMenuRoot = $objDTO->getNumIdItemMenu();  
313 - //----------------------------------------------------------------------  
314 - // Acha o nodo do mapeamento  
315 -  
316 - $objItemMenuDTO = new ItemMenuDTO();  
317 - $objItemMenuDTO->setNumIdSistema($numIdSistema);  
318 - $objItemMenuDTO->setNumIdMenu($numIdMenu);  
319 - $objItemMenuDTO->setStrRotulo('Mapeamento');  
320 - $objItemMenuDTO->setNumSequencia(50);  
321 - $objItemMenuDTO->setNumMaxRegistrosRetorno(1);  
322 - $objItemMenuDTO->retTodos();  
323 -  
324 - $objItemMenuDTO = $objBD->consultar($objItemMenuDTO);  
325 - if(!empty($objItemMenuDTO)) {  
326 -  
327 - $numIdItemMenuMapeamento = $objItemMenuDTO->getNumIdItemMenu();  
328 -  
329 - $objDTO = new ItemMenuDTO();  
330 - $objDTO->setNumIdSistema($numIdSistema);  
331 - $objDTO->setNumIdMenu($numIdMenu);  
332 - $objDTO->setNumIdItemMenuPai($numIdItemMenuMapeamento);  
333 - $objDTO->retTodos();  
334 -  
335 - $arrObjDTO = $objBD->listar($objDTO);  
336 -  
337 - if(!empty($arrObjDTO)) {  
338 -  
339 - $numIdItemMenuPai = $this->criarMenu('Processo Eletrônico Nacional', 0, $numIdItemMenuRoot, $numIdMenu, null, $numIdSistema);  
340 - $numIdItemMenuPai = $this->criarMenu('Mapeamento de Tipos de Documento', 10, $numIdItemMenuPai, $numIdMenu, null, $numIdSistema);  
341 -  
342 - foreach($arrObjDTO as $objDTO) {  
343 -  
344 - $objDTO->setNumIdItemMenuPai($numIdItemMenuPai);  
345 -  
346 - $objBD->alterar($objDTO);  
347 - }  
348 -  
349 - $objBD->excluir($objItemMenuDTO);  
350 - }  
351 - }  
352 - }  
353 -}  
sip_atualizar_versao_modulo_pen.php
@@ -492,24 +492,7 @@ abstract class PenAtualizadorRN extends InfraRN { @@ -492,24 +492,7 @@ abstract class PenAtualizadorRN extends InfraRN {
492 $this->numSeg = InfraUtil::verificarTempoProcessamento(); 492 $this->numSeg = InfraUtil::verificarTempoProcessamento();
493 493
494 $this->logar($strTitulo); 494 $this->logar($strTitulo);
495 - }  
496 -  
497 - /**  
498 - * Finaliza o script informando o tempo de execução.  
499 - *  
500 - * @return null  
501 - */  
502 - protected function finalizar() {  
503 -  
504 - $this->logar('TEMPO TOTAL DE EXECUCAO: ' . InfraUtil::verificarTempoProcessamento($this->numSeg) . ' s');  
505 -  
506 - $this->objDebug->setBolLigado(false);  
507 - $this->objDebug->setBolDebugInfra(false);  
508 - $this->objDebug->setBolEcho(false);  
509 -  
510 - print PHP_EOL;  
511 - die();  
512 - } 495 + }
513 496
514 /** 497 /**
515 * Construtor 498 * Construtor
@@ -608,6 +591,7 @@ class PenAtualizarSipRN extends PenAtualizadorRN { @@ -608,6 +591,7 @@ class PenAtualizarSipRN extends PenAtualizadorRN {
608 } 591 }
609 } 592 }
610 593
  594 + $this->finalizar('FIM');
611 InfraDebug::getInstance()->setBolDebugInfra(true); 595 InfraDebug::getInstance()->setBolDebugInfra(true);
612 } catch (Exception $e) { 596 } catch (Exception $e) {
613 597
@@ -635,17 +619,24 @@ class PenAtualizarSipRN extends PenAtualizadorRN { @@ -635,17 +619,24 @@ class PenAtualizarSipRN extends PenAtualizadorRN {
635 * 619 *
636 * @return null 620 * @return null
637 */ 621 */
638 - protected function finalizar() {  
639 -  
640 - $this->logar('TEMPO TOTAL DE EXECUCAO: ' . InfraUtil::verificarTempoProcessamento($this->numSeg) . ' s'); 622 + protected function finalizar($strMsg=null, $bolErro=false){
  623 + if (!$bolErro) {
  624 + $this->numSeg = InfraUtil::verificarTempoProcessamento($this->numSeg);
  625 + $this->logar('TEMPO TOTAL DE EXECUCAO: ' . $this->numSeg . ' s');
  626 + }else{
  627 + $strMsg = 'ERRO: '.$strMsg;
  628 + }
641 629
642 - $this->objDebug->setBolLigado(false);  
643 - $this->objDebug->setBolDebugInfra(false);  
644 - $this->objDebug->setBolEcho(false); 630 + if ($strMsg!=null){
  631 + $this->logar($strMsg);
  632 + }
645 633
646 - print PHP_EOL;  
647 - die();  
648 - } 634 + InfraDebug::getInstance()->setBolLigado(false);
  635 + InfraDebug::getInstance()->setBolDebugInfra(false);
  636 + InfraDebug::getInstance()->setBolEcho(false);
  637 + $this->numSeg = 0;
  638 + die;
  639 + }
649 640
650 /** 641 /**
651 * Adiciona uma mensagem ao output para o usuário 642 * Adiciona uma mensagem ao output para o usuário