本文整理汇总了PHP中Core_Configuration::getSgdoceTipoArtefatoProcesso方法的典型用法代码示例。如果您正苦于以下问题:PHP Core_Configuration::getSgdoceTipoArtefatoProcesso方法的具体用法?PHP Core_Configuration::getSgdoceTipoArtefatoProcesso怎么用?PHP Core_Configuration::getSgdoceTipoArtefatoProcesso使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Core_Configuration
的用法示例。
在下文中一共展示了Core_Configuration::getSgdoceTipoArtefatoProcesso方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: preInsert
/**
* @param Core_Model_Entity_Abstract $entity
* @param type $dto
*/
public function preInsert($entity, $searchDto = null, $artefatoProcesso = null, $digital = null)
{
if ($this->isDocumentoAutuado($searchDto->getNuDigitalAutuado())) {
throw new \Exception("Documento já autuado.");
}
$configs = \Core_Registry::get('configs');
$nuArtefato = null;
if ($configs['processo']['numberWithNupSiorg']) {
// ATRUBUI NU NUP DA DIGITAL
$nuNupSiorg = $digital->getNuDigital()->getNuNupSiorg();
if ($nuNupSiorg == '') {
throw new \Exception("Número Nup Siorg não definido.");
}
$nuArtefato = $nuNupSiorg;
} else {
$nuArtefato = $this->getServiceLocator()->getService('ProcessoEletronico')->getNovoNumeroProcesso();
$this->getServiceLocator()->getService('SequencialArtefato')->setSequencialProcesso(\Core_Integration_Sica_User::getUserUnit());
}
$entity->setNuArtefato($nuArtefato);
// PESQUISA TIPO ARTEFATO ASSUNTO.
$sqTpArtAssunto = $this->_getRepository('app:TipoArtefatoAssunto')->findOneBy(array('sqAssunto' => $searchDto->getSqAssunto(), 'sqTipoArtefato' => \Core_Configuration::getSgdoceTipoArtefatoProcesso()));
if (!$sqTpArtAssunto) {
$entityAssunto = $this->getEntityManager()->getPartialReference('app:Assunto', $searchDto->getSqAssunto());
$entityTipoArtefato = $this->getEntityManager()->getPartialReference('app:TipoArtefato', \Core_Configuration::getSgdoceTipoArtefatoProcesso());
$sqTpArtAssunto = $this->_newEntity('app:TipoArtefatoAssunto');
$sqTpArtAssunto->setSqAssunto($entityAssunto);
$sqTpArtAssunto->setSqTipoArtefato($entityTipoArtefato);
// persistindo informacao
$this->getEntityManager()->persist($sqTpArtAssunto);
$this->getEntityManager()->flush($sqTpArtAssunto);
}
$entity->setSqTipoArtefatoAssunto($sqTpArtAssunto);
$entity->setDtCadastro(\Zend_Date::now());
$entity->setInEletronico(false);
// trantando atributos
if ($searchDto->getInDiasCorridos() == '1') {
//Corridos
$entity->setInDiasCorridos(TRUE);
} else {
if ($searchDto->getInDiasCorridos() == '0') {
//Uteis
$entity->setInDiasCorridos(FALSE);
} else {
$entity->setInDiasCorridos(NULL);
}
}
## Tipo Prioridade ##
$entSqTipoPrioridade = $this->getEntityManager()->getPartialReference('app:TipoPrioridade', $entity->getSqTipoPrioridade());
$entity->setSqTipoPrioridade($entSqTipoPrioridade);
}
示例2: listGrid
/**
*
* @param \Core_Dto_Search $dto
* @return \Doctrine\DBAL\Query\QueryBuilder
*/
public function listGrid(\Core_Dto_Search $dto)
{
$rsm = new \Doctrine\ORM\Query\ResultSetMapping();
$rsm->addScalarResult('total_record', 'totalRecord', 'integer');
$rsm->addScalarResult('sq_artefato', 'sqArtefato', 'integer');
$rsm->addScalarResult('digital_numero', 'digitalNumero', 'string');
$rsm->addScalarResult('dt_arquivamento', 'dtArquivamento', 'zenddate');
$rsm->addScalarResult('no_pessoa_arquivamento', 'noPessoaArquivamento', 'string');
$rsm->addScalarResult('tx_assunto', 'txAssunto', 'string');
$rsm->addScalarResult('no_tipo_documento', 'noTipoDocumento', 'string');
$rsm->addScalarResult('no_pessoa_origem', 'noPessoaOrigem', 'string');
$caseNuDigital = "sgdoce.formata_numero_digital(a.nu_digital)";
$sql = "\n SELECT DISTINCT\n COUNT(a.sq_artefato) OVER() AS total_record\n ,a.sq_artefato\n ,COALESCE({$caseNuDigital}, formata_numero_artefato(a.nu_artefato,ap.co_ambito_processo)) AS digital_numero\n ,dt_arquivamento\n ,p.no_pessoa as no_pessoa_arquivamento\n ,ass.tx_assunto\n ,td.no_tipo_documento\n ,ps.no_pessoa AS no_pessoa_origem\n FROM artefato_arquivo_setorial aas\n JOIN vw_pessoa p ON aas.sq_pessoa_arquivamento = p.sq_pessoa\n JOIN artefato a USING(sq_artefato)\n JOIN sgdoce.tipo_artefato_assunto taa USING(sq_tipo_artefato_assunto)\n JOIN sgdoce.assunto ass ON ass.sq_assunto = taa.sq_assunto\n JOIN sgdoce.pessoa_artefato pa ON pa.sq_artefato = a.sq_artefato and pa.sq_pessoa_funcao = %1\$d\n JOIN sgdoce.pessoa_sgdoce ps ON ps.sq_pessoa_sgdoce = pa.sq_pessoa_sgdoce\n LEFT JOIN artefato_processo ap ON a.sq_artefato = ap.sq_artefato\n LEFT JOIN tipo_documento td USING(sq_tipo_documento)\n WHERE dt_desarquivamento IS NULL\n AND sq_unidade_arquivamento = %2\$d\n AND sq_tipo_artefato = %3\$d\n %4\$s\n ORDER BY dt_arquivamento DESC";
$optionalCondition = '';
$search = mb_strtolower($dto->getSearch(), 'UTF-8');
if ($search) {
$queryBuild = $this->_em->createQueryBuilder();
if ($dto->getSqTipoArtefato() == \Core_Configuration::getSgdoceTipoArtefatoProcesso()) {
$nuArtefato = $this->_em->createQueryBuilder()->expr()->lower("TRANSLATE(a.nu_artefato, './-', '')")->__toString();
$optionalCondition = " AND (" . $queryBuild->expr()->eq('a.nu_artefato', $queryBuild->expr()->literal($search))->__toString() . " OR " . $queryBuild->expr()->eq($nuArtefato, $queryBuild->expr()->literal(str_replace(array('.', '/', '-'), '', $search)))->__toString() . ")";
} else {
$optionalCondition = " AND " . $queryBuild->expr()->eq('a.nu_digital', $search)->__toString();
}
}
$strSql = sprintf($sql, \Core_Configuration::getSgdocePessoaFuncaoOrigem(), \Core_Integration_Sica_User::getUserUnit(), $dto->getSqTipoArtefato(), $optionalCondition);
return $this->_em->createNativeQuery($strSql, $rsm)->useResultCache(false);
}
示例3: listItemsVinculoArtefatoAction
public function listItemsVinculoArtefatoAction(array $tipos = NULL)
{
$tipoDocumento = \Core_Configuration::getSgdoceTipoArtefatoDocumento();
$tipoProcesso = \Core_Configuration::getSgdoceTipoArtefatoProcesso();
$queryBuilder = $this->_em->createQueryBuilder()->select('ta.sqTipoArtefato,ta.noTipoArtefato')->from('app:TipoArtefato', 'ta')->orderBy('ta.noTipoArtefato', 'ASC');
$queryBuilder->andWhere('ta.sqTipoArtefato in(:tipoDocumento,:tipoProcesso)')->setParameters(array('tipoDocumento' => $tipoDocumento, 'tipoProcesso' => $tipoProcesso));
$out = array();
$res = $queryBuilder->getQuery()->getArrayResult();
foreach ($res as $item) {
$out[$item['sqTipoArtefato']] = $item['noTipoArtefato'];
}
return $out;
}
示例4: indexAction
/**
* Método padrão
*/
public function indexAction()
{
$this->_helper->layout->setLayout('modal');
$data['sqArtefato'] = $this->_getParam("sqArtefato");
$dtoArtefato = Core_Dto::factoryFromData($data, 'search');
$this->view->entityArtefato = $this->getService()->find($data['sqArtefato']);
$artefatoInconsistente = $this->getService()->isInconsistent($this->view->entityArtefato, FALSE, TRUE);
if ($artefatoInconsistente) {
$noTipoArtefato = mb_strtolower($this->view->entityArtefato->getSqTipoArtefatoAssunto()->getSqTipoArtefato()->getNoTipoArtefato(), 'utf-8');
$this->getMessaging()->addAlertMessage("Os dados deste {$noTipoArtefato} estão inconsistentes. A correção deve ser feita pelo usuário que estiver com o {$noTipoArtefato} em sua Área de Trabalho.", 'User');
$this->getMessaging()->dispatchPackets();
}
$sqTipoArtefato = $this->view->entityArtefato->getSqTipoArtefatoAssunto()->getSqTipoArtefato()->getSqTipoArtefato();
//monta a arvore de vinculos
$this->view->vinculos = $this->getService('ArtefatoVinculo')->mostarArvore((int) $data['sqArtefato']);
$this->view->urlBack = str_replace(".", "/", $this->getRequest()->getParam('back', ""));
$this->view->dadosOrigem = $this->returnDadosOrigem($dtoArtefato);
$this->view->dadosDestino = $this->returnDadosDestino($dtoArtefato);
if ($sqTipoArtefato == \Core_Configuration::getSgdoceTipoArtefatoProcesso()) {
$criteria = array('sqArtefatoPai' => $dtoArtefato->getSqArtefato(), 'sqTipoVinculoArtefato' => \Core_Configuration::getSgdoceTipoVinculoArtefatoAutuacao());
$this->view->autuacao = $this->getService('ArtefatoVinculo')->findBy($criteria);
$this->view->dadosInteressado = $this->getService('PessoaInterassadaArtefato')->getPessoaInteressadaArtefato($dtoArtefato);
}
$this->view->nacionalidadeDestino = NULL;
if ($this->view->dadosDestino) {
$sqTipoPessoa = $this->view->dadosDestino[0]->getSqPessoaSgdoce()->getSqTipoPessoa()->getSqTipoPessoa();
if ($sqTipoPessoa == \Core_Configuration::getSgdoceTipoPessoaPessoaFisica()) {
$this->view->nacionalidadeDestino = $this->returnNacionalidade($this->view->dadosDestino);
}
}
$this->view->nacionalidadeOrigem = NULL;
if ($this->view->dadosOrigem) {
$sqTipoPessoa = $this->view->dadosOrigem[0]->getSqPessoaSgdoce()->getSqTipoPessoa()->getSqTipoPessoa();
if ($sqTipoPessoa == \Core_Configuration::getSgdoceTipoPessoaPessoaFisica()) {
$this->view->nacionalidadeOrigem = $this->returnNacionalidade($this->view->dadosOrigem);
}
}
if ($this->view->urlBack == "") {
$this->view->urlBack = "javascript:window.close();";
}
// REGISTRO DE VISUALIZAÇÃO DE ARTEFATO. #HistoricoArtefato::save();
// $strMessage = sprintf($this->getServiceLocator()
// ->getService('HistoricoArtefato')
// ->getMessage('MH003'), Core_Integration_Sica_User::getUserName());
//
// $this->_salvarHistoricoArtefato($dtoArtefato->getSqArtefato(),
// \Core_Configuration::getSgdoceSqOcorrenciaVisualizar(),
// $strMessage);
}
示例5: listGrid
/**
*
* @param \Core_Dto_Search $dto
* @return array
*/
public function listGrid(\Core_Dto_Search $dto)
{
$rsm = new \Doctrine\ORM\Query\ResultSetMapping($this->_em);
$rsm->addScalarResult('sq_caixa', 'sqCaixa', 'integer');
$rsm->addScalarResult('sq_artefato', 'sqArtefato', 'integer');
$rsm->addScalarResult('sq_tipo_artefato', 'sqTipoArtefato', 'integer');
$rsm->addScalarResult('nu_artefato', 'nuArtefato', 'string');
$rsm->addScalarResult('no_tipo_documento', 'noTipoDocumento', 'string');
$rsm->addScalarResult('tx_classificacao', 'txClassificacao', 'string');
$rsm->addScalarResult('nu_classificacao', 'nuClassificacao', 'string');
$rsm->addScalarResult('no_pessoa_origem', 'noPessoaOrigem', 'string');
$rsm->addScalarResult('tx_assunto', 'txAssunto', 'string');
$strQuery = sprintf("SELECT ca.sq_caixa\n ,art.sq_artefato\n ,CASE WHEN (taa.sq_tipo_artefato = %d) THEN art.nu_artefato ELSE art.nu_digital::TEXT END AS nu_artefato\n ,td.no_tipo_documento\n ,taa.sq_tipo_artefato\n ,cl.nu_classificacao || ' - ' ||cl.tx_classificacao as tx_classificacao\n\n ,ps.no_pessoa AS no_pessoa_origem\n ,ass.tx_assunto\n FROM caixa_artefato ca\n INNER JOIN caixa cx using(sq_caixa)\n INNER JOIN artefato art using(sq_artefato)\n INNER JOIN tipo_documento td using(sq_tipo_documento)\n INNER JOIN tipo_artefato_assunto taa using(sq_tipo_artefato_assunto)\n INNER JOIN assunto ass using(sq_assunto)\n INNER JOIN artefato_classificacao ac using(sq_artefato)\n INNER JOIN classificacao cl ON ac.sq_classificacao = cl.sq_classificacao\n INNER JOIN pessoa_artefato pa using(sq_artefato)\n INNER JOIN pessoa_sgdoce ps using(sq_pessoa_sgdoce)\n WHERE ca.sq_caixa = %d\n AND pa.sq_pessoa_funcao = %d", \Core_Configuration::getSgdoceTipoArtefatoProcesso(), $dto->getSqCaixa(), \Core_Configuration::getSgdocePessoaFuncaoOrigem());
$nativeQuery = $this->_em->createNativeQuery($strQuery, $rsm);
return $nativeQuery;
}
示例6: modalClassificacaoAction
public function modalClassificacaoAction()
{
$this->getHelper('layout')->disableLayout();
$params = $this->_getAllParams();
$entityArtefato = $this->getService('Artefato')->find($params['sqArtefato']);
$sqTipoArtefato = $entityArtefato->getSqTipoArtefatoAssunto()->getSqTipoArtefato()->getSqTipoArtefato();
if ($sqTipoArtefato == \Core_Configuration::getSgdoceTipoArtefatoProcesso()) {
$nuArtefato = $this->getService('Processo')->formataProcessoAmbitoFederal($entityArtefato);
} else {
$nuArtefato = $entityArtefato->getNuDigital()->getNuEtiqueta();
}
$this->view->nuArtefato = $nuArtefato;
$this->view->entityArtefato = $entityArtefato;
if (isset($params['back'])) {
$this->view->backUrl = str_replace('.', '/', $params['back']);
}
}
示例7: listItemsVinculoArtefatoAction
public function listItemsVinculoArtefatoAction()
{
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender(TRUE);
$data = array();
# filtra o tipo de retorno conforme o tipo do documento base
# Atentar para o tipo do documento base
# BASE -> Recupera
# Regra-1: DOC + DOC
# Regra-2: PROC + PROC
# Regra-3: PROC + DOC
$tipoArtefatoFiltro = array(\Core_Configuration::getSgdoceTipoArtefatoDocumento() => array(\Core_Configuration::getSgdoceTipoArtefatoDocumento()), \Core_Configuration::getSgdoceTipoArtefatoProcesso() => array(\Core_Configuration::getSgdoceTipoArtefatoDocumento(), \Core_Configuration::getSgdoceTipoArtefatoProcesso()));
$arrTipoArtefatoAceito = $tipoArtefatoFiltro[$this->getRequest()->getParam('sqTipoArtefatoParent')];
foreach ($this->getService()->listItemsVinculoArtefatoAction() as $key => $value) {
if (in_array($key, $arrTipoArtefatoAceito)) {
$data[] = array('value' => $key, 'text' => $value);
}
}
$this->_helper->json($data);
}
示例8: listTipoAssuntoSolicitacao
/**
* LISTA DE TIPO DE ASSUNTO DE SOLICITAÇÃO.
*
* @param \Core_Dto_Search $dto
* @param string $sort
* @param string $order
* @return array
*/
public function listTipoAssuntoSolicitacao($dto, $sort = 'a.noTipoAssuntoSolicitacao', $order = 'ASC')
{
$queryBuilder = $this->_em->createQueryBuilder()->select('a.sqTipoAssuntoSolicitacao, a.noTipoAssuntoSolicitacao, a.inTipoParaArtefato')->from('app:TipoAssuntoSolicitacao', 'a')->orderBy($sort, $order);
if ($dto->getQuery() != "") {
$search = mb_strtolower($dto->getQuery(), 'UTF-8');
$noTipoAssuntoSolicitacao = $queryBuilder->expr()->lower($queryBuilder->expr()->trim('a.noTipoAssuntoSolicitacao'));
$queryBuilder->where($queryBuilder->expr()->like('clear_accentuation(' . $noTipoAssuntoSolicitacao . ')', $queryBuilder->expr()->literal($this->removeAccent('%' . $search . '%'))));
}
$inTipoParaArtefato = $dto->getInTipoParaArtefato();
if (!is_null($inTipoParaArtefato)) {
$paraArtefato = $dto->getInTipoParaArtefato() > 0 ? '1' : '0';
$queryBuilder->andWhere("a.inTipoParaArtefato = :inTipoParaArtefato")->setParameter(":inTipoParaArtefato", $paraArtefato);
if ($paraArtefato) {
$arrAssuntoProcesso = array(\Core_Configuration::getSgdoceTipoAssuntoSolicitacaoComentario(), \Core_Configuration::getSgdoceTipoAssuntoSolicitacaoDespacho(), \Core_Configuration::getSgdoceTipoAssuntoSolicitacaoAlterarCadastro(), \Core_Configuration::getSgdoceTipoAssuntoSolicitacaoVolumeDeProcesso(), \Core_Configuration::getSgdoceTipoAssuntoSolicitacaoDesanexaProcesso(), \Core_Configuration::getSgdoceTipoAssuntoSolicitacaoDesmembraPecas(), \Core_Configuration::getSgdoceTipoAssuntoSolicitacaoRemoverPeca());
$arrAssuntoDocumento = array(\Core_Configuration::getSgdoceTipoAssuntoSolicitacaoComentario(), \Core_Configuration::getSgdoceTipoAssuntoSolicitacaoAlterarCadastro(), \Core_Configuration::getSgdoceTipoAssuntoSolicitacaoDespacho(), \Core_Configuration::getSgdoceTipoAssuntoSolicitacaoDesanexaDigital(), \Core_Configuration::getSgdoceTipoAssuntoSolicitacaoExcluirImagem());
$arrAssunto = $inTipoParaArtefato == \Core_Configuration::getSgdoceTipoArtefatoProcesso() ? $arrAssuntoProcesso : $arrAssuntoDocumento;
$queryBuilder->andWhere("a.sqTipoAssuntoSolicitacao IN(:sqTipoAssuntoSolicitacaoiIn)")->setParameter(":sqTipoAssuntoSolicitacaoiIn", $arrAssunto);
}
}
$queryBuilder->andWhere("a.stRegistroAtivo = :stRegistroAtivo")->setParameter(":stRegistroAtivo", TRUE);
return $queryBuilder->getQuery()->useResultCache(TRUE, NULL, __METHOD__)->execute();
}
示例9: nuArtefato
/**
* @param array $data
* @param int $selected
* @param array $config
* @return string
*/
public function nuArtefato(Artefato $entArtefato, $sqTipoArtefato = null)
{
$return = NULL;
$coAmbitoProcesso = Processo::T_TIPO_AMBITO_PROCESSO_FEDERAL;
if (is_null($sqTipoArtefato)) {
$sqTipoArtefato = $entArtefato->getSqTipoArtefatoAssunto()->getSqTipoArtefato()->getSqTipoArtefato();
}
// PROCESSO
if ($sqTipoArtefato == \Core_Configuration::getSgdoceTipoArtefatoProcesso()) {
$nuArtefato = $entArtefato->getNuArtefato();
if (method_exists($entArtefato, 'getSqArtefatoProcesso') && $entArtefato->getSqArtefatoProcesso()) {
$coAmbitoProcesso = $entArtefato->getSqArtefatoProcesso()->getCoAmbitoProcesso();
}
// SE AMBITO FEDERAL APLICA MÁSCARA
if ($coAmbitoProcesso == Processo::T_TIPO_AMBITO_PROCESSO_FEDERAL) {
$nuArtefato = $this->mask($nuArtefato);
}
return $nuArtefato;
} else {
return $entArtefato->getNuDigital()->getNuEtiqueta(TRUE);
}
return $return;
}
示例10: editAction
/**
* @return void
*/
public function editAction()
{
$objRequest = $this->getRequest();
$sqArtefato = $objRequest->getParam('id', false);
$url = $this->getRequest()->getParam('back', false);
$this->view->urlBack = false;
$this->view->withTramite = $this->getRequest()->getParam('tramite', 1);
if ($url) {
$url = str_replace(".", "/", $url);
$this->view->urlBack = $url;
$url = substr($url, 1);
$params = explode("/", $url);
$this->view->controllerBack = next($params);
$this->view->caixa = end($params);
}
$dtoSearch = \Core_Dto::factoryFromData(array('sqArtefato' => $sqArtefato), 'search');
if (!$this->getService("Artefato")->isInconsistent($dtoSearch, false, true)) {
$this->getMessaging()->addErrorMessage('Processo já corrigido!', 'User');
$this->_redirect($this->view->urlBack);
}
$this->view->isAutuacao = $objRequest->getParam('autuado', false);
if ($sqArtefato) {
$artefato = $this->getService()->find($sqArtefato);
if (count($artefato) <= 0) {
$this->_redirect("/artefato/area-trabalho/index/tipoArtefato/" . \Core_Configuration::getSgdoceTipoArtefatoProcesso());
}
}
$this->combos(true);
$this->view->tipoPessoa = $this->view->arrOptTipoPessoa;
$arrParams = $this->_getAllParams();
$arrParams['dtArtefato'] = \Zend_Date::now();
$objDtoParams = \Core_Dto::factoryFromData($arrParams, 'search');
if (!$sqArtefato) {
$this->view->pageTitle = "Cadastrar Processo";
if ($arrParams['coAmbitoProcesso'] == 'F') {
$arrParams['nuArtefato'] = preg_replace('/[^a-zA-Z0-9]/', '', $arrParams['nuArtefato']);
} else {
$arrParams['nuArtefato'] = preg_replace('/[^a-zA-Z0-9\\.\\-\\/]/', '', $arrParams['nuArtefato']);
}
$objEntArtefato = $this->getService('Artefato')->getEntityDto($arrParams, array('entity' => 'Sgdoce\\Model\\Entity\\Artefato', 'mapping' => array()));
$objEntArtefatoProcesso = $this->getService('ArtefatoProcesso')->getEntityDto($arrParams, array('entity' => 'Sgdoce\\Model\\Entity\\ArtefatoProcesso', 'mapping' => array('sqEstado' => 'Sgdoce\\Model\\Entity\\VwEstado', 'sqMunicipio' => 'Sgdoce\\Model\\Entity\\VwMunicipio')));
} else {
$this->view->pageTitle = "Corrigir Processo";
$listArtefato = $this->getService('Artefato')->findBy(array('sqArtefato' => $sqArtefato));
$objEntArtefato = current($listArtefato);
$listArtefatoProcesso = $this->getService('ArtefatoProcesso')->findBy(array('sqArtefato' => $sqArtefato));
$objEntArtefatoProcesso = current($listArtefatoProcesso);
}
// COMBO MUNICIPIO
if ($objEntArtefatoProcesso->getSqMunicipio()) {
$sqEstado = $objEntArtefatoProcesso->getSqEstado()->getSqEstado();
$this->view->arrOptMunicipio = array('' => 'Selecione...') + $this->getService('VwEndereco')->comboMunicipio($sqEstado, TRUE);
}
$dtoArtefato = Core_Dto::factoryFromData(array('sqArtefato' => $sqArtefato), 'search');
$this->view->dadosOrigem = $this->returnDadosOrigem($dtoArtefato);
if (!$this->view->dadosOrigem) {
$this->view->dadosOrigem = NULL;
} elseif (!$this->view->dadosOrigem[0]->getSqPessoaSgdoce()->getSqPessoaCorporativo()->getSqTipoPessoa()) {
$this->view->dadosOrigem[1] = NULL;
}
$this->view->objEntArtefato = $objEntArtefato;
$this->view->data = $objEntArtefato;
$this->view->objEntArtefatoProcesso = $objEntArtefatoProcesso;
$this->view->sqTipoArtefato = \Core_Configuration::getSgdoceTipoArtefatoProcesso();
$this->view->objDtoParams = $objDtoParams;
if ($objEntArtefato->getDtArtefato() != null) {
$this->view->isValidProcess = true;
} else {
$this->_redirectAction('index');
}
$this->view->bloqueioDigito = false;
if (isset($arrParams['tpNuArtefato']) || $sqArtefato) {
$this->view->bloqueioDigito = true;
}
}
示例11: setSequencialProcesso
/**
* @param integer $sqUnidadeOrg
*/
public function setSequencialProcesso($sqUnidadeOrg)
{
$data = new \Zend_Date(\Zend_Date::now());
$criteria = array('sqUnidadeOrg' => $sqUnidadeOrg, 'nuAno' => $data->get('Y'), 'sqTipoArtefato' => \Core_Configuration::getSgdoceTipoArtefatoProcesso());
$sequencialArtefato = $this->findOneBy($criteria);
$sequencialArtefato->setNuSequencial($sequencialArtefato->getNuSequencial() + 1);
$this->getEntityManager()->persist($sequencialArtefato);
$this->getEntityManager()->flush();
}
示例12: autoCompleteVinculacaoAction
public function autoCompleteVinculacaoAction()
{
$params = $this->_getAllParams();
if (isset($params['nuArtefato'])) {
$params['nuArtefato'] = str_replace('!', '/', $params['nuArtefato']);
}
$dto = Core_Dto::factoryFromData($params, 'search');
$entity = $this->getService('Dossie')->findAutoComplete($dto);
if (count($entity)) {
$dados = $this->getService()->returnAutoCompleteVinculacao($entity);
$return = array('sqTipoArtefato' => $dados['tipoArtefato'], 'sqTipoDocumento' => $dados['sqTipoDocumento'], 'noTipoDocumento' => $dados['noTipoDocumento'], 'noPessoa' => $dados['sqPessoa'], 'sqPessoa' => $dados['Pessoa'], 'nuArtefato' => $entity[0]->getNuArtefato(), 'nuDigital' => $dto->getSqTipoArtefatoVinculacao() != \Core_Configuration::getSgdoceTipoArtefatoProcesso() ? $entity[0]->getNuDigital()->getNuEtiqueta() : null);
} else {
$return = array();
}
$this->_helper->json($return);
}
示例13: postSave
//.........这里部分代码省略.........
$this->getServiceLocator()->getService('GrauAcessoArtefato')->saveGrauAcessoArtefato($entity, $grauAcesso);
}
/*
* ##### VOLUME #####
*
* só é postado no create
*
*/
if ($dto->getDataVolume()) {
$dataIntessado = $dto->getDataVolume();
$sqPessoaAbertura = \Core_Integration_Sica_User::getPersonId();
$sqUnidadeOrgAbertura = \Core_Integration_Sica_User::getUserUnit();
foreach ($dataIntessado->getApi() as $method) {
$line = $dataIntessado->{$method}();
if (!(int) $line->getNuVolume()) {
throw new \Core_Exception_ServiceLayer('Volume não informado.');
}
$nuFolhaFinal = (int) $line->getNuFolhaFinal();
$dtEncerramento = null;
if (!empty($nuFolhaFinal)) {
$dtEncerramento = \Zend_Date::now();
} else {
$nuFolhaFinal = null;
}
$add = $this->getServiceLocator()->getService('ProcessoVolume')->addVolume(array('nuVolume' => (int) $line->getNuVolume(), 'nuFolhaInicial' => (int) $line->getNuFolhaInicial(), 'nuFolhaFinal' => $nuFolhaFinal, 'sqArtefato' => $entity->getSqArtefato(), 'sqPessoa' => $sqPessoaAbertura, 'sqUnidadeOrg' => $sqUnidadeOrgAbertura, 'dtAbertura' => \Zend_Date::now(), 'dtEncerramento' => $dtEncerramento));
if (!$add) {
throw new \Core_Exception_ServiceLayer('Erro ao adicionar volume.');
}
}
}
/*
* ##### INTERESSADO #####
*
* só é postado no create, em caso de edit os interessados são
* manutenidos no proprio formulario
*
*/
if ($dto->getDataInteressado()) {
$dataIntessado = $dto->getDataInteressado();
foreach ($dataIntessado->getApi() as $method) {
$line = $dataIntessado->{$method}();
//metodo foi copiado e adaptado de Artefato_PessoaController::addInteressadoAction()
$add = $this->getServiceLocator()->getService('Documento')->addInteressado(array('noPessoa' => $line->getNoPessoa(), 'unidFuncionario' => $line->getUnidFuncionario(), 'sqPessoaCorporativo' => $line->getSqPessoaCorporativo(), 'sqTipoPessoa' => $line->getSqTipoPessoa(), 'sqPessoaFuncao' => $line->getSqPessoaFuncao(), 'sqArtefato' => $entity->getSqArtefato()));
if (!$add) {
throw new \Core_Exception_ServiceLayer($line->getNoPessoa() . ' já é um interessado deste processo.');
}
}
}
/*
* ##### REFERÊNCIA (VINCULO) #####
*
* só é postado no create, em caso de edit os vinculos são
* manutenidos no proprio formulario
*
*/
if ($dto->getDataVinculo()) {
//só é postado no create
$dataVinculo = $dto->getDataVinculo();
foreach ($dataVinculo->getApi() as $method) {
$gridLine = $dataVinculo->{$method}();
//metodo foi copiado e adaptado de Artefato_DocumentoController::addDocumentoEletronicoAction()
$add = $this->getServiceLocator()->getService('Documento')->addVinculo(array('nuDigital' => $gridLine->getNuDigital(), 'nuArtefatoVinculacao' => $gridLine->getNuArtefatoVinculacao(), 'sqTipoArtefato' => $gridLine->getSqTipoArtefato(), 'sqArtefato' => $entity->getSqArtefato(), 'tipoVinculo' => \Core_Configuration::getSgdoceTipoVinculoArtefatoReferencia(), 'inOriginal' => $gridLine->getInOriginal()));
if (!$add) {
$msg = "A digital <b>{$gridLine->getNuDigital()}</b> já esta vinculada a este documento";
if ($gridLine->getSqTipoArtefato() == \Core_Configuration::getSgdoceTipoArtefatoProcesso()) {
$msg = "O processo <b>{$gridLine->getNuArtefatoVinculacao()}</b> já esta vinculado a este processo.";
}
throw new \Core_Exception_ServiceLayer($msg);
}
}
}
// #HistoricoArtefato::save();
$dtAcao = new \Zend_Date(\Zend_Date::now());
$sqOcorrencia = 0;
if ($this->_firstTramite) {
$sqOcorrencia = \Core_Configuration::getSgdoceSqOcorrenciaCadastrar();
$message = "Processo cadastrado com sucesso";
$strHMessage = sprintf(\Core_Registry::getMessage()->translate('MH007'), \Core_Integration_Sica_User::getUserName(), $dtAcao->get(\Zend_Date::DATETIME_MEDIUM));
} else {
$sqOcorrencia = \Core_Configuration::getSgdoceSqOcorrenciaAlterar();
$message = "Processo alterado com sucesso";
if ($dto->getIsAutuacao()) {
$message = "Processo autuado com sucesso!";
}
$strHMessage = sprintf(\Core_Registry::getMessage()->translate('MH008'), \Core_Integration_Sica_User::getUserName(), $dtAcao->get(\Zend_Date::DATETIME_MEDIUM));
}
$this->getServiceLocator()->getService('HistoricoArtefato')->registrar($entity->getSqArtefato(), $sqOcorrencia, $strHMessage);
if ($this->_firstTramite) {
$this->getServiceLocator()->getService('TramiteArtefato')->insertFirstTramite($entity->getSqArtefato());
}
$this->getMessaging()->addSuccessMessage($message, "User");
$retorno = $this->getEntityManager()->commit();
} catch (\Exception $objException) {
$this->getEntityManager()->rollback();
$this->getMessaging()->addErrorMessage("[" . $objException->getCode() . "] " . $objException->getMessage(), "User");
$retorno = $objException;
}
$this->getMessaging()->dispatchPackets();
return $retorno;
}
示例14: _checkCanReturn
private function _checkCanReturn(\Sgdoce\Model\Entity\Artefato $entityArtefato)
{
$sqTipoHistoricoArquivo = $this->_getRepository('app:CaixaHistorico')->getLastHistorico($entityArtefato->getSqArtefato());
if (!is_null($sqTipoHistoricoArquivo)) {
if ($sqTipoHistoricoArquivo != \Core_Configuration::getSgdoceTipoHistoricoArquivoEmprestado()) {
$entityTipoArtefato = $entityArtefato->getSqTipoArtefatoAssunto()->getSqTipoArtefato();
$noTipoArtefato = $entityTipoArtefato->getNoTipoArtefato();
if ($entityTipoArtefato->getSqTipoArtefato() == \Core_Configuration::getSgdoceTipoArtefatoProcesso()) {
$nuArtefato = $this->getServiceLocator()->getService('Processo')->formataProcessoAmbitoFederal($entityArtefato);
} else {
$nuArtefato = $entityArtefato->getNuDigital()->getNuEtiqueta();
}
throw new \Core_Exception_ServiceLayer_Verification("O {$noTipoArtefato} <b>{$nuArtefato}</b> não esta emprestado. Logo, não pode ser devolvido");
}
}
return $this;
}
示例15: postSave
//.........这里部分代码省略.........
$sqPessoaAbertura = \Core_Integration_Sica_User::getPersonId();
$sqUnidadeOrgAbertura = \Core_Integration_Sica_User::getUserUnit();
foreach ($dataIntessado->getApi() as $method) {
$line = $dataIntessado->{$method}();
if (!(int) $line->getNuVolume()) {
throw new \Core_Exception_ServiceLayer('Volume não informado.');
}
$nuFolhaFinal = (int) $line->getNuFolhaFinal();
$dtEncerramento = null;
if (!empty($nuFolhaFinal)) {
$dtEncerramento = \Zend_Date::now();
} else {
$nuFolhaFinal = null;
}
$add = $this->getServiceLocator()->getService('ProcessoVolume')->addVolume(array('nuVolume' => (int) $line->getNuVolume(), 'nuFolhaInicial' => (int) $line->getNuFolhaInicial(), 'nuFolhaFinal' => $nuFolhaFinal, 'sqArtefato' => $entity->getSqArtefato(), 'sqPessoa' => $sqPessoaAbertura, 'sqUnidadeOrg' => $sqUnidadeOrgAbertura, 'dtAbertura' => \Zend_Date::now(), 'dtEncerramento' => $dtEncerramento));
if (!$add) {
throw new \Core_Exception_ServiceLayer('Erro ao adicionar volume.');
}
}
}
/*
* ##### INTERESSADO #####
*
* só é postado no create, em caso de edit os interessados são
* manutenidos no proprio formulario
*
*/
if ($dto->getDataInteressado()) {
$dataIntessado = $dto->getDataInteressado();
foreach ($dataIntessado->getApi() as $method) {
$line = $dataIntessado->{$method}();
//metodo foi copiado e adaptado de Artefato_PessoaController::addInteressadoAction()
$add = $this->getServiceLocator()->getService('Documento')->addInteressado(array('noPessoa' => $line->getNoPessoa(), 'unidFuncionario' => $line->getUnidFuncionario(), 'sqPessoaCorporativo' => $line->getSqPessoaCorporativo(), 'sqTipoPessoa' => $line->getSqTipoPessoa(), 'sqPessoaFuncao' => $line->getSqPessoaFuncao(), 'sqArtefato' => $entity->getSqArtefato()));
if (!$add) {
throw new \Core_Exception_ServiceLayer($line->getNoPessoa() . ' já é um interessado deste processo.');
}
$this->_arInconsistencia[2] = 't';
}
} else {
$dtoInteressado = \Core_Dto::factoryFromData(array('sqArtefato' => $entity->getSqArtefato()), 'search');
$nuInteressados = $this->getServiceLocator()->getService('PessoaInterassadaArtefato')->countInteressadosArtefato($dtoInteressado);
if ($nuInteressados['nu_interessados'] > 0) {
$this->_arInconsistencia[2] = 't';
} else {
throw new \Core_Exception_ServiceLayer(\Core_Registry::getMessage()->translate('MN176'));
}
}
/*
* ##### REFERÊNCIA (VINCULO) #####
*
* só é postado no create, em caso de edit os vinculos são
* manutenidos no proprio formulario
*
*/
if ($dto->getDataVinculo()) {
//só é postado no create
$dataVinculo = $dto->getDataVinculo();
foreach ($dataVinculo->getApi() as $method) {
$gridLine = $dataVinculo->{$method}();
//metodo foi copiado e adaptado de Artefato_DocumentoController::addDocumentoEletronicoAction()
$add = $this->getServiceLocator()->getService('Documento')->addVinculo(array('nuDigital' => $gridLine->getNuDigital(), 'nuArtefatoVinculacao' => $gridLine->getNuArtefatoVinculacao(), 'sqTipoArtefato' => $gridLine->getSqTipoArtefato(), 'sqArtefato' => $entity->getSqArtefato(), 'tipoVinculo' => \Core_Configuration::getSgdoceTipoVinculoArtefatoReferencia(), 'inOriginal' => $gridLine->getInOriginal()));
if (!$add) {
$msg = "A digital <b>{$gridLine->getNuDigital()}</b> já esta vinculada a este documento";
if ($gridLine->getSqTipoArtefato() == \Core_Configuration::getSgdoceTipoArtefatoProcesso()) {
$msg = "O processo <b>{$gridLine->getNuArtefatoVinculacao()}</b> já esta vinculado a este processo.";
}
throw new \Core_Exception_ServiceLayer($msg);
}
}
}
// #HistoricoArtefato::save();
$dtAcao = new \Zend_Date(\Zend_Date::now());
#Datas default
$this->_arInconsistencia[5] = 't';
# Se estiver tudo corrigido, insere tramite se tiver que inserir.
# existe um parametro no form que indica se o tramite deve ser inserido
# pois o documento já poderá estar na area de trabalho da pessoa (neste caso nao insere)
if (!in_array('f', $this->_arInconsistencia) && $dto->getPersistTramite()) {
$this->getServiceLocator()->getService('VinculoMigracao')->setArtefatoCorrigido($entity->getSqArtefato());
} else {
$this->_arInconsistencia[6] = 't';
}
$arInconsistencia = implode(",", $this->_arInconsistencia);
$arInconsistencia = "{" . $arInconsistencia . "}";
$entity->setArInconsistencia($arInconsistencia);
// persistindo informacao
$this->getEntityManager()->persist($entity);
$this->getEntityManager()->flush($entity);
// #HistoricoArtefato::save();
$strMessage = $this->getServiceLocator()->getService('HistoricoArtefato')->getMessage('MH022');
$this->getServiceLocator()->getService('HistoricoArtefato')->registrar($entity->getSqArtefato(), \Core_Configuration::getSgdoceSqOcorrenciaCorrigirMigracao(), $strMessage);
$retorno = $this->getEntityManager()->commit();
} catch (\Exception $objException) {
$this->getEntityManager()->rollback();
$this->getMessaging()->addErrorMessage("[" . $objException->getCode() . "] " . $objException->getMessage(), "User");
$retorno = $objException;
}
$this->getMessaging()->dispatchPackets();
return $retorno;
}