Commit ec6003f2a307bf2be3e6c71204e98b28ce6b2a72

Authored by root
1 parent 15823b63

[UPD] - ENVIO PROCESSO ANEXO

pen_procedimento_expedir.php
... ... @@ -110,7 +110,8 @@ try {
110 110 $strNomeUnidadeDestino = $_POST['txtUnidade'];
111 111 $numIdMotivoUrgente = $_POST['selMotivosUrgencia'];
112 112 $boolSinUrgente = $objPaginaSEI->getCheckbox($_POST['chkSinUrgente'], true, false);
113   - $arrIdProcedimentosApensados = $objPaginaSEI->getArrValuesSelect($_POST['hdnProcedimentosApensados']);
  113 + //aqui
  114 + //$arrIdProcedimentosApensados = $objPaginaSEI->getArrValuesSelect(37);
114 115  
115 116 //Carregar dados do procedimento na primeiro acesso à página
116 117 if (!isset($_POST['hdnIdProcedimento'])) {
... ... @@ -130,6 +131,9 @@ try {
130 131 // $objPaginaSEI->processarExcecao($e);
131 132 // }
132 133  
  134 +
  135 +
  136 +
133 137 $numIdProcedimento = $objProcedimentoDTO->getDblIdProcedimento();
134 138 $strProtocoloProcedimentoFormatado = $objProcedimentoDTO->getStrProtocoloProcedimentoFormatado();
135 139 }
... ... @@ -140,6 +144,29 @@ try {
140 144 //Tratamento da ação de expedir o procedimento
141 145 if(isset($_POST['sbmExpedir'])) {
142 146  
  147 + //Consulta do ID Pai
  148 + $objRelProtocoloProtocoloDTO1 = new RelProtocoloProtocoloDTO();
  149 + $objRelProtocoloProtocoloDTO1->setDblIdProtocolo1($idProcedimento);
  150 + $objRelProtocoloProtocoloDTO1->setStrStaAssociacao(RelProtocoloProtocoloRN ::$TA_PROCEDIMENTO_ANEXADO);
  151 + $objRelProtocoloProtocoloDTO1->retDblIdProtocolo1();
  152 + $objRelProtocoloProtocoloDTO1->retDblIdProtocolo2();
  153 +
  154 + /*
  155 + * Consulta processos que estão anexados no processo pai
  156 + */
  157 + $objRelProtocoloProtocoloRN = new RelProtocoloProtocoloRN();
  158 + $objRelProtocoloProtocoloDTOAux = new RelProtocoloProtocoloDTO();
  159 + $objRelProtocoloProtocoloDTOAux = $objRelProtocoloProtocoloRN->listarRN0187($objRelProtocoloProtocoloDTO1);
  160 + $arrIdProtocolosAnexados = null;
  161 +
  162 + // Cria um array com os id's dos processo anexados
  163 + if(!empty($objRelProtocoloProtocoloDTOAux)) {
  164 + foreach ($objRelProtocoloProtocoloDTOAux as $objProtocoloAnexado) {
  165 + $arrIdProtocolosAnexados[] = $objProtocoloAnexado->getDblIdProtocolo2();
  166 + }
  167 + }
  168 +
  169 +
143 170 $strTituloPagina = "Envio externo do processo $strProtocoloProcedimentoFormatado";
144 171 $objPaginaSEI->prepararBarraProgresso($strTitulo, $strTituloPagina);
145 172  
... ... @@ -155,7 +182,8 @@ try {
155 182 $objExpedirProcedimentoDTO->setStrRepositorioDestino($strRepositorio);
156 183 $objExpedirProcedimentoDTO->setNumIdUnidadeDestino($numIdUnidadeDestino);
157 184 $objExpedirProcedimentoDTO->setStrUnidadeDestino($strNomeUnidadeDestino);
158   - $objExpedirProcedimentoDTO->setArrIdProcessoApensado($arrIdProcedimentosApensados);
  185 + // $objExpedirProcedimentoDTO->setArrIdProcessoApensado($arrIdProcedimentosApensados);
  186 + $objExpedirProcedimentoDTO->setArrIdProcessoApensado($arrIdProtocolosAnexados);
159 187 $objExpedirProcedimentoDTO->setBolSinUrgente($boolSinUrgente);
160 188 $objExpedirProcedimentoDTO->setDblIdProcedimento($numIdProcedimento);
161 189 $objExpedirProcedimentoDTO->setNumIdMotivoUrgencia($numIdMotivoUrgente);
... ... @@ -516,6 +544,9 @@ function enviarForm(el){
516 544 alert(strRespMensagem);
517 545 return false;
518 546 }
  547 + // if(resp.hope){
  548 + // alert(JSON.parse(resp.hope));
  549 + // }
519 550 var strAction = '<?php print $objPaginaSEI->formatarXHTML($objSessaoSEI->assinarLink('controlador.php?acao='.$_GET['acao'] . '&acao_origem=' . $_GET['acao'] . '&acao_destino=' . $_GET['acao'] .'&'.$strParametros.'&executar=1')); ?>';
520 551 abrirBarraProgresso(document.forms['frmExpedirProcedimento'], strAction, 600, 200);
521 552 }
... ...
pen_procedimento_expedir_validar.php
... ... @@ -42,12 +42,26 @@ try {
42 42 $objRelProtocoloProtocoloDTO1->setDblIdProtocolo1($dblIdProcedimento);
43 43 $objRelProtocoloProtocoloDTO1->setStrStaAssociacao(RelProtocoloProtocoloRN ::$TA_PROCEDIMENTO_ANEXADO);
44 44 $objRelProtocoloProtocoloDTO1->retDblIdProtocolo1();
  45 + $objRelProtocoloProtocoloDTO1->retDblIdProtocolo2();
45 46  
46 47 //Consulta do ID Filhos
47 48 $objRelProtocoloProtocoloDTO2 = new RelProtocoloProtocoloDTO();
48 49 $objRelProtocoloProtocoloDTO2->setDblIdProtocolo2($dblIdProcedimento);
49 50 $objRelProtocoloProtocoloDTO2->setStrStaAssociacao(RelProtocoloProtocoloRN ::$TA_PROCEDIMENTO_ANEXADO);
50 51 $objRelProtocoloProtocoloDTO2->retDblIdProtocolo2();
  52 + /*
  53 + * Consulta processos que estão anexados no processo pai
  54 + */
  55 + $objRelProtocoloProtocoloDTOAux = new RelProtocoloProtocoloDTO();
  56 + $objRelProtocoloProtocoloDTOAux = $objRelProtocoloProtocoloRN->listarRN0187($objRelProtocoloProtocoloDTO1);
  57 + $arrIdProtocolosAnexados = null;
  58 +
  59 + // Cria um array com os id's dos processo anexados
  60 + if(!empty($objRelProtocoloProtocoloDTOAux)) {
  61 + foreach ($objRelProtocoloProtocoloDTOAux as $objProtocoloAnexado) {
  62 + $arrIdProtocolosAnexados[] = $objProtocoloAnexado->getDblIdProtocolo2();
  63 + }
  64 + }
51 65  
52 66 $numCount1 = $objRelProtocoloProtocoloRN->contarRN0843($objRelProtocoloProtocoloDTO1);
53 67 $numCount2 = $objRelProtocoloProtocoloRN->contarRN0843($objRelProtocoloProtocoloDTO2);
... ... @@ -55,9 +69,9 @@ try {
55 69 if ($numCount1 > 0 && $numCount2 > 0) {
56 70 $objInfraException->adicionarValidacao('Esse processo está anexado a outro processo e possui outros em anexo, portanto não pode ser tramitado.', $strProtocoloFormatado);
57 71 } else {
58   - if ($numCount1 > 0) {
59   - $objInfraException->adicionarValidacao('Esse processo possuí outros em anexo, portanto não pode ser tramitado externamente.', $strProtocoloFormatado);
60   - }
  72 +// if ($numCount1 > 0) {
  73 +// $objInfraException->adicionarValidacao('Esse processo possuí outros em anexo, portanto não pode ser tramitado externamente.', $strProtocoloFormatado);
  74 +// }
61 75  
62 76 if ($numCount2 > 0) {
63 77 $objInfraException->adicionarValidacao('Esse processo está anexado a outro processo, portanto não pode ser tramitado.', $strProtocoloFormatado);
... ... @@ -83,9 +97,9 @@ try {
83 97 $objExpedirProcedimentosRN->validarPreCondicoesExpedirProcedimento($objInfraException, $objProcedimentoDTO, $strProtocoloFormatado);
84 98  
85 99 // Processos apensados
86   - if(array_key_exists('selProcedimentosApensados', $_POST) && is_array($_POST['selProcedimentosApensados'])){
  100 + if($arrIdProtocolosAnexados){
87 101  
88   - foreach($_POST['selProcedimentosApensados'] as $dblIdProcedimento) {
  102 + foreach($arrIdProtocolosAnexados as $dblIdProcedimento) {
89 103  
90 104 $objProcedimentoDTO = $objExpedirProcedimentosRN->consultarProcedimento($dblIdProcedimento);
91 105  
... ... @@ -120,6 +134,9 @@ if($objInfraException-&gt;contemValidacoes()) {
120 134 }
121 135 else {
122 136 $arrResponse['sucesso'] = true;
  137 + if($arrIdProtocolosAnexados){
  138 + $arrResponse['arrayIdProtocolosAnexados'] = $arrIdProtocolosAnexados;
  139 + }
123 140 }
124 141  
125 142 print json_encode($arrResponse);
... ...
rn/ExpedirProcedimentoRN.php
... ... @@ -352,6 +352,7 @@ class ExpedirProcedimentoRN extends InfraRN {
352 352 //Registra andamento para processos apensados que foram expedidos
353 353 if(isset($objProcesso->processoApensado) && is_array($objProcesso->processoApensado)) {
354 354 foreach($objProcesso->processoApensado as $objProcessoApensado) {
  355 +
355 356 $this->registrarAndamentoExpedicaoProcesso($objExpedirProcedimentoDTO, $objProcessoApensado);
356 357 }
357 358 }
... ... @@ -441,8 +442,13 @@ class ExpedirProcedimentoRN extends InfraRN {
441 442 $this->atribuirDataHoraDeRegistro($objProcesso, $objProcedimentoDTO->getDblIdProcedimento());
442 443 $this->atribuirDocumentos($objProcesso, $dblIdProcedimento, $parObjMetadadosTramiteAnterior);
443 444 $this->atribuirDadosInteressados($objProcesso, $dblIdProcedimento);
444   - $this->adicionarProcessosApensados($objProcesso, $arrIdProcessoApensado);
445   -
  445 + /*
  446 + * Verificação adicionada pois a função construirProcesso
  447 + * possui chamada recursiva dentro da função adicionarProcessosApensados
  448 + */
  449 + if($arrIdProcessoApensado) {
  450 + $this->adicionarProcessosApensados($objProcesso, $arrIdProcessoApensado);
  451 + }
446 452 $objProcesso->idProcedimentoSEI = $dblIdProcedimento;
447 453 return $objProcesso;
448 454 }
... ... @@ -1422,12 +1428,12 @@ class ExpedirProcedimentoRN extends InfraRN {
1422 1428  
1423 1429 private function adicionarProcessosApensados($objProcesso, $arrIdProcessoApensado)
1424 1430 {
1425   - if(isset($arrIdProcessoApensado) && is_array($arrIdProcessoApensado) && count($arrIdProcessoApensado) > 0) {
1426   - $objProcesso->processoApensado = array();
1427   - foreach($arrIdProcessoApensado as $idProcedimentoApensado) {
1428   - $objProcesso->processoApensado[] = $this->construirProcesso($idProcedimentoApensado);
1429   - }
1430   - }
  1431 +// if(isset($arrIdProcessoApensado) && is_array($arrIdProcessoApensado) && count($arrIdProcessoApensado) > 0) {
  1432 +// $objProcesso->processoApensado = array();
  1433 +// foreach($arrIdProcessoApensado as $idProcedimentoApensado) {
  1434 +// $objProcesso->processoApensado[] = $this->construirProcesso($idProcedimentoApensado);
  1435 +// }
  1436 +// }
1431 1437 }
1432 1438  
1433 1439 private function consultarUnidade($numIdUnidade)
... ...