/**
  * @param \Core_Dto_Search $dto
  */
 public function findByNuDigital($dto)
 {
     $sql = 'SELECT  id, tipo, numero, origem, 
                     destino, interessado, assunto, 
                     assunto_complementar, 
                     cargo, assinatura, procedencia, 
                     digital, dt_cadastro, dt_prazo, 
                     ultimo_tramite, prioridade, autor
            FROM sgdoce.vw_documento_sgdoc_fisico WHERE digital = lpad(\'%1$d\', 7, \'0\');';
     $strSql = sprintf($sql, $dto->getNuDigital());
     $rsm = new \Doctrine\ORM\Query\ResultSetMapping($this->_em);
     $rsm->addScalarResult('id', 'id', 'integer');
     $rsm->addScalarResult('tipo', 'tipo', 'string');
     $rsm->addScalarResult('numero', 'numero', 'string');
     $rsm->addScalarResult('origem', 'origem', 'string');
     $rsm->addScalarResult('destino', 'destino', 'string');
     $rsm->addScalarResult('interessado', 'interessado', 'string');
     $rsm->addScalarResult('assunto', 'assunto', 'string');
     $rsm->addScalarResult('assunto_complementar', 'assuntoComplementar', 'string');
     $rsm->addScalarResult('cargo', 'cargo', 'string');
     $rsm->addScalarResult('assinatura', 'assinatura', 'string');
     $rsm->addScalarResult('procedencia', 'procedencia', 'string');
     $rsm->addScalarResult('digital', 'digital', 'string');
     $rsm->addScalarResult('dt_cadastro', 'dtCadastro', 'zenddate');
     $rsm->addScalarResult('dt_prazo', 'dtPrazo', 'zenddate');
     $rsm->addScalarResult('ultimo_tramite', 'ultimoTramite', 'string');
     $rsm->addScalarResult('prioridade', 'prioridade', 'string');
     $rsm->addScalarResult('autor', 'autor', 'string');
     $nativeQuery = $this->_em->createNativeQuery($strSql, $rsm);
     return $nativeQuery->getArrayResult();
 }
Beispiel #2
0
 public function findArtefato(\Core_Dto_Search $dto)
 {
     $criteria = array('nuArtefato' => $dto->getNuArtefato(), 'nuDigital' => $dto->getNuDigital());
     return $this->_getRepository('app:Artefato')->findBy($criteria);
 }
 /**
  * método salvar vinculo de material de apoio dos artefatos
  * @param \Core_Dto_Search $dto
  */
 public function salvarMaterial(\Core_Dto_Search $dto)
 {
     $criteria = array('nuDigital' => $dto->getNuDigital());
     $artefato = $this->_getRepository('app:Artefato')->findOneBy($criteria);
     $sqArtefatoPai = $this->_getRepository()->find($dto->getSqArtefato());
     $sqArtefatoFilho = $this->_getRepository()->find($artefato->getSqArtefato());
     $sqTipoVinculo = $this->_getRepository('app:TipoVinculoArtefato')->find(\Core_Configuration::getSgdoceTipoVinculoArtefatoApoio());
     $entity = new \Sgdoce\Model\Entity\ArtefatoVinculo();
     $entity->setSqArtefatoPai($sqArtefatoPai);
     $entity->setSqArtefatoFilho($sqArtefatoFilho);
     $entity->setSqTipoVinculoArtefato($sqTipoVinculo);
     $entity->setDtVinculo(\Zend_Date::now());
     $this->getEntityManager()->persist($entity);
     $this->getEntityManager()->flush();
     return $entity;
 }
Beispiel #4
0
 public function recuperaNumeroLoteEtiqueta(\Core_Dto_Search $search)
 {
     $qb = $this->_em->createQueryBuilder();
     $qb->select('le.sqLoteEtiqueta')->from('app:LoteEtiqueta', 'le')->where($qb->expr()->eq('le.sqUnidadeOrg', ':sqUnidadeOrg'))->andWhere($qb->expr()->eq('le.nuAno', ':nuAno'))->andWhere($qb->expr()->between(':nuDigital', 'le.nuInicial', 'le.nuFinal'))->andWhere($qb->expr()->eq('le.sqTipoEtiqueta', ':sqTipoEtiqueta'))->setParameter('nuDigital', $search->getNuDigital())->setParameter('sqUnidadeOrg', $search->getSqUnidadeOrg())->setParameter('nuAno', $search->getNuAno())->setParameter('sqTipoEtiqueta', \Core_Configuration::getSgdoceTipoEtiquetaFisica());
     $lote = $qb->getQuery()->getArrayResult();
     $sqLoteEtiqueta = null;
     if ($lote) {
         $sqLoteEtiqueta = $lote[0]['sqLoteEtiqueta'];
     }
     return $sqLoteEtiqueta;
 }
 public function addArtefatoVinculo(\Core_Dto_Search $dto)
 {
     $entity = NULL;
     $artefato = $this->_getRepository('app:Artefato')->findBy(array('nuDigital' => $dto->getNuDigital()));
     if ($artefato) {
         $sqArtefatoPai = $this->_getRepository('app:Artefato')->find($dto->getSqArtefato());
         $sqArtefatoFilho = $this->_getRepository()->find($artefato[0]->getSqArtefato());
         $sqTipoVinculo = $this->_getRepository('app:TipoVinculoArtefato')->find($dto->getTipoVinculo());
         $entity = new \Sgdoce\Model\Entity\ArtefatoVinculo();
         $entity->setSqArtefatoPai($sqArtefatoPai);
         $entity->setSqArtefatoFilho($sqArtefatoFilho);
         $entity->setSqTipoVinculoArtefato($sqTipoVinculo);
         $entity->setDtVinculo(\Zend_Date::now());
         if ($dto->getInOriginal()) {
             $entity->setInOriginal($dto->getInOriginal());
         } else {
             $entity->setInOriginal(FALSE);
         }
         $this->getEntityManager()->persist($entity);
         $this->getEntityManager()->flush($entity);
     }
     return $entity;
 }
Beispiel #6
0
 /**
  *
  * @param \Core_Dto_Search $dto
  * @return \Sgdoce\Model\Entity\EtiquetaNupSiorg
  */
 public function getDigitalNupSiorg(\Core_Dto_Search $dto)
 {
     return $this->_getRepository('app:EtiquetaNupSiorg')->findOneBy(array('nuEtiqueta' => $dto->getNuDigital()));
 }