Esempio n. 1
0
function libCorpPessoaByCpf($nuCpf)
{
    try {
        $voPessoaFisica = PessoaFisicaValueObject::factory()->setNuCpf(preg_replace('/\\D+/', '', $nuCpf));
        $result = PessoaBusiness::factory(NULL, 'libcorp')->findByCpf($voPessoaFisica);
        $result = !$result->isEmpty() ? $result->toXml() : NULL;
        return sprintf('<%1$s>%2$s</%1$s>', 'result', $result);
    } catch (\Exception $excp) {
        throw new IOException($excp->getMessage());
    }
}
function libCorpUpdatePessoaFisica($ctPessoaFisicaUpdate, $userCredential = NULL)
{
    Registry::factory()->setCredential($userCredential);
    $xmlResult = '<result><status>%s</status><errocode>%s</errocode><response>%s</response></result>';
    try {
        $voPessoa = PessoaValueObject::factory()->loadData($ctPessoaFisicaUpdate);
        $voPessoaFisica = PessoaFisicaValueObject::factory()->loadData($ctPessoaFisicaUpdate);
        $voPessoaFisica = PessoaFisicaBusiness::factory()->updatePessoaFisica($voPessoa, $voPessoaFisica);
        return sprintf($xmlResult, 'success', '00000', $voPessoaFisica->toXml());
    } catch (\Exception $excp) {
        return sprintf($xmlResult, 'failure', $excp->getCode(), $excp->getMessage());
    }
}
Esempio n. 3
0
 /**
  * Join para obter Pessoas por Nome
  * @param PessoaFisicaValueObject $voPessoaFisica
  */
 public function findByCpf(PessoaFisicaValueObject $voPessoaFisica)
 {
     try {
         /*
          *       SELECT *
          *       FROM pessoa as ps
          *       INNER JOIN pessoa_fisica as pf USING (sq_pessoa)
          *       WHERE nu_cpf = '69905231153'
          * */
         # obtem a entidade com base na anotacao
         $ePessoa = $this->getEntity(array('pe' => $this->annotation()->load()->class));
         # cria entidade pessoa_fisica
         $ePessoaFisica = $this->getEntity(array('pf' => $voPessoaFisica));
         # cria objeto de consulta baseando-se em email
         $query = $this->getQuery($ePessoa)->join($ePessoaFisica, $ePessoa->column('sqPessoa')->equals($ePessoaFisica->column('sqPessoa')))->where($ePessoaFisica->column('nuCpf')->equals($voPessoaFisica->getNuCpf()));
         # executa query
         return $this->execute($query);
     } catch (IllegalArgumentException $iae) {
         throw new PersistException(self::INVALID_PARAMETER);
     } catch (\Exception $exp) {
         throw new PersistException(self::UNEXPECTED_EXCEPTION);
     }
 }
Esempio n. 4
0
 /**
  * Obtem Emails por CPF
  * @param PessoaFisicaValueObject $voPessoaFisica
  */
 public function findByCpf(PessoaFisicaValueObject $voPessoaFisica)
 {
     try {
         /*
          *       SELECT tx_email
          *       FROM email AS em
          *       INNER JOIN pessoa_fisica AS pf USING (sq_pessoa)
          *       WHERE nu_cpf = ?;
          * */
         # obtem a entidade com base na anotacao
         $eEmail = $this->getEntity(array('em' => $this->annotation()->load()->class));
         # cria entidade pessoa_fisica
         $ePessoaFisica = $this->getEntity(array('pf' => $voPessoaFisica));
         # cria objeto de consulta baseando-se em email
         $query = $this->getQuery($eEmail)->join($ePessoaFisica, $eEmail->column('sqPessoa')->equals($ePessoaFisica->column('sqPessoa')))->where($ePessoaFisica->column('nuCpf')->equals($voPessoaFisica->getNuCpf()));
         # executa query
         return $this->execute($query);
     } catch (IllegalArgumentException $iae) {
         throw new PersistException('Um ou mais paramentros informados para na montagem da query foi avaliado como inválido');
     } catch (\Exception $exp) {
         throw new PersistException('Um erro inesperado ocorreu ao tentar executar a recuperação dos dados');
     }
 }
Esempio n. 5
0
function libCorpEmailByCpf($nuCpf)
{
    try {
        $voPessoaFisica = PessoaFisicaValueObject::factory()->setNuCpf($nuCpf);
        $tmpResult = EmailBusiness::factory()->findByCpf($voPessoaFisica);
        $tmpTxt = '<result>';
        foreach ($tmpResult as $result) {
            $tmpTxt .= $result->toXml();
        }
        $tmpTxt .= '</result>';
        return $tmpTxt;
    } catch (\Exception $excp) {
        throw new IOException($excp->getMessage());
    }
}
 /**
  * @example PessoaFisicaBusiness::updatePessoaFisica
  * @code
  * <?php
  *     # cria filtro usado pelo Pessoa Fisica
  *     $pessoaVO       = ValueObjectAbstract::factory('fullnamespace');
  *     $pessoaFisicaVO = ValueObjectAbstract::factory('fullnamespace');
  *     # outra forma de utilizar
  *     # $pessoaVO = PessoaValueObject::factory();
  *     # $pessoaFisicaVO = PessoaFisicaValueObject::factory();
  *     $pessoaFisicaVO->setNuCpf('12345678909');
  *
  *     # efetua pesquisa
  *     $pessoaBusiness = PessoaFisicaBusiness::factory();
  *     $pessoaBusiness->updatePessoaFisica($pessoaVO, $pessoaFisicaVO);
  * ?>
  * @endcode
  *
  * @param PessoaValueObject $voPessoa
  * @param PessoaFisicaValueObject $voPessoaFisica
  * @throws BusinessException
  */
 public function updatePessoaFisica(PessoaValueObject $voPessoa, PessoaFisicaValueObject $voPessoaFisica)
 {
     try {
         $voPessoaFisicaClone = clone $voPessoaFisica;
         # retira a máscara do CPF
         $voPessoaFisica->setNuCpf(preg_replace("/\\D+/", "", $voPessoaFisica->getNuCpf()));
         # efetua validação
         $this->_validatePessoaFisica($voPessoa, $voPessoaFisica);
         $sqPessoa = $voPessoa->getSqPessoa();
         BusinessException::throwsExceptionIfParamIsNull($sqPessoa, self::REQUIRED_SQ_PESSOA);
         $voTmp = PessoaBusiness::factory(NULL, 'libcorp')->find($voPessoa->getSqPessoa());
         $voPessoa->copySaveObjectData($voTmp);
         PessoaBusiness::factory(NULL, 'libcorp')->update($voPessoa);
         # Salva PessoaFisica
         $voPessoaTmp = self::factory(NULL, 'libcorp')->find($voPessoa->getSqPessoa());
         $voPessoaFisica->copySaveObjectData($voPessoaTmp);
         # anula nacionalidade
         if (0 === $voPessoaFisicaClone->getSqNacionalidade()) {
             $voPessoaFisica->setSqNacionalidade(NULL);
         }
         # anula naturalidade
         if (0 === $voPessoaFisicaClone->getSqNaturalidade()) {
             $voPessoaFisica->setSqNaturalidade(NULL);
         }
         $this->getModelPersist('libcorp')->update($voPessoaFisica);
         return $voPessoaFisica;
     } catch (ModelException $mExcp) {
         throw new BusinessException($mExcp->getMessage(), $mExcp->getCode());
     }
 }