示例#1
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;
 }
示例#2
0
 /**
  * método que retorna os dados da assinatura
  * @param query
  * @return query
  */
 public function getPessoaAssinatura(\Core_Dto_Search $search)
 {
     switch ($search->getSqTipoPessoa()) {
         case \Core_Configuration::getSgdoceTipoPessoaPessoaFisica():
             $query = $this->_em->createQueryBuilder()->select('ps.sqPessoa,
                           ps.noPessoa,
                           c.sqCargo,
                           c.noCargo,
                           un.sqUnidadeOrg,
                           un.noUnidadeOrg')->from('app:VwProfissional', 'p')->leftJoin('p.sqPessoa', 'ps')->leftJoin('p.sqCargo', 'c')->leftJoin('p.sqUnidadeExercicio', 'un');
             $query->andWhere('ps.sqPessoa = :sqPessoa')->setParameter('sqPessoa', $search->getSqPessoa());
             return $query->getQuery()->execute();
             break;
         case \Core_Configuration::getSgdoceTipoPessoaPessoaJuridica():
             $select = 'pti.sqPessoa,pti.noPessoa,ct.sqCargo,ct.noCargo,unt.noUnidadeOrg';
             break;
         case \Core_Configuration::getSgdoceTipoPessoaEstrangeiro():
             $select = 'psu.sqPessoa,psu.noPessoa,cs.sqCargo,cs.noCargo,uns.noUnidadeOrg';
             break;
     }
     $query = $this->_em->createQueryBuilder()->select($select)->from('app:VwChefia', 'c')->innerJoin('c.sqDestinacaoFgDas', 'df')->leftJoin('c.sqProfissionalTitular', 'pt')->leftJoin('c.sqProfissionalSubstituto', 'ps')->leftJoin('pt.sqProfissional', 'pti')->leftJoin('ps.sqProfissional', 'psu')->leftJoin('pt.sqCargo', 'ct')->leftJoin('ps.sqCargo', 'cs')->leftJoin('pt.sqUnidadeExercicio', 'unt')->leftJoin('ps.sqUnidadeExercicio', 'uns');
     $query->andWhere('df.sqUnidadeOrgDestinada = :sqUnidade')->setParameter('sqUnidade', $search->getSqUnidadeOrg());
     return $query->getQuery()->execute();
 }
示例#3
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();
 }
示例#4
0
 /**
  * Método que retorna cpf ou cnpj da pessoa
  * @return array
  */
 public function getTipoPessoa($dtoSearch, $value)
 {
     $cpfCnpj = '';
     switch ($dtoSearch->getSqTipoPessoa()) {
         case \Core_Configuration::getSgdoceTipoPessoaPessoaFisica():
             $cpf = $value->getSqPessoaFisica() ? $value->getSqPessoaFisica()->getNuCpf() : NULL;
             $cpfCnpj = substr($cpf, 0, 3) . '.' . substr($cpf, 3, 3) . '.' . substr($cpf, 6, 3) . '-' . substr($cpf, 9, 2);
             break;
         case \Core_Configuration::getSgdoceTipoPessoaPessoaJuridica():
             $cnpj = $value->getSqPessoaJuridica() ? $value->getSqPessoaJuridica()->getNuCnpj() : NULL;
             $cpfCnpj = substr($cnpj, 0, 2) . '.' . substr($cnpj, 2, 3) . '.' . substr($cnpj, 5, 3) . '/' . substr($cnpj, 8, 4) . '-' . substr($cnpj, 12, 2);
             break;
         case \Core_Configuration::getSgdoceTipoPessoaEstrangeiro():
             $cpfCnpj = $value->getSqDocumento() ? $value->getSqPessoaEstrangeira()->getNuPassaporte() : NULL;
             break;
         default:
             break;
     }
     return $cpfCnpj;
 }