/** * efetua por nome to tipo de pessoa * * @param TipoPessoaValueObject * @return ResultSet * */ public function findByPartOfName(TipoPessoaValueObject $tipoPessoa) { try { /* * SELECT sqTipoPessoa, noTipoPessoa FROM TipoPessoa WHERE noTipoPessoa LIKE '%?%' * */ # obtem a entidade com base na anotacao $eTipoPessoa = $this->getEntity(array('tp' => $tipoPessoa)); # filtro $filter = $eTipoPessoa->column('noTipoPessoa')->ilike(sprintf('%%%s%%', $tipoPessoa->getNoTipoPessoa())); # cria objeto de consulta baseando-se em bioma $query = $this->getQuery($eTipoPessoa)->where($filter); # 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'); } }
function libCorpTipoByPartName($noTipoPessoa) { try { $voTPessoa = TipoPessoaValueObject::factory()->setNoTipoPessoa($noTipoPessoa); $tmpResult = TipoPessoaBusiness::factory()->findByPartOfName($voTPessoa); $tmpTxt = '<result>'; foreach ($tmpResult as $result) { $tmpTxt .= $result->toXml(); } $tmpTxt .= '</result>'; return $tmpTxt; } catch (\Exception $excp) { throw new IOException($excp->getMessage()); } }