public function saveDocumento(\Core_Dto_Abstract $dto)
 {
     \Zend_Registry::get('doctrine')->getEntityManager()->clear();
     $entityAnexo = $this->_getRepository()->findOneBy(array('sqPessoaSgdoce' => $dto->getSqPessoaSgdoce(), 'sqTipoDocumento' => $dto->getSqTipoDocumento()));
     $result = $entityAnexo ? $this->updateArquivo($entityAnexo, $dto) : $this->insertArquivo($dto);
     return $entityAnexo ? 'update' : 'insert';
 }
예제 #2
0
 public function listGrid(\Core_Dto_Abstract $dto)
 {
     $_qb = $this->_em->createQueryBuilder();
     $query = $_qb->select('
         d.sqDocumento,
         d.txValor,
         td.sqTipoDocumento,
         td.noTipoDocumento,
         atd.sqAtributoTipoDocumento,
         p.sqPessoa,
         ps.sqPessoaSgdoce,
         acd.sqAnexoComprovanteDocumento,
         acd.deCaminhoImagem
     ')->from($this->_entityName, 'd')->innerJoin('d.sqAtributoTipoDocumento', 'atd')->innerJoin('atd.sqAtributoDocumento', 'ad')->innerJoin('atd.sqTipoDocumento', 'td')->innerJoin('d.sqPessoa', 'p')->leftJoin('p.sqPessoaCorporativo', 'ps', 'WITH', $_qb->expr()->andX()->add($_qb->expr()->eq('ps.sqPessoaCorporativo', 'p.sqPessoa')))->leftJoin('ps.sqAnexoComprovanteDocumento', 'acd', 'WITH', $_qb->expr()->andX()->add($_qb->expr()->eq('acd.sqTipoDocumento', 'td.sqTipoDocumento'))->add($_qb->expr()->eq('acd.sqPessoaSgdoce', ':sqPessoaSgdoce')))->where('p.sqPessoa = :sqPessoa')->andWhere($_qb->expr()->in('ad.sqAtributoDocumento', ':sqAtributoDocumento'))->setParameter('sqPessoa', $dto->getSqPessoaFisica() ?: null)->setParameter('sqPessoaSgdoce', $dto->getSqPessoaSgdoce() ?: null)->setParameter('sqAtributoDocumento', array(\Core_Configuration::getCorpAtributoDocumentoNumero()));
     return $query;
 }
예제 #3
0
 /**
  * Exclui o destinatario do artefato
  * @param \Core_Dto_Search $dtoSearch
  * @return boolean
  */
 public function deleteDestinatario(\Core_Dto_Abstract $dtoSearch)
 {
     $repository = $this->_getRepository($this->_entityName);
     $criteria = array('sqArtefato' => $dtoSearch->getSqArtefato()->getSqArtefato(), 'sqPessoaSgdoce' => $dtoSearch->getSqPessoaSgdoce()->getSqPessoaSgdoce(), 'sqPessoaFuncao' => $dtoSearch->getSqPessoaFuncao()->getSqPessoaFuncao());
     $destinario = $repository->findOneBy($criteria);
     $this->getEntityManager()->remove($destinario);
     $this->getEntityManager()->flush();
     return TRUE;
 }
예제 #4
0
 /**
  * Obtém os dados da pessoa
  * @return array
  */
 public function searchDadosProfissinal(\Core_Dto_Abstract $dto)
 {
     $queryBuilder = $this->getEntityManager()->createQueryBuilder()->select('vf,c')->from('app:VwProfissional', 'vf')->innerJoin('vf.sqCargo', 'c');
     $queryBuilder->andWhere('vf.sqProfissional = :sqProfissional')->setParameter('sqProfissional', $dto->getSqPessoaSgdoce());
     return $queryBuilder->getQuery()->getSingleResult();
 }