本文整理汇总了PHP中Core_Configuration::getSgdocePessoaFuncaoAutor方法的典型用法代码示例。如果您正苦于以下问题:PHP Core_Configuration::getSgdocePessoaFuncaoAutor方法的具体用法?PHP Core_Configuration::getSgdocePessoaFuncaoAutor怎么用?PHP Core_Configuration::getSgdocePessoaFuncaoAutor使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Core_Configuration
的用法示例。
在下文中一共展示了Core_Configuration::getSgdocePessoaFuncaoAutor方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getPessoaArtefatoAutor
/**
* Obtén dados da pessoa de autoria de uma minuta
* @param $dto
* @return array
*/
public function getPessoaArtefatoAutor($dto)
{
$query = $this->_em->createQueryBuilder()->select('pf.sqPessoaFuncao, pf.noPessoaFuncao, p.sqPessoa, p.noPessoa, p.noProfissao,
t.noTratamento, tv.deEnderecamento, v.noVocativo, cid.noMunicipio, est.noEstado,
p.coCep, a.txEmenta')->from($this->_enName, 'p')->innerJoin('p.sqPessoaFuncao', 'pf')->leftJoin('p.sqTratamentoVocativo', 'tv')->leftJoin('tv.sqTratamento', 't')->leftJoin('tv.sqVocativo', 'v')->leftJoin('p.sqMunicipioEndereco', 'cid')->leftJoin('cid.sqEstado', 'est')->innerJoin('p.sqArtefato', 'a')->andWhere('p.sqArtefato = :sqArtefato')->setParameter('sqArtefato', $dto->getSqArtefato())->andWhere('p.sqPessoaFuncao = :sqPessoaFuncao')->setParameter('sqPessoaFuncao', \Core_Configuration::getSgdocePessoaFuncaoAutor())->getQuery()->execute();
if (empty($query)) {
return NULL;
}
return $query[0];
}
示例2: postSave
/**
* @param type $entity
* @param type $dto
* @param type $objArtProDto
*/
public function postSave($entity, $dto = null, $objArtProDto = null)
{
$retorno = false;
$this->getEntityManager()->beginTransaction();
$sqPessoaCorporativo = \Core_Integration_Sica_User::getPersonId();
try {
// salva o artefato_processo
$objArtProDto->setSqArtefato($entity);
$this->saveArtefatoProcesso($objArtProDto);
$arrPesArtDto = array('entity' => 'Sgdoce\\Model\\Entity\\PessoaArtefato', 'mapping' => array('sqPessoaFuncao' => 'Sgdoce\\Model\\Entity\\PessoaFuncao', 'sqPessoaSgdoce' => 'Sgdoce\\Model\\Entity\\PessoaSgdoce', 'sqArtefato' => 'Sgdoce\\Model\\Entity\\Artefato'));
$sqPessoaSgdoce = $this->_getRepository('app:PessoaSgdoce')->findBySqPessoaCorporativo($sqPessoaCorporativo);
if (empty($sqPessoaSgdoce)) {
$filter = new \Zend_Filter_Digits();
$data['sqPessoaCorporativo'] = $this->_getRepository('app:VwPessoa')->find($sqPessoaCorporativo);
$dtoPessoaSearch = \Core_Dto::factoryFromData($data, 'search');
$cpfCnpjPassaportUnfiltered = $this->getServiceLocator()->getService('VwPessoa')->returnCpfCnpjPassaporte($dtoPessoaSearch);
$cpfCnpjPassaport = $filter->filter($cpfCnpjPassaportUnfiltered);
$noPessoaCorporativo = $data['sqPessoaCorporativo']->getNoPessoa();
$this->addPessoaSgdoce($sqPessoaCorporativo, $noPessoaCorporativo, $cpfCnpjPassaport);
$sqPessoaSgdoce = $this->_getRepository('app:PessoaSgdoce')->findBySqPessoaCorporativo($sqPessoaCorporativo);
}
$arrParams = array();
$arrParams['sqArtefato'] = $entity->getSqArtefato();
$arrParams['sqPessoaFuncao'] = \Core_Configuration::getSgdocePessoaFuncaoAutor();
$arrParams['sqPessoaSgdoce'] = $sqPessoaSgdoce[0]->getSqPessoaSgdoce();
$objPessoArtefato = $this->getServiceLocator()->getService('PessoaArtefato')->findBy($arrParams);
if (!count($objPessoArtefato)) {
$objPessoaArtefatoDto = \Core_Dto::factoryFromData($arrParams, 'entity', $arrPesArtDto);
$this->getServiceLocator()->getService('PessoaArtefato')->savePessoaArtefato($objPessoaArtefatoDto);
}
$this->_salvaOrigem($entity, $dto);
// SALVA GRAU DE ACESSO.
if ($dto->getSqGrauAcesso()) {
$grauAcesso = $this->getEntityManager()->getPartialReference('app:GrauAcesso', $dto->getSqGrauAcesso());
$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()
//.........这里部分代码省略.........
示例3: postSave
/**
* @param type $entity
* @param type $dto
* @param type $objArtProDto
*/
public function postSave($entity, $dto = null, $objArtProDto = null)
{
$retorno = false;
$this->getEntityManager()->beginTransaction();
$sqPessoaCorporativo = \Core_Integration_Sica_User::getPersonId();
try {
// salva o artefato_processo
$objArtProDto->setSqArtefato($entity);
$this->saveArtefatoProcesso($objArtProDto);
$arrPesArtDto = array('entity' => 'Sgdoce\\Model\\Entity\\PessoaArtefato', 'mapping' => array('sqPessoaFuncao' => 'Sgdoce\\Model\\Entity\\PessoaFuncao', 'sqPessoaSgdoce' => 'Sgdoce\\Model\\Entity\\PessoaSgdoce', 'sqArtefato' => 'Sgdoce\\Model\\Entity\\Artefato'));
$sqPessoaSgdoce = $this->_getRepository('app:PessoaSgdoce')->findBySqPessoaCorporativo($sqPessoaCorporativo);
if (empty($sqPessoaSgdoce)) {
$filter = new \Zend_Filter_Digits();
$data['sqPessoaCorporativo'] = $this->_getRepository('app:VwPessoa')->find($sqPessoaCorporativo);
$dtoPessoaSearch = \Core_Dto::factoryFromData($data, 'search');
$cpfCnpjPassaportUnfiltered = $this->getServiceLocator()->getService('VwPessoa')->returnCpfCnpjPassaporte($dtoPessoaSearch);
$cpfCnpjPassaport = $filter->filter($cpfCnpjPassaportUnfiltered);
$noPessoaCorporativo = $data['sqPessoaCorporativo']->getNoPessoa();
$this->addPessoaSgdoce($sqPessoaCorporativo, $noPessoaCorporativo, $cpfCnpjPassaport);
$sqPessoaSgdoce = $this->_getRepository('app:PessoaSgdoce')->findBySqPessoaCorporativo($sqPessoaCorporativo);
}
$arrParams = array();
$arrParams['sqArtefato'] = $entity->getSqArtefato();
$arrParams['sqPessoaFuncao'] = \Core_Configuration::getSgdocePessoaFuncaoAutor();
$arrParams['sqPessoaSgdoce'] = $sqPessoaSgdoce[0]->getSqPessoaSgdoce();
$objPessoArtefato = $this->getServiceLocator()->getService('PessoaArtefato')->findBy($arrParams);
if (!count($objPessoArtefato)) {
$objPessoaArtefatoDto = \Core_Dto::factoryFromData($arrParams, 'entity', $arrPesArtDto);
$this->getServiceLocator()->getService('PessoaArtefato')->savePessoaArtefato($objPessoaArtefatoDto);
}
// Autor
$this->_arInconsistencia[3] = 't';
$this->_salvaOrigem($entity, $dto);
$this->_arInconsistencia[0] = 't';
// SALVA GRAU DE ACESSO.
if ($dto->getSqGrauAcesso()) {
$grauAcesso = $this->getEntityManager()->getPartialReference('app:GrauAcesso', $dto->getSqGrauAcesso());
$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.');
}
$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'));
}
}
/*
//.........这里部分代码省略.........
示例4: saveOrigemAutor
/**
* Metódo que realiza o save da Origem e Autor da Minuta
*/
public function saveOrigemAutor($entity, $unidadeEntity, $pessoaEntity)
{
$criteria = array('sqPessoaCorporativo' => $pessoaEntity->getSqPessoa());
$entityAux1 = $this->_getRepository('app:PessoaSgdoce')->findOneBy($criteria);
if (!$entityAux1) {
$entityAux1 = $this->_newEntity('app:PessoaSgdoce');
}
$entityAux1->setSqPessoaCorporativo($pessoaEntity);
$entityTipoPessoa = $this->getEntityManager()->getPartialReference('app:VwTipoPessoa', \Core_Configuration::getSgdoceTipoPessoaPessoaFisica());
$entityAux1->setNoPessoa($pessoaEntity->getNoPessoa());
$entityAux1->setSqTipoPessoa($entityTipoPessoa);
$this->getEntityManager()->persist($entityAux1);
$this->getEntityManager()->flush($entityAux1);
$entityPessoaArtefato = $this->_newEntity('app:PessoaArtefato');
$entityArtefato = $this->getEntityManager()->getPartialReference('app:Artefato', $entity->getSqArtefato()->getSqArtefato());
$entityPessoaFuncao = $this->getEntityManager()->getPartialReference('app:PessoaFuncao', \Core_Configuration::getSgdocePessoaFuncaoAutor());
$entityPessoaArtefato->setSqArtefato($entityArtefato);
$entityPessoaArtefato->setSqPessoaSgdoce($entityAux1);
$entityPessoaArtefato->setSqPessoaFuncao($entityPessoaFuncao);
//grava demais dados,endereco,email,telefone
$this->saveComplementoPessoa($entityPessoaArtefato, $pessoaEntity, $entityAux1);
$this->getEntityManager()->persist($entityPessoaArtefato);
$this->getEntityManager()->flush($entityPessoaArtefato);
$vwPessoa = $this->getServiceLocator()->getService('VwPessoa')->find($unidadeEntity->getSqUnidadeOrg());
$criteria = array('sqPessoaCorporativo' => $vwPessoa->getSqPessoa());
$entityAux2 = $this->_getRepository('app:PessoaSgdoce')->findOneBy($criteria);
if (!$entityAux2) {
$entityAux2 = $this->_newEntity('app:PessoaSgdoce');
}
$entityAux2->setSqPessoaCorporativo($vwPessoa);
$entityTipoPessoa = $this->getEntityManager()->getPartialReference('app:VwTipoPessoa', \Core_Configuration::getSgdoceTipoPessoaMinisterioPublico());
$entityPessoaFuncao = $this->getEntityManager()->getPartialReference('app:PessoaFuncao', \Core_Configuration::getSgdocePessoaFuncaoOrigem());
$entityAux2->setNoPessoa($unidadeEntity->getNoUnidadeOrg());
$entityAux2->setSqTipoPessoa($entityTipoPessoa);
$this->getEntityManager()->persist($entityAux2);
$this->getEntityManager()->flush($entityPessoaArtefato);
$entityPessoaArtefato = $this->_newEntity('app:PessoaArtefato');
$entityPessoaArtefato->setSqArtefato($entityArtefato);
$entityPessoaArtefato->setSqPessoaFuncao($entityPessoaFuncao);
$entityPessoaArtefato->setSqPessoaSgdoce($entityAux2);
$this->saveComplementoPessoa($entityPessoaArtefato, $pessoaEntity, $entityAux2);
$this->getEntityManager()->persist($entityPessoaArtefato);
$this->getEntityManager()->flush($entityPessoaArtefato);
}
示例5: saveArtefato
/**
* Metódo que realiza o save do Artefato
* @param Object $dtoSearch
* @return \Sgdoce\Model\Entity\Artefato
*/
public function saveArtefato(\Core_Dto_Search $dtoSearch)
{
$date = new \Zend_Date();
$this->getEntityManager()->getConnection()->beginTransaction();
try {
$sqPessoaSgdoce = $this->_getRepository('app:PessoaSgdoce')->findBySqPessoaCorporativo(\Core_Integration_Sica_User::getPersonId());
if (empty($sqPessoaSgdoce)) {
$filter = new \Zend_Filter_Digits();
$sqPessoaCorporativo = \Core_Integration_Sica_User::getPersonId();
$data['sqPessoaCorporativo'] = $this->_getRepository('app:VwPessoa')->find($sqPessoaCorporativo);
$dtoPessoaSearch = \Core_Dto::factoryFromData($data, 'search');
$cpfCnpjPassaportUnfiltered = $this->getServiceLocator()->getService('VwPessoa')->returnCpfCnpjPassaporte($dtoPessoaSearch);
$cpfCnpjPassaport = $filter->filter($cpfCnpjPassaportUnfiltered);
$noPessoaCorporativo = $data['sqPessoaCorporativo']->getNoPessoa();
$this->addPessoaSgdoce($sqPessoaCorporativo, $noPessoaCorporativo, $cpfCnpjPassaport);
$sqPessoaSgdoce = $this->_getRepository('app:PessoaSgdoce')->findBySqPessoaCorporativo(\Core_Integration_Sica_User::getPersonId());
}
/** @var \Sgdoce\Model\Entity\Artefato $entityArtefato */
$entityArtefato = $this->_newEntity('app:Artefato');
//só seta o numero da digital se for documento tipo físico
if (!$dtoSearch->getInEletronico()) {
$entityLoteEtiqueta = $this->getEntityManager()->getPartialReference('app:LoteEtiqueta', $dtoSearch->getSqLoteEtiqueta());
/** @var \Sgdoce\Model\Entity\EtiquetasUso $entityEtiquetasUso */
$entityEtiquetasUso = $this->_newEntity('app:EtiquetasUso');
$entityEtiquetasUso->setNuEtiqueta($dtoSearch->getNuDigital());
$entityEtiquetasUso->setSqLoteEtiqueta($entityLoteEtiqueta);
//persist Etiquetas Uso
$this->getEntityManager()->persist($entityEtiquetasUso);
$this->getEntityManager()->flush($entityEtiquetasUso);
$entityArtefato->setNuDigital($entityEtiquetasUso);
$entityArtefato->setSqLoteEtiqueta($entityEtiquetasUso);
}
$entityArtefato->setDtPrazo(NULL);
$entityArtefato->setDtArtefato($date);
$entityArtefato->setInEletronico($dtoSearch->getInEletronico());
//persist artefato
$this->getEntityManager()->persist($entityArtefato);
$this->getEntityManager()->flush($entityArtefato);
$sqPessoaFuncao = $this->getEntityManager()->getPartialReference('app:PessoaFuncao', \Core_Configuration::getSgdocePessoaFuncaoAutor());
/** @var \Sgdoce\Model\Entity\PessoaArtefato $entityPessoaArtefato */
$entityPessoaArtefato = $this->_newEntity('app:PessoaArtefato');
$entityPessoaArtefato->setSqArtefato($entityArtefato);
$entityPessoaArtefato->setSqPessoaSgdoce($sqPessoaSgdoce[0]);
$entityPessoaArtefato->setSqPessoaFuncao($sqPessoaFuncao);
$this->getEntityManager()->persist($entityPessoaArtefato);
$this->getEntityManager()->flush($entityPessoaArtefato);
// salva o historico do artefato
$arrDto = array('sqPessoa' => \Core_Integration_Sica_User::getPersonId(), 'sqUnidade' => \Core_Integration_Sica_User::getUserUnit());
// #HistoricoArtefato::save();
$strMessage = $this->getServiceLocator()->getService('HistoricoArtefato')->getMessage('MH005');
$this->getServiceLocator()->getService('HistoricoArtefato')->registrar($entityArtefato->getSqArtefato(), \Core_COnfiguration::getSgdoceSqOcorrenciaCadastrar(), $strMessage);
$this->getEntityManager()->getConnection()->commit();
} catch (\Exception $e) {
$this->getEntityManager()->getConnection()->rollback();
throw $e;
}
return $entityArtefato;
}
示例6: saveExtraPessoa
/**
* Metódo que realiza o save da pessoa interessa e assinante.
*/
public function saveExtraPessoa($entity, $entityArtefatoClone, $entityArtefato)
{
//grava pessoa interessada artefato
$entityInteressadaArtefato = $this->_getRepository('app:PessoaInteressadaArtefato')->findBy(array('sqArtefato' => $entity->getSqArtefato()->getSqArtefato()));
if (is_array($entityInteressadaArtefato)) {
foreach ($entityInteressadaArtefato as $entityInteressada) {
$entityInteressadaClone = clone $entityInteressada;
$entityInteressadaClone->setSqArtefato($entityArtefatoClone);
$this->getEntityManager()->persist($entityInteressadaClone);
$this->getEntityManager()->flush($entityInteressadaClone);
}
}
//grava pessoa interessada artefato
$entityAssinanteArtefato = $this->_getRepository('app:PessoaAssinanteArtefato')->findBy(array('sqArtefato' => $entity->getSqArtefato()->getSqArtefato()));
if (is_array($entityAssinanteArtefato)) {
foreach ($entityAssinanteArtefato as $entityAssinante) {
$entityAssinanteClone = clone $entityAssinante;
$entityAssinanteClone->setSqArtefato($entityArtefatoClone);
$this->getEntityManager()->persist($entityAssinanteClone);
$this->getEntityManager()->flush($entityAssinanteClone);
}
}
//grava pessoa motivacao artefato
$entityMotivacaoArtefato = $this->_getRepository('app:Motivacao')->findBy(array('sqArtefato' => $entity->getSqArtefato()->getSqArtefato()));
if (is_array($entityMotivacaoArtefato)) {
foreach ($entityMotivacaoArtefato as $entityMotivacao) {
$entityMotivacaoClone = clone $entityMotivacao;
$entityMotivacaoClone->setSqArtefato($entityArtefatoClone);
$this->getEntityManager()->persist($entityMotivacaoClone);
$this->getEntityManager()->flush($entityMotivacaoClone);
}
}
//grava rodape
$criteria = array('sqArtefato' => $entityArtefato->getSqArtefato(), 'sqPessoaFuncao' => \Core_Configuration::getSgdocePessoaFuncaoDadosRodape());
$entityRodapeArtefato = $this->_getRepository('app:PessoaArtefato')->findOneBy($criteria);
if ($entityRodapeArtefato) {
$entityRodapeArtefatoClone = clone $entityRodapeArtefato;
$entityRodapeArtefatoClone->setSqArtefato($entityArtefatoClone);
$this->getEntityManager()->persist($entityRodapeArtefatoClone);
$this->getEntityManager()->flush($entityRodapeArtefatoClone);
}
//grava o artefato minuta
$entityArtefatoMinuta = $this->_getRepository()->find($entity->getSqArtefato()->getSqArtefato());
$entityArtefatoMinutaClone = clone $entityArtefatoMinuta;
$entityArtefatoMinutaClone->setSqArtefato($entityArtefatoClone);
$this->getEntityManager()->persist($entityArtefatoMinutaClone);
$this->getEntityManager()->flush($entityArtefatoMinutaClone);
//save historico
$criteria = array('sqArtefato' => $entity->getSqArtefato()->getSqArtefato());
$entityHistorico = $this->_getRepository('app:HistoricoArtefato')->findBy($criteria);
$entityHistoricoClone = clone $entityHistorico[0];
$entityHistoricoClone->setSqArtefato($entityArtefatoClone);
$this->getEntityManager()->persist($entityHistoricoClone);
$this->getEntityManager()->flush($entityHistoricoClone);
//save origem
$entityOrigemSgdoce = $this->getPessoaSgdoce($entity, \Core_Configuration::getSgdocePessoaFuncaoOrigem());
$entityOrigemSgdoceClone = clone $entityOrigemSgdoce[0];
$entityOrigemSgdoceClone->setSqArtefato($entityArtefatoClone);
$this->getEntityManager()->persist($entityOrigemSgdoceClone);
$this->getEntityManager()->flush($entityOrigemSgdoceClone);
//save autor
$entityAutorSgdoce = $this->getPessoaSgdoce($entity, \Core_Configuration::getSgdocePessoaFuncaoAutor());
$entityAutorSgdoceClone = clone $entityAutorSgdoce[0];
$entityAutorSgdoceClone->setSqArtefato($entityArtefatoClone);
$this->getEntityManager()->persist($entityAutorSgdoceClone);
$this->getEntityManager()->flush($entityAutorSgdoceClone);
}
示例7: _getProcessChildrenProcess
/**
*
* @param array $data
* @param integer $sqArtefato
*/
private function _getProcessChildrenProcess(array &$data, $sqArtefato)
{
$dto = \Core_Dto::factoryFromData(array('sqArtefato' => $sqArtefato, 'sqTipoArtefato' => \Core_Configuration::getSgdoceTipoArtefatoProcesso(), 'sqPessoaFuncao' => \Core_Configuration::getSgdocePessoaFuncaoAutor()), 'search');
$children = $this->getEntityManager()->getRepository('app:ArtefatoVinculo')->findProcessGuiaProcess($dto);
$data = array_merge($data, $children);
}
示例8: postInsert
/**
* @param Core_Model_Entity_Abstract $entity
* @param type $dto
*/
public function postInsert($entity, $dto = null, $artefatoProcesso = null, $digital = null)
{
$retorno = false;
$this->getEntityManager()->beginTransaction();
try {
// salva o artefato_processo
$artefatoProcesso->setSqArtefato($entity);
// Ao autuar um documento sempre vai abrir um volume, iniciando pela página um.
// Adicionando um volume na linha 148 deste arquivo.
$artefatoProcesso->setNuVolume(1);
$artefatoProcesso->setNuPaginaProcesso(1);
$this->getServiceLocator()->getService('ProcessoEletronico')->saveArtefatoProcesso($artefatoProcesso);
$arrPesArtDto = array('entity' => 'Sgdoce\\Model\\Entity\\PessoaArtefato', 'mapping' => array('sqPessoaFuncao' => 'Sgdoce\\Model\\Entity\\PessoaFuncao', 'sqPessoaSgdoce' => 'Sgdoce\\Model\\Entity\\PessoaSgdoce', 'sqArtefato' => 'Sgdoce\\Model\\Entity\\Artefato'));
$arrParams = array();
$arrParams['sqArtefato'] = $entity->getSqArtefato();
$arrParams['sqPessoaFuncao'] = \Core_Configuration::getSgdocePessoaFuncaoAutor();
$arrParams['sqPessoaSgdoce'] = current($this->getServiceLocator()->getService('PessoaSgdoce')->findBy(array('sqPessoaCorporativo' => \Core_Integration_Sica_User::getPersonId())))->getSqPessoaSgdoce();
$objPessoaArtefatoDto = \Core_Dto::factoryFromData($arrParams, 'entity', $arrPesArtDto);
$this->getServiceLocator()->getService('PessoaArtefato')->savePessoaArtefato($objPessoaArtefatoDto);
$this->_salvaOrigem($entity, $dto);
// RN - Caso não exista Grau de Acesso ao Artefato sera por default publico(1)
if (!$dto->getSqGrauAcesso()) {
$data = array('sqGrauAcesso' => \Core_Configuration::getSgdoceGrauAcessoPublico());
$dtoAcesso = new \Core_Dto_Mapping($data, array_keys($data));
$sqGrauAcesso = $this->_getRepository('app:GrauAcesso')->find($dtoAcesso->getSqGrauAcesso());
} else {
$sqGrauAcesso = $this->_getRepository('app:GrauAcesso')->find($dto->getSqGrauAcesso());
}
// realizando a persistencia do Grau de Acesso
$this->getServiceLocator()->getService('Dossie')->persistGrauAcessoArtefato($entity, $sqGrauAcesso);
/*
* ##### 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 documento.');
}
}
}
/**
* #### VOLUME ####
*/
$sqPessoaAbertura = \Core_Integration_Sica_User::getPersonId();
$sqUnidadeOrgAbertura = \Core_Integration_Sica_User::getUserUnit();
$entPessoaAbertura = $this->getEntityManager()->getPartialReference('app:VwPessoa', $sqPessoaAbertura);
$entUnidadeOrgAbertura = $this->getEntityManager()->getPartialReference('app:VwUnidadeOrg', $sqUnidadeOrgAbertura);
$entVolume = $this->_newEntity('app:ProcessoVolume');
$entVolume->setSqArtefato($entity);
$entVolume->setNuVolume(1);
$entVolume->setNuFolhaInicial(1);
$entVolume->setDtAbertura(\Zend_Date::now());
$entVolume->setSqPessoaAbertura($entPessoaAbertura);
$entVolume->setSqUnidadeOrgAbertura($entUnidadeOrgAbertura);
$this->getEntityManager()->persist($entVolume);
/*
* ##### (PEÇA) #####
*/
$this->getServiceLocator()->getService('ArtefatoVinculo')->inserirPeca(array('parent' => $entity, 'child' => $digital), \Core_Configuration::getSgdoceTipoVinculoArtefatoAutuacao());
// #HistoricoArtefato::save();
$nuDigital = $digital->getNuDigital()->getNuEtiqueta();
$dataAtual = new \Zend_Date(\Zend_Date::now());
$nuProcesso = $this->getServiceLocator()->getService("Processo")->formataProcessoAmbitoFederal($entity);
$strMessage = $this->getServiceLocator()->getService('HistoricoArtefato')->getMessage('MH012', $dataAtual->get("dd/MM/yyyy HH:mm:ss"), $nuProcesso);
$this->getServiceLocator()->getService('HistoricoArtefato')->registrar($entity->getSqArtefato(), \Core_Configuration::getSgdoceSqOcorrenciaCadastrar(), $strMessage);
// insere tramite
$this->getServiceLocator()->getService('TramiteArtefato')->insertFirstTramite($entity->getSqArtefato());
$this->getMessaging()->addSuccessMessage("Documento autuado gerando o processo " . $nuProcesso, "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;
}