Fix Customer bug when no vehicle or mobile number is selected
This commit is contained in:
parent
ec68b7a787
commit
85a0f972c7
1 changed files with 26 additions and 21 deletions
|
|
@ -101,7 +101,6 @@ class CustomerController extends BaseController
|
|||
->getQuery()
|
||||
->getResult();
|
||||
|
||||
$classifications = CustomerClassification::getCollection();
|
||||
|
||||
// process rows
|
||||
$rows = [];
|
||||
|
|
@ -110,7 +109,7 @@ class CustomerController extends BaseController
|
|||
$row['id'] = $orow->getID();
|
||||
$row['first_name'] = $orow->getFirstName();
|
||||
$row['last_name'] = $orow->getLastName();
|
||||
$row['customer_classification'] = $classifications[$orow->getCustomerClassification()];
|
||||
$row['customer_classification'] = CustomerClassification::getName($orow->getCustomerClassification());
|
||||
$row['flag_mobile_app'] = $orow->hasMobileApp();
|
||||
$row['app_mobile_number'] = $orow->hasMobileApp() && !empty($orow->getMobileSessions()) ? $orow->getMobileSessions()[0]->getPhoneNumber() : '';
|
||||
|
||||
|
|
@ -410,16 +409,19 @@ class CustomerController extends BaseController
|
|||
}
|
||||
|
||||
// delete all numbers not in list
|
||||
$qb = $em->createQueryBuilder();
|
||||
$del_numbers = $qb->select('m')
|
||||
->from(MobileNumber::class, 'm')
|
||||
->where($qb->expr()->notIn('m.id', $number_ids))
|
||||
->getQuery()
|
||||
->getResult();
|
||||
if (count($number_ids) > 0)
|
||||
{
|
||||
$qb = $em->createQueryBuilder();
|
||||
$del_numbers = $qb->select('m')
|
||||
->from(MobileNumber::class, 'm')
|
||||
->where($qb->expr()->notIn('m.id', $number_ids))
|
||||
->getQuery()
|
||||
->getResult();
|
||||
|
||||
if (!empty($del_numbers)) {
|
||||
foreach ($del_numbers as $dn) {
|
||||
$em->remove($dn);
|
||||
if (!empty($del_numbers)) {
|
||||
foreach ($del_numbers as $dn) {
|
||||
$em->remove($dn);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -500,17 +502,20 @@ class CustomerController extends BaseController
|
|||
}
|
||||
}
|
||||
|
||||
// delete all vehicles not in list
|
||||
$qb = $em->createQueryBuilder();
|
||||
$del_vehicles = $qb->select('cv')
|
||||
->from(CustomerVehicle::class, 'cv')
|
||||
->where($qb->expr()->notIn('cv.id', $vehicle_ids))
|
||||
->getQuery()
|
||||
->getResult();
|
||||
if (count($vehicle_ids) > 0)
|
||||
{
|
||||
// delete all vehicles not in list
|
||||
$qb = $em->createQueryBuilder();
|
||||
$del_vehicles = $qb->select('cv')
|
||||
->from(CustomerVehicle::class, 'cv')
|
||||
->where($qb->expr()->notIn('cv.id', $vehicle_ids))
|
||||
->getQuery()
|
||||
->getResult();
|
||||
|
||||
if (!empty($del_vehicles)) {
|
||||
foreach ($del_vehicles as $dv) {
|
||||
$em->remove($dv);
|
||||
if (!empty($del_vehicles)) {
|
||||
foreach ($del_vehicles as $dv) {
|
||||
$em->remove($dv);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue