Exemplo n.º 1
0
 /**
  * método para cadastrar pessoa na entidade pessoa sgdoce caso necessario
  * @param \Core_Dto_Search $dto
  */
 public function validarPessoa($dto)
 {
     $criteria = array('sqPessoaCorporativo' => $dto->getSqPessoaCorporativo());
     $pessoaSgdoce = $this->_getRepository('app:PessoaSgdoce')->findBy($criteria);
     if (!$pessoaSgdoce) {
         $criteria = array('sqPessoa' => $dto->getSqPessoaCorporativo());
         $pessoa = $this->_getRepository('app:VwPessoa')->findBy($criteria);
         $pessoa = $pessoa[0];
         $sqTipoPessoa = $this->_getRepository('app:VwTipoPessoa')->find($pessoa->getSqTipoPessoa());
         $sqPessoaCorp = $this->_getRepository('app:VwPessoa')->find($pessoa->getSqPessoa());
         $entity = new \Sgdoce\Model\Entity\PessoaSgdoce();
         $entity->setNoPessoa($pessoa->getNoPessoa());
         $entity->setSqTipoPessoa($sqTipoPessoa);
         $entity->setNoPessoa($pessoa->getNoPessoa());
         $entity->setSqPessoaCorporativo($sqPessoaCorp);
         if ($sqPessoaCorp->getSqTipoPessoa() == \Core_Configuration::getSgdoceTipoPessoaPessoaFisica()) {
             $pessoa = $this->_getRepository('app:VwPessoaFisica')->find($pessoa->getSqPessoa());
             $entity->setNuCpfCnpjPassaporte($pessoa->getNuCpf());
         }
         if ($sqPessoaCorp->getSqTipoPessoa() == \Core_Configuration::getSgdoceTipoPessoaPessoaJuridica()) {
             $pessoa = $this->_getRepository('app:VwPessoaJuridica')->find($pessoa->getSqPessoa());
             $entity->setNuCpfCnpjPassaporte($pessoa->getNuCnpj());
         }
         $this->getEntityManager()->persist($entity);
         $this->getEntityManager()->flush();
     }
 }
Exemplo n.º 2
0
 public function returnCpfCnpjPassaporte($dtoPessoaSearch)
 {
     $vwPessoa = $this->getPessoaDados($dtoPessoaSearch);
     $nuCpfCnjPassaporte = '';
     switch ($vwPessoa->getSqTipoPessoa()) {
         case \Core_Configuration::getSgdoceTipoPessoaPessoaFisica():
             if ($vwPessoa->getSqPessoaFisica()->getSqNacionalidade()->getSqPais() == \Core_Configuration::getSgdocePaisBrasil() || $vwPessoa->getSqPessoaFisica()->getSqNacionalidade()->getSqPais() == NULL) {
                 $nuCpfCnjPassaporte = $vwPessoa->getSqPessoaFisica()->getNuCpf();
             } else {
                 if ($vwPessoa->getSqPessoaDocumento() && $vwPessoa->getSqPessoaDocumento()->getTxValor() != NULL) {
                     $nuCpfCnjPassaporte = $vwPessoa->getSqPessoaDocumento()->getTxValor();
                 }
             }
             break;
         case \Core_Configuration::getSgdoceTipoPessoaPessoaJuridica():
             $nuCpfCnjPassaporte = $vwPessoa->getSqPessoaJuridica()->getNuCnpj();
             break;
     }
     return $nuCpfCnjPassaporte;
 }
Exemplo n.º 3
0
 /**
  * Valida dados do documento pessoa
  * @param  $search
  * @return array
  */
 public function validaDados($search)
 {
     $result = $this->_em->getRepository('app:VwPEssoa')->getDocumento();
     $nuCpfCnpjPassaporte = str_replace('-', '', $search->getNuCPFInteressado());
     $nuCpfCnpjPassaporte = str_replace('/', '', $nuCpfCnpjPassaporte);
     $nuCpfCnpjPassaporte = str_replace('.', '', $nuCpfCnpjPassaporte);
     $select = $this->getSelect($search);
     $query = $this->_em->createQueryBuilder()->select($select)->from('app:VwPessoa', 'p');
     if ($search->getSqPessoaCorporativo()) {
         $query->andWhere('p.sqPessoa = :sqPessoa')->setParameter('sqPessoa', $search->getSqPessoaCorporativo());
     }
     switch ($search->getSqTipoPessoaInteressado()) {
         case \Core_Configuration::getSgdoceTipoPessoaPessoaFisica():
             $query->leftJoin('p.sqPessoaFisica', 'pf');
             if ($nuCpfCnpjPassaporte != '') {
                 $query->andWhere('pf.nuCpf = :nuCpf')->setParameter('nuCpf', $nuCpfCnpjPassaporte);
             }
             break;
         case \Core_Configuration::getSgdoceTipoPessoaPessoaJuridica():
             $query->leftJoin('p.sqPessoaJuridica', 'pj');
             if ($nuCpfCnpjPassaporte != '') {
                 $query->andWhere('pj.nuCnpj = :nuCnpj')->setParameter('nuCnpj', $nuCpfCnpjPassaporte);
             }
             break;
         case \Core_Configuration::getSgdoceTipoPessoaEstrangeiro():
             $query->leftJoin('p.sqPessoaDocumento', 'd');
             if ($nuCpfCnpjPassaporte != '') {
                 $query->andWhere('d.sqAtributoTipoDocumento = :sqAtributoTipoDocumento')->setParameter('sqAtributoTipoDocumento', $result['sqAtributoTipoDocumento']);
             }
             break;
     }
     $out = array();
     $result = $query->getQuery()->execute();
     foreach ($result as $value) {
         $out[] = array('sqPessoa' => $value->getSqPessoa(), 'noPessoa' => $value->getNoPessoa(), 'nuCpfCnpjPassaporte' => $this->getCpfCnpjPassaporte($search, $value));
     }
     return $out;
 }
