/** * Metódo que recupera a pessoa * @return json */ public function searchPessoaDestinoAction() { $this->_helper->layout->disableLayout(); $params = $this->_getAllParams(); if ($params['extraParam'] == \Core_Configuration::getSgdoceTipoPessoaMinisterioPublico()) { unset($params['extraParam']); $service = $this->getService('VwUnidadeOrg')->searchUnidadesOrganizacionais($this->_getAllParams()); } else { unset($params['extraParam']); $dtoSearch = \Core_Dto::factoryFromData($params, 'search'); $service = $this->getService()->searchPessoaInterna($dtoSearch); } $this->_helper->json($service); }
/** * método que retorna os dados da pessoa rodape * @param dto Search * @return array */ public function getPessoaDadosRodape(\Core_Dto_Search $search) { $nuCpfCnpjPassaporte = ''; $query = $this->_em->createQueryBuilder(); switch ($search->getSqTipoPessoa()) { case \Core_Configuration::getSgdoceTipoPessoaPessoaFisica(): $query->select('p,pf,d'); break; case \Core_Configuration::getSgdoceTipoPessoaPessoaJuridica(): $query->select('p,pj'); break; case \Core_Configuration::getSgdoceTipoPessoaEstrangeiro(): $query->select('p,e'); break; case \Core_Configuration::getSgdoceTipoPessoaMinisterioPublico(): case \Core_Configuration::getSgdoceTipoPessoaOutrosOrgaos(): $query->select('p'); break; default: $query->select('p,pf,pj,e'); } $query->from($this->_enName, 'p'); $this->addWhere($query, $search, $nuCpfCnpjPassaporte); return $query->getQuery()->execute(); }
/** * 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); }
/** * Realiza a busca de informacoes da pessoa pelo codigo do documento CPF/CNPJ/RegistroEstrangeiro * @param \Core_Dto_Search $search * @return Object */ public function buscaPessoaPorDocumento(\Core_Dto_Search $search) { $filter = new \Zend_Filter_Digits(); $nuCpfCnpjPassaporte = $filter->filter($search->getNuCpfCnpjPassaporte()); switch ($search->getSqTipoPessoa()) { case \Core_Configuration::getSgdoceTipoPessoaPessoaFisica(): if ($search->getSqTipoPessoa() == \Core_Configuration::getSgdoceTipoPessoaPessoaFisica()) { $select = 'p,pf'; } else { $select = 'p,pf,d'; } break; case \Core_Configuration::getSgdoceTipoPessoaPessoaJuridica(): $select = 'p,pj'; break; case \Core_Configuration::getSgdoceTipoPessoaMinisterioPublico(): case \Core_Configuration::getSgdoceTipoPessoaOutrosOrgaos(): $select = 'p'; break; } $query = $this->_em->createQueryBuilder()->select($select)->from($this->_enName, 'p'); $this->addWhere($query, $search, $nuCpfCnpjPassaporte); $result = $query->getQuery()->execute(); return $result ? $result[0] : $result; }