Merge branch '91-jo-list-search-by-plate-number' into 'master'

Resolve "JO list search by plate number"

Closes #91

See merge request jankstudio/resq!76
This commit is contained in:
Kendrick Chan 2018-04-12 14:26:05 +00:00
commit 283583d16a
3 changed files with 40 additions and 2 deletions

View file

@ -518,6 +518,9 @@ class JobOrderController extends BaseController
];
// build query
$qb = $this->getDoctrine()
->getRepository(JobOrder::class)
->createQueryBuilder('q');
$query = $qb->select('q');
$this->setQueryFilters($datatable, $query, $qb, $hubs, $tier, $tier_params['jo_status']);
@ -531,10 +534,19 @@ class JobOrderController extends BaseController
}
// get rows for this page
$query_obj = $query->setFirstResult($offset)
->setMaxResults($perpage)
->getQuery();
error_log($query_obj->getSQL());
$obj_rows = $query_obj->getResult();
/*
$obj_rows = $query->setFirstResult($offset)
->setMaxResults($perpage)
->getQuery()
->getResult();
*/
$statuses = JOStatus::getCollection();
$service_types = ServiceType::getCollection();
@ -550,6 +562,7 @@ class JobOrderController extends BaseController
$row['service_type'] = $service_types[$orow->getServiceType()];
$row['status'] = $statuses[$orow->getStatus()];
$row['flag_advance'] = $orow->isAdvanceOrder();
$row['plate_number'] = $orow->getCustomerVehicle()->getPlateNumber();
$processor = $orow->getProcessedBy();
if ($processor == null)
@ -1585,10 +1598,27 @@ class JobOrderController extends BaseController
->setParameter('hubs', $hubs, Connection::PARAM_STR_ARRAY);
break;
case 'open':
$query->where('q.status IN (:statuses)')
->setParameter('statuses', $status, Connection::PARAM_STR_ARRAY);
if (isset($datatable['query']['data-rows-search']))
{
$query->innerJoin('q.cus_vehicle', 'cv')
->where('q.status IN (:statuses)')
->andWhere('cv.plate_number like :plate')
->setParameter('statuses', $status, Connection::PARAM_STR_ARRAY)
->setParameter('plate', $datatable['query']['data-rows-search'] . '%');
}
else
{
$query->where('q.status IN (:statuses)')
->setParameter('statuses', $status, Connection::PARAM_STR_ARRAY);
}
break;
case 'all':
if (isset($datatable['query']['data-rows-search']))
{
$query->innerJoin('q.cus_vehicle', 'cv')
->where('cv.plate_number like :plate')
->setParameter('plate', $datatable['query']['data-rows-search'] . '%');
}
break;
default:
$query->where('q.status = :status')

View file

@ -77,6 +77,10 @@
field: 'id',
title: 'JO Number'
},
{
field: 'plate_number',
title: 'Plate #'
},
{
field: 'delivery_address',
title: 'Customer Area'

View file

@ -77,6 +77,10 @@
field: 'id',
title: 'JO Number'
},
{
field: 'plate_number',
title: 'Plate #'
},
{
field: 'delivery_address',
title: 'Customer Area'