diff --git a/src/Controller/CustomerController.php b/src/Controller/CustomerController.php index baec3191..be0bc6c9 100644 --- a/src/Controller/CustomerController.php +++ b/src/Controller/CustomerController.php @@ -166,18 +166,22 @@ class CustomerController extends BaseController $nerror_array = []; $verror_array = []; + // error_log(print_r($req->request->all(), true)); + // custom validation for mobile numbers $numbers = json_decode($req->request->get('mobile_numbers')); if (!empty($numbers)) { foreach ($numbers as $key => $number) { + $date_reg = DateTime::createFromFormat("d M Y - h:i A", $number->date_registered); $mobile_number = new MobileNumber(); $mobile_number->setID($number->id) - ->setDateRegistered(DateTime::createFromFormat("d M Y - h:i A", $number->date_registered)) + ->setDateRegistered($date_reg) ->setCustomer($row); if (!empty($number->date_confirmed)) { - $mobile_number->setDateConfirmed(DateTime::createFromFormat("d M Y - h:i A", $number->date_confirmed)) + $date_confirm = DateTime::createFromFormat("d M Y - h:i A", $number->date_confirmed); + $mobile_number->setDateConfirmed($date_confirm) ->setConfirmed(); } else { $mobile_number->setConfirmed(false); @@ -229,10 +233,15 @@ class CustomerController extends BaseController if (empty($bobj)) { $verror_array[$vehicle->index]['battery'] = 'Invalid battery specified.'; } else { + // check if warranty expiration was specified + $warr_ex = DateTime::createFromFormat("d M Y", $vehicle->warranty_expiration); + if (!$warr_ex) + $warr_ex = null; + $cust_vehicle->setHasMotoliteBattery(true) ->setCurrentBattery($bobj) ->setWarrantyCode($vehicle->warranty_code) - ->setWarrantyExpiration(DateTime::createFromFormat("d M Y", $vehicle->warranty_expiration)); + ->setWarrantyExpiration($warr_ex); } } else { $cust_vehicle->setHasMotoliteBattery(false); diff --git a/src/Entity/CustomerVehicle.php b/src/Entity/CustomerVehicle.php index 60271608..9e12d2a4 100644 --- a/src/Entity/CustomerVehicle.php +++ b/src/Entity/CustomerVehicle.php @@ -5,6 +5,7 @@ namespace App\Entity; use Doctrine\ORM\Mapping as ORM; use Symfony\Component\Validator\Constraints as Assert; +use DateTime; /** * @ORM\Entity @@ -220,7 +221,7 @@ class CustomerVehicle return $this->warranty_code; } - public function setWarrantyExpiration($warranty_expiration) + public function setWarrantyExpiration(DateTime $warranty_expiration = null) { $this->warranty_expiration = $warranty_expiration; return $this; diff --git a/src/Entity/MobileNumber.php b/src/Entity/MobileNumber.php index 586a5392..54f32175 100644 --- a/src/Entity/MobileNumber.php +++ b/src/Entity/MobileNumber.php @@ -6,6 +6,7 @@ use Doctrine\ORM\Mapping as ORM; use Symfony\Component\Validator\Constraints as Assert; use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity; +use DateTime; /** * @ORM\Entity @@ -96,7 +97,7 @@ class MobileNumber return $this->confirm_code; } - public function setDateRegistered($date_registered) + public function setDateRegistered(DateTime $date_registered) { $this->date_registered = $date_registered; return $this; @@ -107,7 +108,7 @@ class MobileNumber return $this->date_registered; } - public function setDateConfirmed($date_confirmed) + public function setDateConfirmed(DateTime $date_confirmed) { $this->date_confirmed = $date_confirmed; return $this;