Exemplo n.º 4
0
 /**
  * Realiza o upload do arquivo
  */
 public function uploadFileEndereco($post)
 {
     $tipoPessoa = 'fisica';
     if (isset($post['sqTipoPessoa']) && $post['sqTipoPessoa']) {
         if ($post['sqTipoPessoa'] == \Core_Configuration::getSgdoceTipoPessoaPessoaJuridica()) {
             $tipoPessoa = 'juridica';
         }
     }
     $dto = new \Core_Dto_Search($post);
     $this->_redirect('/auxiliar/pessoa-' . $tipoPessoa . '/edit/id/' . $dto->getSqPessoa() . (isset($post['new']) && $post['new'] == 1 ? '/new/true' : '') . '/#enderecos');
 }
Exemplo n.º 5
0
 /**
  * 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();
 }
Exemplo n.º 6
0
 /**
  * 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;
 }
Exemplo n.º 7
0
 /**
  * Monta o Dto pessoa
  * @return array
  */
 public function mountDtoPessoaSgdoce($params)
 {
     //sgdoce
     $dtoSearch = \Core_Dto::factoryFromData($params, 'search');
     $params = $this->getPessoaCorporativo($dtoSearch, $params);
     $dtoPessoaSgdoce = \Core_Dto::factoryFromData($params, 'entity', array('entity' => 'Sgdoce\\Model\\Entity\\PessoaSgdoce', 'mapping' => array('sqTipoPessoa' => 'Sgdoce\\Model\\Entity\\VwTipoPessoa', 'sqPessoaCorporativo' => array('sqPessoa' => 'Sgdoce\\Model\\Entity\\VwPessoa'))));
     $sqPessoaSgdoce = $this->getServiceLocator()->getService('Pessoa')->findPessoaSgdoce($dtoPessoaSgdoce);
     if (!$sqPessoaSgdoce) {
         $pessoaCorp = $this->_getRepository('app:VwPessoa')->find($dtoPessoaSgdoce->getSqPessoaCorporativo()->getSqPessoa());
         switch ($pessoaCorp->getSqTipoPessoa()) {
             case \Core_Configuration::getSgdoceTipoPessoaPessoaFisica():
                 //fisica
                 if ($pessoaCorp->getSqPessoaFisica()->getSqNacionalidade()->getSqPais() == 1 || $pessoaCorp->getSqPessoaFisica()->getSqNacionalidade()->getSqPais() == NULL) {
                     $dtoPessoaSgdoce->setNuCpfCnpjPassaporte($pessoaCorp->getSqPessoaFisica()->getNuCpf());
                 } else {
                     $repository = $this->_getRepository('app:VwPessoa');
                     $atributoTipoDocumento = $repository->getDocumento();
                     $repositoryDoc = $this->_getRepository('app:VwDocumento');
                     $nuDocumento = $repositoryDoc->findBy(array('sqPessoa' => $pessoaCorp->getSqPessoa(), 'sqAtributoTipoDocumento' => $atributoTipoDocumento['sqAtributoTipoDocumento']));
                     if (count($nuDocumento)) {
                         $dtoPessoaSgdoce->setNuCpfCnpjPassaporte($nuDocumento[0]->getTxValor());
                     }
                 }
                 break;
             case \Core_Configuration::getSgdoceTipoPessoaPessoaJuridica():
                 //juridica
                 if ($pessoaCorp->getSqPessoaJuridica()) {
                     $dtoPessoaSgdoce->setNuCpfCnpjPassaporte($pessoaCorp->getSqPessoaJuridica()->getNuCnpj());
                 }
                 break;
             default:
                 break;
         }
         $return = $this->getServiceLocator()->getService('MinutaEletronica')->saveDestinatario($dtoPessoaSgdoce);
         $sqPessoaSgdoce = $return->getSqPessoaSgdoce();
     }
     $params['sqPessoaSgdoce'] = $sqPessoaSgdoce;
     return $params;
 }