/** * Método que obtém os dados para grid * @param \Core_Dto_Search $dtoSearch * @return array */ public function getResultList(\Core_Dto_Search $dtoSearch) { $this->view->perfil = Core_Integration_Sica_User::getUserProfile(); $dtoSearch->sqPessoa = Core_Integration_Sica_User::getPersonId(); $dtoSearch->sqUnidadeOrg = Core_Integration_Sica_User::getUserUnit(); $dtoSearch->sqTipoArtefato = $this->getRequest()->getParam('tipoArtefato') ? $this->getRequest()->getParam('tipoArtefato') : 1; $dtoSearch->search = $this->getRequest()->getParam('search') ? $this->getRequest()->getParam('search') : NULL; $this->view->isUserSgi = $this->_isUserSgi(); $this->view->isUnidadePro = $this->getService('AutuarDocumento')->isUnidadeProtocolizadora(false); $this->view->isUserPro = $this->view->perfil == \Core_Configuration::getSgdocePerfilProtocolo(); $this->view->isAllowedAlter = in_array(\Core_Integration_Sica_User::getUserProfile(), $this->getService()->getUsersAllowedAlterArtefact()); $dtoUnidadeOrg = Core_Dto::factoryFromData(array('sqUnidadeOrg' => $dtoSearch->sqUnidadeOrg), 'search'); $dtoSearch->currentUnitHasNUP = $this->getService('VwUnidadeOrg')->hasNUP($dtoUnidadeOrg); $caixa = null; switch (true) { case $this->_getParam('unit_box'): $caixa = $this->_getParam('unit_box'); break; case $this->_getParam('my_box'): $caixa = $this->_getParam('my_box'); break; case $this->_getParam('archive_box'): $caixa = $this->_getParam('archive_box'); break; default: $caixa = $this->_getParam('external_box'); break; } $dtoSearch->caixa = $caixa; $res = $this->getService()->getGrid($dtoSearch); return $res; }
public function canEditArtefact(\Core_Dto_Search $dto, $isProcesso = FALSE) { $repoUTA = $this->_getRepository('app:VwUltimoTramiteArtefato'); $isChild = $this->_getRepository('app:ArtefatoVinculo')->isChild($dto); $isAllowedAlter = in_array(\Core_Integration_Sica_User::getUserProfile(), $this->getUsersAllowedAlterArtefact()); $listTipoAssuntoSolicitacao = array(\Core_Configuration::getSgdoceTipoAssuntoSolicitacaoAlterarCadastro()); $dtoSolicitacao = \Core_Dto::factoryFromData(array('sqArtefato' => $dto->getSqArtefato()), 'search'); $hasDemandaAlteracaoDados = $this->getServiceLocator()->getService('Solicitacao')->hasDemandaAbertaByAssuntoPessoaResponsavel($dtoSolicitacao, $listTipoAssuntoSolicitacao); // Se processo, verifica se existe vinculo além do tipo de autuação $hasProcessoVinculo = false; if ($isProcesso) { $rsVinculosProcesso = $this->_getRepository('app:ArtefatoVinculo')->findByNot(array('sqArtefatoPai' => $dto->getSqArtefato()), array('sqTipoVinculoArtefato' => \Core_Configuration::getSgdoceTipoVinculoArtefatoAutuacao())); $hasProcessoVinculo = count($rsVinculosProcesso); } //se $areaTrabalho, logo, esta na area da pessoa logada //caso contrario retorna NULL $areaTrabalho = $this->_getRepository()->findArtefato($dto); //SGI pode alterar o documento se houver demanda de suporte do tipo alterar dados ou alterar grau ou se estiver na minha da area de trabalho dele. if ($isAllowedAlter && $hasDemandaAlteracaoDados || $isAllowedAlter && $areaTrabalho) { return TRUE; } if ($areaTrabalho && $repoUTA->isFirstTramite($dto) && (!$areaTrabalho->getHasVinculo() || !$hasProcessoVinculo) && !$areaTrabalho->getArquivado() && !$areaTrabalho->getHasSolicitacaoAberta() && !$isChild) { return TRUE; } return FALSE; }
public function changeSystem() { $urlSistema = rtrim(Zend_Controller_Front::getInstance()->getParam('bootstrap')->getOption('urlSica'), '/'); $session = (int) Core_Integration_Sica_User::getUserProfile(); $sqSistema = (int) Core_Integration_Sica_User::getUserSystem(); if ($session > 1) { return '<li><a href="' . $urlSistema . '/sistema/change-system/sqSistema/' . $sqSistema . '">Alterar Perfil</a></li>'; } }
public function init() { $sqPerfil = \Core_Integration_Sica_User::getUserProfile(); if ($sqPerfil) { $this->_sqTipoPerfil = $this->getService('Perfil')->find($sqPerfil)->getSqTipoPerfil()->getSqTipoPerfil(); parent::init(); } else { $this->_redirect('/usuario/login'); } }
/** * Método que obtém os dados para grid * @param \Core_Dto_Search $dtoSearch * @return array */ public function getResultList(\Core_Dto_Search $dtoSearch) { $this->view->perfil = Core_Integration_Sica_User::getUserProfile(); $dtoSearch->sqPessoa = Core_Integration_Sica_User::getPersonId(); $dtoSearch->sqUnidadeOrg = Core_Integration_Sica_User::getUserUnit(); $dtoSearch->sqTipoArtefato = $this->getRequest()->getParam('tipoArtefato') ? $this->getRequest()->getParam('tipoArtefato') : 1; $dtoSearch->search = $this->getRequest()->getParam('search') ? $this->getRequest()->getParam('search') : null; $this->view->isUserSgi = $this->_isUserSgi(); $this->view->isUserPro = $this->view->perfil == \Core_Configuration::getSgdocePerfilProtocolo(); $dtoUnidadeOrg = Core_Dto::factoryFromData(array('sqUnidadeOrg' => $dtoSearch->sqUnidadeOrg), 'search'); $dtoSearch->currentUnitHasNUP = $this->getService('VwUnidadeOrg')->hasNUP($dtoUnidadeOrg); $caixa = $this->_getParam('migration_box'); $dtoSearch->caixa = $caixa; $res = $this->getService()->getGrid($dtoSearch); return $res; }
/** * Ação para visualização de imagem de documentos migrados */ public function viewMigrationAction() { $this->getHelper('layout')->setLayout('modal'); $sqArtefato = $this->getRequest()->getParam('id'); // Regras para artefatos de migração. $dtoSearchPai = \Core_Dto::factoryFromData(array('sqArtefato' => $sqArtefato), 'search'); $params = $this->_viewSteps(); $entArtefato = $this->getService("Artefato")->find($params['id']); if ($entArtefato->isProcesso() && $this->getService("Artefato")->isMigracao($dtoSearchPai) && $this->getService("Artefato")->isInconsistent($dtoSearchPai)) { $firstItem = current($this->view->treeviewData); $primeiraPeca = current($firstItem['filhos']); $dtoSearch = \Core_Dto::factoryFromData(array('sqArtefato' => $primeiraPeca['sqArtefatoFilho']), 'search'); $hasImagem = $this->getService()->hasArtefatoImagemAtiva($dtoSearch); if (!$hasImagem) { $this->view->entArtefato = $entArtefato; //recupera a 1ª Peça $entPrimeiraPeca = $this->getService('ArtefatoVinculo')->findOneBy(array('sqArtefatoPai' => $entArtefato->getSqArtefato(), 'sqTipoVinculoArtefato' => \Core_Configuration::getSgdoceTipoVinculoArtefatoAutuacao())); //se não tem 1ª Peça não faz nada if (!$entPrimeiraPeca) { $this->render('fail-image-not-first-piece'); } else { $listSolicitacao = $this->getService()->getSolicitacaoMigracaoImagem($dtoSearch); if ($listSolicitacao) { $configs = \Core_Registry::get('configs'); $qtdeTentativa = $configs['migration']['qtdeTentativa']; $entSolicitacao = current($listSolicitacao); if (!$entSolicitacao->getStProcessado() && $entSolicitacao->getInTentativa() == $qtdeTentativa) { $this->render('fail-image-not-process'); } else { $this->render('fail-image-processo'); } } else { $this->render('fail-image-processo'); } } } } $this->view->canOverwrite = false; if (count($this->view->treeviewData) > 0 && !$this->view->hasImage) { $firstItem = current($this->view->treeviewData); $this->view->hasImage = count($firstItem['filhos']) > 0; } if (!$this->view->treeviewData) { $this->view->hasDuplicity = true; } $this->getService('VinculoMigracao')->verificaImagemArvore($this->view->treeviewData); // Verifica se item é de migração e se tem imagem, se não tiver, adicionar uma solicitação de migração de imagem if (isset($params['view']) && $params['view'] == 'migracao') { if ($this->getService("Artefato")->isInconsistent($dtoSearchPai, true)) { $this->view->canOverwrite = true; } $this->view->id = $params['id']; $this->render('view-migracao'); } else { $this->render('view'); } $isAllowedAlter = in_array(\Core_Integration_Sica_User::getUserProfile(), $this->getService()->getUsersAllowedAlterImage()); $inMyDashboard = $this->getService("Artefato")->inMyDashboard($dtoSearchPai->getSqArtefato()); $this->view->canAlterImage = $isAllowedAlter && $inMyDashboard; $this->view->sqTipoArtefato = $entArtefato->getSqTipoArtefatoAssunto()->getSqTipoArtefato()->getSqTipoArtefato(); }
public function indexAction() { $sqPerfil = \Core_Integration_Sica_User::getUserProfile(); if ($sqPerfil) { $this->_sqTipoPerfil = $this->getService('Perfil')->find($sqPerfil)->getSqTipoPerfil()->getSqTipoPerfil(); $this->view->id = $this->_getParam('id'); $this->view->sistemas = $this->getService('Sistema')->systemsActives($this->_sqTipoPerfil, array(2)); } else { $this->_redirect('/usuario/login'); } }