From f0d94e034f0f517e3c89f94a85e1ce4162c19a3f Mon Sep 17 00:00:00 2001 From: Kendrick Chan Date: Wed, 30 Jan 2019 22:12:36 +0800 Subject: [PATCH] Add first_name, last_name, and mobile_number fields to warranty #177 --- catalyst/api-bundle/Command/TestCommand.php | 14 +++--- src/Controller/CAPI/WarrantyController.php | 23 ++++++---- src/Entity/Warranty.php | 51 +++++++++++++++++++++ 3 files changed, 74 insertions(+), 14 deletions(-) diff --git a/catalyst/api-bundle/Command/TestCommand.php b/catalyst/api-bundle/Command/TestCommand.php index 8c6faa01..03d1fe85 100644 --- a/catalyst/api-bundle/Command/TestCommand.php +++ b/catalyst/api-bundle/Command/TestCommand.php @@ -43,19 +43,18 @@ class TestCommand extends Command // warranty register - $serial = 'AJ34LJADR12134LKJL'; + $serial = 'AJ34LJADR12134LKJL5'; $plate_num = 'XEN918'; $params = [ 'serial' => $serial, 'plate_number' => $plate_num, 'warranty_class' => 'private', - /* - 'battery_model_id' => 438, - 'battery_size_id' => 1171, - */ 'sku' => 'WMEB24CB-CPN00-LX', 'date_purchase' => '20181001', 'date_expire' => '20191001', + 'first_name' => 'First', + 'last_name' => 'Last', + 'mobile_number' => '12345678910', ]; $api->post('/capi/warranties', $params); @@ -66,15 +65,18 @@ class TestCommand extends Command /* // warranty find $api->get('/capi/warranties/' . $serial); + */ // warranty claim $id = 86811; - $serial = 'TEST001'; + $serial = 'AJ34LJADR12134LKJL'; $params = [ 'serial' => $serial, ]; $api->post('/capi/warranties/' . $id . '/claim', $params); + /* + // plate warranty $api->get('/capi/plates/' . $plate_num . '/warranties'); diff --git a/src/Controller/CAPI/WarrantyController.php b/src/Controller/CAPI/WarrantyController.php index 08622f50..3f4433a5 100644 --- a/src/Controller/CAPI/WarrantyController.php +++ b/src/Controller/CAPI/WarrantyController.php @@ -43,6 +43,11 @@ class WarrantyController extends APIController 'brand' => (int) ($batt == null ? 0 : $batt->getBrand()->getID()), 'size' => (int) ($batt == null ? 0 : $batt->getSize()->getID()), ], + 'customer' => [ + 'first_name' => (string) $warr->getFirstName() ?? '', + 'last_name' => (string) $warr->getLastName() ?? '', + 'mobile_number' => (string) $warr->getMobileNumber() ?? '', + ], 'status' => (string) $warr->getStatus(), 'date_create' => (string) $warr->getDateCreate()->format('YmdHis'), 'date_purchase' => (string) $warr->getDatePurchase()->format('Ymd'), @@ -137,6 +142,10 @@ class WarrantyController extends APIController $plate = $req->request->get('plate_number'); $sku = $req->request->get('sku'); + $fname = $req->request->get('first_name', null); + $lname = $req->request->get('last_name', null); + $mnum = $req->request->get('mobile_number', null); + /* $bmodel_id = $req->request->get('battery_model_id'); $bsize_id = $req->request->get('battery_size_id'); @@ -183,10 +192,9 @@ class WarrantyController extends APIController $warr->setSerial($serial) ->setWarrantyClass($warr_class) ->setPlateNumber($plate) - /* - ->setBatteryModel($model) - ->setBatterySize($size) - */ + ->setFirstName($fname) + ->setLastName($lname) + ->setMobileNumber($mnum) ->setSAPBattery($batt) ->setDatePurchase($date_pur) ->setDateClaim(null) @@ -246,10 +254,9 @@ class WarrantyController extends APIController $new_warr->setSerial($clean_serial) ->setWarrantyClass($warr->getWarrantyClass()) ->setPlateNumber($warr->getPlateNumber()) - /* - ->setBatteryModel($warr->getBatteryModel()) - ->setBatterySize($warr->getBatterySize()) - */ + ->setFirstName($warr->getFirstName()) + ->setLastName($warr->getLastName()) + ->setMobileNumber($warr->getMobileNumber()) ->setSAPBattery($warr->getSAPBattery()) ->setDatePurchase($warr->getDatePurchase()) ->setDateClaim(null) diff --git a/src/Entity/Warranty.php b/src/Entity/Warranty.php index 6b759ac3..30d1afd4 100644 --- a/src/Entity/Warranty.php +++ b/src/Entity/Warranty.php @@ -45,6 +45,24 @@ class Warranty */ protected $plate_number; + // customer first name + /** + * @ORM\Column(type="string", length=80, nullable=true) + */ + protected $first_name; + + // customer last name + /** + * @ORM\Column(type="string", length=80, nullable=true) + */ + protected $last_name; + + // customer mobile phone number + /** + * @ORM\Column(type="string", length=30, nullable=true) + */ + protected $mobile_number; + // battery model /** * @ORM\ManyToOne(targetEntity="BatteryModel", inversedBy="warranties") @@ -187,6 +205,39 @@ class Warranty return $this->plate_number; } + public function setFirstName($fname = null) + { + $this->first_name = $fname; + return $this; + } + + public function getFirstName() + { + return $this->first_name; + } + + public function setLastName($lname = null) + { + $this->last_name = $lname; + return $this; + } + + public function getLastName() + { + return $this->last_name; + } + + public function setMobileNumber($mnum = null) + { + $this->mobile_number = $mnum; + return $this; + } + + public function getMobileNumber() + { + return $this->mobile_number; + } + public function setBatteryModel(BatteryModel $model) { $this->bty_model = $model;