Commit da01dbbcce76ebf6ee15125826d64364edde3d86

Authored by eduardo.batista
1 parent 1b284b18
Exists in master and in 1 other branch desenv

[Feat] Adicionando atributos ao processo e atributo que informa se um processo p…

…ode ser reaberto ou não.
Showing 1 changed file with 47 additions and 19 deletions   Show diff stats
rn/MdWsSeiProcedimentoRN.php
... ... @@ -437,6 +437,12 @@ class MdWsSeiProcedimentoRN extends InfraRN
437 437 $tipoVisualizacao = 'N';
438 438 $retornoProgramado = 'N';
439 439 $retornoAtrasado = 'N';
  440 + $processoAberto = false;
  441 + $acaoReabrirProcesso = SessaoSEI::getInstance()->verificarPermissao('procedimento_reabrir');
  442 + $processoEmTramitacao = false;
  443 + $processoSobrestado = false;
  444 + $processoAnexado = false;
  445 + $podeReabrirProcesso = false;
440 446 $arrDadosAbertura = array();
441 447 $procedimentoDTO = null;
442 448 $resultAnotacao = array();
... ... @@ -513,17 +519,6 @@ class MdWsSeiProcedimentoRN extends InfraRN
513 519 }
514 520 }
515 521 if ($arrAtividadePendenciaDTO) {
516   - $anotacaoDTO = $procedimentoDTO->getObjAnotacaoDTO();
517   - if($anotacaoDTO){
518   - $resultAnotacao[] = array(
519   - 'idProtocolo' => $anotacaoDTO->getDblIdProtocolo(),
520   - 'descricao' => $anotacaoDTO->getStrDescricao(),
521   - 'idUsuario' => $anotacaoDTO->getNumIdUsuario(),
522   - 'sinPrioridade' => $anotacaoDTO->getStrSinPrioridade(),
523   - 'staAnotacao' => $anotacaoDTO->getStrStaAnotacao()
524   - );
525   - }
526   -
527 522 $atividadePendenciaDTO = $arrAtividadePendenciaDTO[0];
528 523 if ($atividadePendenciaDTO->getNumTipoVisualizacao() & AtividadeRN::$TV_REMOCAO_SOBRESTAMENTO) {
529 524 $processoRemocaoSobrestamento = 'S';
... ... @@ -594,9 +589,7 @@ class MdWsSeiProcedimentoRN extends InfraRN
594 589 $anotacaoDTOConsulta->retStrStaAnotacao();
595 590 $anotacaoDTOConsulta->retNumIdAnotacao();
596 591 $anotacaoDTOConsulta->setDblIdProtocolo($protocoloDTO->getDblIdProtocolo());
597   - //
598 592 $anotacaoDTOConsulta->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual());
599   - //$anotacaoDTOConsulta->setNumIdUnidade($protocoloDTO->getNumIdUnidadeGeradora());
600 593 $arrAnotacao = $anotacaoRN->listar($anotacaoDTOConsulta);
601 594 $possuiAnotacao = count($arrAnotacao) ? 'S' : 'N';
602 595 foreach ($arrAnotacao as $anotacaoDTO) {
... ... @@ -606,7 +599,6 @@ class MdWsSeiProcedimentoRN extends InfraRN
606 599 }
607 600 }
608 601 /** @var AnotacaoDTO $anotacaoDTO */
609   - /**
610 602 foreach ($arrAnotacao as $anotacaoDTO) {
611 603 $resultAnotacao[] = array(
612 604 'idAnotacao' => $anotacaoDTO->getNumIdAnotacao(),
... ... @@ -619,7 +611,6 @@ class MdWsSeiProcedimentoRN extends InfraRN
619 611 'staAnotacao' => $anotacaoDTO->getStrStaAnotacao()
620 612 );
621 613 }
622   - **/
623 614 if ($protocoloDTO->getStrStaEstado() != ProtocoloRN::$TE_PROCEDIMENTO_ANEXADO) {
624 615 $procedimentoDTOParam = new ProcedimentoDTO();
625 616 $procedimentoDTOParam->setDblIdProcedimento($protocoloDTO->getDblIdProtocolo());
... ... @@ -630,6 +621,41 @@ class MdWsSeiProcedimentoRN extends InfraRN
630 621 if($protocoloDTO->getStrStaNivelAcessoGlobal() == ProtocoloRN::$NA_SIGILOSO){
631 622 $podeGerenciarCredenciais = SessaoSEI::getInstance()->verificarPermissao('procedimento_credencial_gerenciar') ? 'S' : 'N';
632 623 }
  624 +
  625 + $pesquisaPendenciaDTO = new PesquisaPendenciaDTO();
  626 + $pesquisaPendenciaDTO->setDblIdProtocolo($protocoloDTO->getDblIdProtocolo());
  627 + $pesquisaPendenciaDTO->setNumIdUsuario(SessaoSEI::getInstance()->getNumIdUsuario());
  628 + $pesquisaPendenciaDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual());
  629 + $pesquisaPendenciaDTO->setStrSinMontandoArvore('S');
  630 + $pesquisaPendenciaDTO->setStrSinRetornoProgramado('S');
  631 +
  632 + $processoEmTramitacao = $processoAberto = count($atividadeRN->listarPendenciasRN0754($pesquisaPendenciaDTO)) == 1;
  633 + if ($protocoloDTO->getNumIdUnidadeGeradora() == SessaoSEI::getInstance()->getNumIdUnidadeAtual()){
  634 + $processoEmTramitacao = true;
  635 + }else{
  636 + $atividadeDTO = new AtividadeDTO();
  637 + $atividadeDTO->retNumIdAtividade();
  638 + $atividadeDTO->setNumIdUnidadeOrigem(SessaoSEI::getInstance()->getNumIdUnidadeAtual(),InfraDTO::$OPER_DIFERENTE);
  639 + $atividadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual());
  640 + $atividadeDTO->setDblIdProtocolo($protocoloDTO->getDblIdProtocolo());
  641 + $atividadeDTO->setNumMaxRegistrosRetorno(1);
  642 +
  643 + if ($atividadeRN->consultarRN0033($atividadeDTO)!=null){
  644 + $processoEmTramitacao = true;
  645 + }
  646 + }
  647 + if ($protocoloDTO->getStrStaEstado() == ProtocoloRN::$TE_PROCEDIMENTO_SOBRESTADO){
  648 + if ($processoAberto){
  649 + $processoAberto = false;
  650 + }
  651 + $processoSobrestado = true;
  652 + }else if($protocoloDTO->getStrStaEstado()==ProtocoloRN::$TE_PROCEDIMENTO_ANEXADO){
  653 + $processoAnexado = true;
  654 + }
  655 + if (!$processoAberto && $acaoReabrirProcesso && $processoEmTramitacao && !$processoSobrestado && !$processoAnexado) {
  656 + $podeReabrirProcesso = true;
  657 + }
  658 +
