Commit 78fbda4403eb5c817ab466808a274c570f4a03a9
1 parent
d64310a1
Exists in
master
and in
1 other branch
[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 | ... | ... |