From 1b284b187d7412aeba6b6f2f2411f832a744610e Mon Sep 17 00:00:00 2001 From: eduardo.batista Date: Sat, 30 Sep 2017 09:45:36 -0300 Subject: [PATCH] [Fix] Corrigindo visualizar documento. --- rn/MdWsSeiDocumentoRN.php | 81 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------- 1 file changed, 62 insertions(+), 19 deletions(-) diff --git a/rn/MdWsSeiDocumentoRN.php b/rn/MdWsSeiDocumentoRN.php index 3e08f03..c755f2f 100644 --- a/rn/MdWsSeiDocumentoRN.php +++ b/rn/MdWsSeiDocumentoRN.php @@ -34,6 +34,7 @@ class MdWsSeiDocumentoRN extends InfraRN { } $documentoDTOConsulta->retStrStaNivelAcessoLocalProtocolo(); $documentoDTOConsulta->retDblIdDocumento(); + $documentoDTOConsulta->retStrStaProtocoloProtocolo(); $documentoDTOConsulta->retDblIdProcedimento(); $documentoDTOConsulta->retStrProtocoloDocumentoFormatado(); $documentoDTOConsulta->retStrNumero(); @@ -383,33 +384,75 @@ class MdWsSeiDocumentoRN extends InfraRN { */ protected function podeVisualizarDocumento(DocumentoDTO $documentoDTO) { + $podeVisualizar = false; + $strStaProtocoloProtocolo = $documentoDTO->getStrStaProtocoloProtocolo(); $bolFlagProtocolo = false; $numCodigoAcesso = 0; - $unidadeDTO = new UnidadeDTO(); - $unidadeDTO->setBolExclusaoLogica(false); - $unidadeDTO->retStrSinProtocolo(); - $unidadeDTO->retStrSinOuvidoria(); - $unidadeDTO->retStrSinArquivamento(); - $unidadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual()); - $unidadeRN = new UnidadeRN(); - $unidadeDTO = $unidadeRN->consultarRN0125($unidadeDTO); - $bolFlagProtocolo = ($unidadeDTO->getStrSinProtocolo() == 'S'); + $strNos = ''; + $strNosAcao = ''; + $strJsArrPastas = ''; + $numNo = 0; + $numNoAcao = 0; + $strOcultarAbrirFechar = ''; + $strNumPastasAbertas = ''; + $bolFlagAberto = false; + $bolFlagAnexado = false; + $bolFlagProtocolo = false; + $bolFlagArquivo = false; + $bolFlagTramitacao = false; + $bolFlagSobrestado = false; + $bolFlagBloqueado = false; + $bolErro = false; + $numCodigoAcesso = 0; + + $objProcedimentoDTO = ProcedimentoINT::montarAcoesArvore($documentoDTO->getDblIdProcedimento(), + SessaoSEI::getInstance()->getNumIdUnidadeAtual(), + $bolFlagAberto, + $bolFlagAnexado, + $bolFlagProtocolo, + $bolFlagArquivo, + $bolFlagTramitacao, + $bolFlagSobrestado, + $bolFlagBloqueado, + $numCodigoAcesso, + $numNo, $strNos, + $numNoAcao, $strNosAcao, + $bolErro); + + $arrRelProtocoloProtocoloDTO = $objProcedimentoDTO->getArrObjRelProtocoloProtocoloDTO(); + $arrIdRelProtocoloProtocolo = InfraArray::converterArrInfraDTO($arrRelProtocoloProtocoloDTO ,'IdRelProtocoloProtocolo'); + + $procedimentoDTOConsulta = new ProcedimentoDTO(); + $procedimentoDTOConsulta->setDblIdProcedimento($documentoDTO->getDblIdProcedimento()); + $procedimentoDTOConsulta->setArrObjRelProtocoloProtocoloDTO(InfraArray::gerarArrInfraDTO('RelProtocoloProtocoloDTO','IdRelProtocoloProtocolo',$arrIdRelProtocoloProtocolo)); + $procedimentoDTOConsulta->setStrSinDocTodos('S'); + $procedimentoDTOConsulta->setStrSinDocAnexos('S'); + $procedimentoDTOConsulta->setStrSinConteudoEmail('S'); + $procedimentoDTOConsulta->setStrSinProcAnexados('S'); + $procedimentoDTOConsulta->setStrSinDocCircular('S'); + $procedimentoDTOConsulta->setStrSinArquivamento('S'); + $procedimentoRN = new ProcedimentoRN(); + $arrProcedimentoDTO = $procedimentoRN->listarCompleto($procedimentoDTOConsulta); + $procedimentoDTO = $arrProcedimentoDTO[0]; + $arrRelProtocoloProtocoloDTO = $procedimentoDTO->getArrObjRelProtocoloProtocoloDTO(); $pesquisaProtocoloDTO = new PesquisaProtocoloDTO(); - $pesquisaProtocoloDTO->setStrStaTipo(ProtocoloRN::$TPP_PROCEDIMENTOS); + $pesquisaProtocoloDTO->setStrStaTipo(ProtocoloRN::$TPP_TODOS); $pesquisaProtocoloDTO->setStrStaAcesso(ProtocoloRN::$TAP_TODOS); - $pesquisaProtocoloDTO->setDblIdProtocolo($documentoDTO->getDblIdProcedimento()); - + $pesquisaProtocoloDTO->setDblIdProtocolo(InfraArray::converterArrInfraDTO($arrRelProtocoloProtocoloDTO,'IdProtocolo2')); $protocoloRN = new ProtocoloRN(); - $arrProtocoloDTO = InfraArray::indexarArrInfraDTO($protocoloRN->pesquisarRN0967($pesquisaProtocoloDTO),'IdProtocolo'); - if($arrProtocoloDTO){ - $numCodigoAcesso = $arrProtocoloDTO[$documentoDTO->getDblIdProcedimento()]->getNumCodigoAcesso(); - if ($numCodigoAcesso > 0 || $bolFlagProtocolo) { - return true; - } + $arrProtocoloDTO = InfraArray::indexarArrInfraDTO($protocoloRN->pesquisarRN0967($pesquisaProtocoloDTO), 'IdProtocolo'); + $protocoloDTODocumento = $arrProtocoloDTO[$documentoDTO->getDblIdDocumento()]; + + $numCodigoAcesso = $protocoloDTODocumento->getNumCodigoAcesso(); + if ($numCodigoAcesso > 0 || $bolFlagProtocolo) { + $podeVisualizar = true; + } + if ($documentoDTO->getStrStaEstadoProtocolo() == ProtocoloRN::$TE_DOCUMENTO_CANCELADO) { + $podeVisualizar = false; } - return false; + return $podeVisualizar; } } \ No newline at end of file -- libgit2 0.21.2