Commit 78fbda4403eb5c817ab466808a274c570f4a03a9

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

[Feat] Adicionando atributo para informar se o documento pode ser visualizado.

Showing 1 changed file with 40 additions and 1 deletions   Show diff stats
rn/MdWsSeiDocumentoRN.php
... ... @@ -103,6 +103,8 @@ class MdWsSeiDocumentoRN extends InfraRN {
103 103 $ciencia = $relProtocoloProtocoloDTO->getStrSinCiencia();
104 104 }
105 105  
  106 + $podeVisualizarDocumento = $this->podeVisualizarDocumento($documentoDTO);
  107 +
106 108 $result[] = array(
107 109 'id' => $documentoDTO->getDblIdDocumento(),
108 110 'atributos' => array(
... ... @@ -124,7 +126,8 @@ class MdWsSeiDocumentoRN extends InfraRN {
124 126 'documentoPublicado' => $documentoPublicado,
125 127 'documentoAssinado' => $documentoDTO->getStrCrcAssinatura() ? 'S' : 'N',
126 128 'ciencia' => $ciencia,
127   - 'documentoCancelado' => $documentoCancelado
  129 + 'documentoCancelado' => $documentoCancelado,
  130 + 'podeVisualizarDocumento' => $podeVisualizarDocumento
128 131 )
129 132 )
130 133 );
... ... @@ -373,4 +376,40 @@ class MdWsSeiDocumentoRN extends InfraRN {
373 376 }
374 377 }
375 378  
  379 + /**
  380 + * Verifica se o documento pode ser visualizado
  381 + * @param DocumentoDTO $documentoDTO
  382 + * @return bool
  383 + */
  384 + protected function podeVisualizarDocumento(DocumentoDTO $documentoDTO)
  385 + {
  386 + $bolFlagProtocolo = false;
  387 + $numCodigoAcesso = 0;
  388 + $unidadeDTO = new UnidadeDTO();
  389 + $unidadeDTO->setBolExclusaoLogica(false);
  390 + $unidadeDTO->retStrSinProtocolo();
  391 + $unidadeDTO->retStrSinOuvidoria();
  392 + $unidadeDTO->retStrSinArquivamento();
  393 + $unidadeDTO->setNumIdUnidade(SessaoSEI::getInstance()->getNumIdUnidadeAtual());
  394 +
  395 + $unidadeRN = new UnidadeRN();
  396 + $unidadeDTO = $unidadeRN->consultarRN0125($unidadeDTO);
  397 + $bolFlagProtocolo = ($unidadeDTO->getStrSinProtocolo() == 'S');
  398 +
  399 + $pesquisaProtocoloDTO = new PesquisaProtocoloDTO();
  400 + $pesquisaProtocoloDTO->setStrStaTipo(ProtocoloRN::$TPP_PROCEDIMENTOS);
  401 + $pesquisaProtocoloDTO->setStrStaAcesso(ProtocoloRN::$TAP_TODOS);
  402 + $pesquisaProtocoloDTO->setDblIdProtocolo($documentoDTO->getDblIdProcedimento());
  403 +
  404 + $protocoloRN = new ProtocoloRN();
  405 + $arrProtocoloDTO = InfraArray::indexarArrInfraDTO($protocoloRN->pesquisarRN0967($pesquisaProtocoloDTO),'IdProtocolo');
  406 + if($arrProtocoloDTO){
  407 + $numCodigoAcesso = $arrProtocoloDTO[$documentoDTO->getDblIdProcedimento()]->getNumCodigoAcesso();
  408 + if ($numCodigoAcesso > 0 || $bolFlagProtocolo) {
  409 + return true;
  410 + }
  411 + }
  412 +
  413 + return false;
  414 + }
376 415 }
377 416 \ No newline at end of file
... ...