633 659 $objInfraParametro = new InfraParametro(BancoSEI::getInstance());
634 660  
635 661 $result[] = array(
... ... @@ -661,16 +687,18 @@ class MdWsSeiProcedimentoRN extends InfraRN
661 687 'retornoData' => $retornoData,
662 688 'retornoAtrasado' => $retornoAtrasado,
663 689 'processoAcessadoUsuario' => $tipoVisualizacao,
664   - // foi invertido o processoAcessadoUsuario e processoAcessadoUnidade,
665   - // pois em todos os outros metodos e igual e somente neste era diferente...
666 690 'processoAcessadoUnidade' => $usuarioVisualizacao,
667   - //Novos Status de Processo igual listagem
668 691 'processoRemocaoSobrestamento' => $processoRemocaoSobrestamento,
669 692 'processoBloqueado' => $processoBloqueado,
670 693 'processoDocumentoIncluidoAssinado' => $processoDocumentoIncluidoAssinado,
671 694 'processoPublicado' => $processoPublicado,
672 695 'nivelAcessoGlobal' => $protocoloDTO->getStrStaNivelAcessoGlobal(),
673   - 'podeGerenciarCredenciais' => $podeGerenciarCredenciais
  696 + 'podeGerenciarCredenciais' => $podeGerenciarCredenciais,
  697 + 'processoAberto' => $processoAberto ? 'S' : 'N',
  698 + 'processoEmTramitacao' => $processoEmTramitacao ? 'S' : 'N',
  699 + 'processoSobrestado' => $processoSobrestado ? 'S' : 'N',
  700 + 'processoAnexado' => $processoAnexado ? 'S' : 'N',
  701 + 'podeReabrirProcesso' => $podeReabrirProcesso ? 'S' : 'N',
674 702 )
675 703 )
676 704 );
... ...