$orderBy
= 'p.'.
$searchOptions
['orderBy'];
$repository
=
$this
->entityManager
->getRepository('AppBundle:GoodsIndex');
$query
=
$repository
->createQueryBuilder('p');
$query
->select('DISTINCT(p.goodsId)');
$query
->where('p.keywords like :keywords')
->setParameter('keywords',
"%{$searchOptions['keywords']}%"
)
->andwhere('p.status = :status')
->setParameter('status', GoodsIndex::STATUS_NORMAL)
->orderBy(
$orderBy
,
$searchOptions
['order'])
->setFirstResult(
$pagination
['pageSize'] * (
$pagination
['page'] - 1))
->setMaxResults(
$pagination
['pageSize']);
if
(!
empty
(
$searchOptions
['warehouseIdList'])) {
$query
->andWhere(
$query
->expr()->in('p.warehouseId',
$searchOptions
['warehouseIdList']));
}
$goodsIndexList
=
$query
->getQuery()->getResult();