Esempio n. 1
0
 /**
  * retorna os dados de Pessoa por Nome (Ilike)
  * @param PessoaValueObject $voPessoa
  * @throws PersistException
  */
 public function findByNome(PessoaValueObject $voPessoa, $limit = 10, $offSet = 0)
 {
     try {
         /*
          *       SELECT pess.sq_pessoa,
          *              pess.sq_tipo_pessoa,
          *              pess.no_pessoa
          *       FROM   corporativo.pessoa pess
          *       WHERE  pess.no_pessoa ilike $voPessoa->getNoPessoa()
          **/
         # obtem a entidade com base na anotacao
         $ePessoa = $this->getEntity(array('pess' => $this->annotation()->load()->class));
         # cria objeto de consulta baseando-se em email
         $query = $this->getQuery($ePessoa)->where($ePessoa->column('noPessoa')->ilike('%' . $voPessoa->getNoPessoa() . '%'));
         # filtro de tipo pessoa
         if ($voPessoa->getSqTipoPessoa()) {
             $query->and($ePessoa->column('sqTipoPessoa')->equals($voPessoa->getSqTipoPessoa()->getSqTipoPessoa()));
         }
         /* limit query */
         $query->limit((int) $limit, (int) $offSet);
         # 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. 2
0
 private function _validatePessoa(PessoaValueObject $voPessoa)
 {
     try {
         BusinessException::throwsExceptionIfParamIsNull(trim($voPessoa->getNoPessoa()), self::NAME_REQUIRED);
     } catch (ModelException $mExcp) {
         throw new BusinessException($mExcp->getMessage(), $mExcp->getCode());
     }
 }
Esempio n. 3
0
function libCorpSavePessoa($ctPessoaSave, $userCredential = NULL)
{
    try {
        Registry::factory()->setCredential($userCredential);
        $voPessoa = PessoaValueObject::factory()->loadData($ctPessoaSave);
        PessoaBusiness::factory(NULL, 'libcorp')->save($voPessoa);
        return sprintf(XML_RESULT, 'success', '00000', $voPessoa->toXml());
    } catch (\Exception $excp) {
        return sprintf(XML_RESULT, 'failure', $excp->getCode(), $excp->getMessage());
    }
}
function libCorpUpdatePessoaJuridica($ctPessoaJuridicaUpdate, $userCredential = NULL)
{
    Registry::factory()->setCredential($userCredential);
    $xmlResult = '<result><status>%s</status><errocode>%s</errocode><response>%s</response></result>';
    try {
        $voPessoa = PessoaValueObject::factory()->loadData($ctPessoaJuridicaUpdate);
        $voPessoaJuridica = PessoaJuridicaValueObject::factory()->loadData($ctPessoaJuridicaUpdate);
        $voPessoaJuridica = PessoaJuridicaBusiness::factory()->updatePessoaJuridica($voPessoa, $voPessoaJuridica);
        return sprintf($xmlResult, 'success', '00000', $voPessoaJuridica->toXml());
    } catch (\Exception $excp) {
        return sprintf($xmlResult, 'failure', $excp->getCode(), $excp->getMessage());
    }
}
function libCorpSavePessoaFisica($ctPessoaFisicaSave, $userCredential = NULL)
{
    Registry::factory()->setCredential($userCredential);
    $lcCorpPFTemplateMessage = '<result><status>%s</status><errocode>%s</errocode><response>%s</response></result>';
    try {
        $voPessoa = PessoaValueObject::factory()->loadData($ctPessoaFisicaSave);
        $voPessoaFisica = PessoaFisicaValueObject::factory()->loadData($ctPessoaFisicaSave);
        $voPessoaFisica = PessoaFisicaBusiness::factory(NULL, 'libcorp')->savePessoaFisica($voPessoa, $voPessoaFisica);
        return sprintf($lcCorpPFTemplateMessage, 'success', '00000', $voPessoaFisica->toXml());
    } catch (\Exception $excp) {
        return sprintf($lcCorpPFTemplateMessage, 'failure', $excp->getCode(), $excp->getMessage());
    }
}
 /**
  * @param string $voPessoaJuridica
  * @return PessoaJuridicaModel
  * */
 public function findByCnpj($nuCnpj)
 {
     $ePessoaJuridica = $this->getEntity(array('ps' => PessoaJuridicaValueObject::factory()));
     $ePessoa = $this->getEntity(PessoaValueObject::factory());
     # cria consulta
     $query = $this->getQuery($ePessoa)->join($ePessoaJuridica, $ePessoaJuridica->column('sqPessoa')->equals($ePessoa->column('sqPessoa')))->where($ePessoaJuridica->column('nuCnpj')->like($nuCnpj . '%'));
     try {
         return $this->execute($query);
     } catch (PersistException $pExc) {
         # efetua log de erro ;
         throw new ModelException(self::REQUIRE_DATA_ERROR_MESSAGE);
     }
 }
function libCorpPessoaByNome($noPessoa)
{
    try {
        $voPessoa = PessoaValueObject::factory()->setNoPessoa($noPessoa);
        $tmpResult = PessoaBusiness::factory()->findByNome($voPessoa);
        $tmpTxt = '<result>';
        foreach ($tmpResult as $result) {
            $tmpTxt .= $result->toXml();
        }
        $tmpTxt .= '</result>';
        return $tmpTxt;
    } catch (\Exception $excp) {
        throw new IOException($excp->getMessage());
    }
}
function libCorpUnidadeOrgByUndDescenNome($noPessoa)
{
    try {
        $voPessoa = PessoaValueObject::factory()->setnoPessoa($noPessoa);
        $unidadeOrgBusiness = UnidadeOrgBusiness::factory(NULL, 'libcorp');
        $tmpTxt = '<result>';
        $tmpResult = $unidadeOrgBusiness->findUndDescentralizadaByNome($voPessoa);
        foreach ($tmpResult as $result) {
            $tmpTxt .= $result->toXml();
        }
        $tmpTxt .= '</result>';
        return $tmpTxt;
    } catch (\Exception $excp) {
        throw new IOException($excp->getMessage());
    }
}
function libCorpSavePessoaJuridica($ctSavePessoaJuridica, $userCredential = NULL)
{
    Registry::factory()->setCredential($userCredential);
    $xmlResult = '<result><status>%s</status><errocode>%s</errocode><response>%s</response></result>';
    try {
        if (!isset($ctSavePessoaJuridica['inTipoEstabelecimento'])) {
            $ctSavePessoaJuridica['inTipoEstabelecimento'] = TRUE;
        }
        $voPessoa = PessoaValueObject::factory()->loadData($ctSavePessoaJuridica);
        $voPessoaJuridica = PessoaJuridicaValueObject::factory()->loadData($ctSavePessoaJuridica);
        $voPessoaJuridica = PessoaJuridicaBusiness::factory(NULL, 'libcorp')->savePessoaJuridica($voPessoa, $voPessoaJuridica);
        return sprintf($xmlResult, 'success', '00000', $voPessoaJuridica->toXml());
    } catch (\Exception $excp) {
        return sprintf($xmlResult, 'failure', $excp->getCode(), $excp->getMessage());
    }
}
Esempio n. 10
0
 /**
  * @param PessoaValueObject $valueObject
  * @param string $constantName
  * @return ResultSet
  * */
 public function findDocumentOrPropertyByPessoa(PessoaValueObject $valueObject, $constantName = NULL)
 {
     /* @todo criar query quando o SICA for de responsabilidade da cotec */
     $query = 'SELECT pe.sq_pessoa,
                      doc.tx_valor,
                      att_doc.no_atributo_documento,
                      tp_doc.no_tipo_documento,
                      tp_doc.sq_tipo_documento
                 FROM corporativo.documento doc
           INNER JOIN corporativo.atributo_tipo_documento att_tp_doc ON att_tp_doc.sq_atributo_tipo_documento = doc.sq_atributo_tipo_documento
           INNER JOIN corporativo.tipo_documento tp_doc              ON tp_doc.sq_tipo_documento = att_tp_doc.sq_tipo_documento
           INNER JOIN corporativo.atributo_documento att_doc         ON att_doc.sq_atributo_documento = att_tp_doc.sq_atributo_documento
           INNER JOIN corporativo.pessoa pe                          ON pe.sq_pessoa = doc.sq_pessoa ';
     if (NULL != $constantName) {
         $query .= sprintf("INNER JOIN sicae.configuracao conf ON conf.no_constante = '%s' AND att_doc.sq_atributo_documento  = conf.sq_valor ", $constantName);
     }
     $query .= 'WHERE pe.sq_pessoa = :sqPessoa';
     $params['sqPessoa'] = new \stdClass();
     $params['sqPessoa']->type = 'integer';
     $params['sqPessoa']->value = $valueObject->getSqPessoa();
     return $this->execute($query, $params);
 }
Esempio n. 11
0
 /**
  * @param PessoaValueObject $filterPessoa
  * @param integer $limit
  * @return br\gov\sial\core\persist\ResultSet
  * @throws PersistException
  */
 public function findUnidadeConservacao(PessoaValueObject $filterPessoa, $limit = NULL)
 {
     try {
         $sql = "select\n                        p.*\n                    from\n                        corporativo.unidade_org uo\n                    inner join\n                        corporativo.pessoa p on p.sq_pessoa = uo.sq_pessoa \n                    inner join\n                        corporativo.tipo_unidade_org_hierarq tp on \n                            uo.sq_tipo_unidade = tp.sq_tipo_unidade_org and \n                            tp.trilha_sigla ilike '%-->uc-->%' ";
         $this->_query = $sql;
         $ePessoa = $this->getEntity(array('p' => $filterPessoa));
         $condicional = array(array('entity' => $ePessoa, 'field' => 'noPessoa', 'value' => '%' . $filterPessoa->getNoPessoa()));
         $this->buildWhere($condicional);
         if ($limit) {
             $this->_query .= " limit {$limit}";
         }
         return $this->execute($this->_query, $this->_params);
     } catch (\Exception $exp) {
         throw new PersistException($exp->getMessage(), $exp->getCode(), $exp);
     }
 }