From 4580228628bc5e152c90ac702a9e4b56219f74ff Mon Sep 17 00:00:00 2001 From: Korina Cordero Date: Tue, 31 May 2022 07:25:49 +0000 Subject: [PATCH 1/2] Add caller classification to job order. #673 --- src/Entity/JobOrder.php | 17 +++++++++ src/Ramcar/CallerClassification.php | 18 ++++++++++ .../JobOrderHandler/ResqJobOrderHandler.php | 36 +++++++++++++++++-- templates/job-order/form.html.twig | 10 ++++++ 4 files changed, 78 insertions(+), 3 deletions(-) create mode 100644 src/Ramcar/CallerClassification.php diff --git a/src/Entity/JobOrder.php b/src/Entity/JobOrder.php index 9908c0e7..947dd074 100644 --- a/src/Entity/JobOrder.php +++ b/src/Entity/JobOrder.php @@ -402,6 +402,12 @@ class JobOrder */ protected $gender; + // caller classification of caller + /** + * @ORM\Column(type="string", length=80, nullable=true) + */ + protected $caller_classification; + public function __construct() { $this->date_create = new DateTime(); @@ -1147,4 +1153,15 @@ class JobOrder return $this->gender; } + public function setCallerClassification($caller_classification) + { + $this->caller_classification = $caller_classification; + return $this; + } + + public function getCallerClassification() + { + return $this->caller_classification; + } + } diff --git a/src/Ramcar/CallerClassification.php b/src/Ramcar/CallerClassification.php new file mode 100644 index 00000000..be13467a --- /dev/null +++ b/src/Ramcar/CallerClassification.php @@ -0,0 +1,18 @@ + 'Owner', + 'driver' => 'Driver', + 'family' => 'Family', + 'friends' => 'Friends', + ]; +} diff --git a/src/Service/JobOrderHandler/ResqJobOrderHandler.php b/src/Service/JobOrderHandler/ResqJobOrderHandler.php index 5079f3af..16e6bca1 100644 --- a/src/Service/JobOrderHandler/ResqJobOrderHandler.php +++ b/src/Service/JobOrderHandler/ResqJobOrderHandler.php @@ -47,6 +47,7 @@ use App\Ramcar\DeliveryStatus; use App\Ramcar\SourceOfAwareness; use App\Ramcar\InitialConcern; use App\Ramcar\Gender; +use App\Ramcar\CallerClassification; use App\Service\InvoiceGeneratorInterface; use App\Service\JobOrderHandlerInterface; @@ -414,6 +415,9 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface // get gender if any $gender = $req->request->get('gender'); + // get caller classification if any + $caller_class = $req->request->get('caller_class'); + // TODO: check status before saving since JO might already // have a status that needs to be retained @@ -450,6 +454,7 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface ->setRemarks($remarks) ->setInitialConcern($initial_concern) ->setInitialConcernNotes($initial_concern_notes) + ->setCallerClassification($caller_class) ->setGender($gender); // check if user is null, meaning call to create came from API @@ -660,6 +665,9 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface // get gender if any $gender = $req->request->get('gender'); + // get caller classification if any + $caller_class = $req->request->get('caller_class'); + if (empty($error_array)) { // get current user @@ -691,6 +699,7 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface ->setRemarks($remarks) ->setInitialConcern($initial_concern) ->setInitialConcernNotes($initial_concern_notes) + ->setCallerClassification($caller_class) ->setGender($gender); // did they change invoice? @@ -852,6 +861,9 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface // get gender if any $gender = $req->request->get('gender'); + // get caller classification if any + $caller_class = $req->request->get('caller_class'); + if (empty($error_array)) { // coordinates @@ -880,7 +892,8 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface ->setRemarks($remarks) ->setInitialConcern($initial_concern) ->setInitialConcernNotes($initial_concern_notes) - ->setGender($gender); + ->setGender($gender) + ->setCallerClassification($caller_class); // validate $errors = $this->validator->validate($obj); @@ -987,6 +1000,9 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface // get gender if any $gender = $req->request->get('gender'); + // get caller classification if any + $caller_class = $req->request->get('caller_class'); + // get current user $user = $this->security->getUser(); @@ -1017,6 +1033,7 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface ->setRemarks($remarks) ->setInitialConcern($initial_concern) ->setInitialConcernNotes($initial_concern_notes) + ->setCallerClassification($caller_class) ->setGender($gender); if ($user != null) @@ -1113,6 +1130,9 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface // get gender if any $gender = $req->request->get('gender'); + // get caller classification if any + $caller_class = $req->request->get('caller_class'); + if (empty($error_array)) { // coordinates $point = new Point($req->request->get('coord_lng'), $req->request->get('coord_lat')); @@ -1137,7 +1157,8 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface ->setRemarks($remarks) ->setInitialConcern($initial_concern) ->setInitialConcernNotes($initial_concern_notes) - ->setGender($gender); + ->setGender($gender) + ->setCallerClassification($caller_class); // validate $errors = $this->validator->validate($obj); @@ -1353,6 +1374,9 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface // get gender if any $gender = $req->request->get('gender'); + // get caller classification if any + $caller_class = $req->request->get('caller_class'); + // get previously assigned hub, if any $old_hub = $obj->getHub(); @@ -1392,6 +1416,7 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface ->setInitialConcern($initial_concern) ->setInitialConcernNotes($initial_concern_notes) ->setGender($gender) + ->setCallerClassification($caller_class) ->clearRider(); if ($user != null) @@ -1603,6 +1628,9 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface // get gender if any $gender = $req->request->get('gender'); + // get caller classification if any + $caller_class = $req->request->get('caller_class'); + if (empty($error_array)) { // rider mqtt event // NOTE: need to send this before saving because rider will be cleared @@ -1648,7 +1676,8 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface ->setDeliveryStatus(DeliveryStatus::RIDER_ASSIGN) ->setInitialConcern($initial_concern) ->setInitialConcernNotes($initial_concern_notes) - ->setGender($gender); + ->setGender($gender) + ->setCallerClassification($caller_class); if ($user != null) { @@ -3157,6 +3186,7 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface $params['soa_types'] = SourceOfAwareness::getCollection(); $params['initial_concern'] = InitialConcern::getCollection(); $params['genders'] = Gender::getCollection(); + $params['caller_classifications'] = CallerClassification::getCollection(); } protected function initFormTags(&$params) diff --git a/templates/job-order/form.html.twig b/templates/job-order/form.html.twig index 0e5286e9..841b9151 100644 --- a/templates/job-order/form.html.twig +++ b/templates/job-order/form.html.twig @@ -479,6 +479,16 @@
+
+ + + +
From 174acddc918a575fc9df390dbb409dcbf258d6d9 Mon Sep 17 00:00:00 2001 From: Korina Cordero Date: Wed, 1 Jun 2022 04:08:08 +0000 Subject: [PATCH 2/2] Add default values. #673 --- .../JobOrderHandler/ResqJobOrderHandler.php | 56 +++++++++---------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/src/Service/JobOrderHandler/ResqJobOrderHandler.php b/src/Service/JobOrderHandler/ResqJobOrderHandler.php index 16e6bca1..8b599712 100644 --- a/src/Service/JobOrderHandler/ResqJobOrderHandler.php +++ b/src/Service/JobOrderHandler/ResqJobOrderHandler.php @@ -401,22 +401,22 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface } // get source of awareness if any - $soa_type = $req->request->get('source_of_awareness'); + $soa_type = $req->request->get('source_of_awareness', ''); // get remarks $remarks = $req->request->get('remarks', ''); // get initial concern if any - $initial_concern = $req->request->get('initial_concern'); + $initial_concern = $req->request->get('initial_concern', ''); // get initial concern notes if any $initial_concern_notes = $req->request->get('initial_concern_notes', ''); // get gender if any - $gender = $req->request->get('gender'); + $gender = $req->request->get('gender', ''); // get caller classification if any - $caller_class = $req->request->get('caller_class'); + $caller_class = $req->request->get('caller_class',''); // TODO: check status before saving since JO might already // have a status that needs to be retained @@ -651,22 +651,22 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface } // get source of awareness if any - $soa_type = $req->request->get('source_of_awareness'); + $soa_type = $req->request->get('source_of_awareness', ''); // get remarks $remarks = $req->request->get('remarks', ''); // get initial concern if any - $initial_concern = $req->request->get('initial_concern'); + $initial_concern = $req->request->get('initial_concern', ''); // get initial concern notes if any $initial_concern_notes = $req->request->get('initial_concern_notes', ''); // get gender if any - $gender = $req->request->get('gender'); + $gender = $req->request->get('gender', ''); // get caller classification if any - $caller_class = $req->request->get('caller_class'); + $caller_class = $req->request->get('caller_class', ''); if (empty($error_array)) { @@ -847,22 +847,22 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface } // get source of awareness if any - $soa_type = $req->request->get('source_of_awareness'); + $soa_type = $req->request->get('source_of_awareness', ''); // get remarks $remarks = $req->request->get('remarks', ''); // get initial concern if any - $initial_concern = $req->request->get('initial_concern'); + $initial_concern = $req->request->get('initial_concern', ''); // get initial concern notes if any $initial_concern_notes = $req->request->get('initial_concern_notes', ''); // get gender if any - $gender = $req->request->get('gender'); + $gender = $req->request->get('gender', ''); // get caller classification if any - $caller_class = $req->request->get('caller_class'); + $caller_class = $req->request->get('caller_class', ''); if (empty($error_array)) { @@ -986,22 +986,22 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface } // get source of awareness if any - $soa_type = $req->request->get('source_of_awareness'); + $soa_type = $req->request->get('source_of_awareness', ''); // get remarks $remarks = $req->request->get('remarks', ''); // get initial concern if any - $initial_concern = $req->request->get('initial_concern'); + $initial_concern = $req->request->get('initial_concern', ''); // get initial concern notes if any $initial_concern_notes = $req->request->get('initial_concern_notes', ''); // get gender if any - $gender = $req->request->get('gender'); + $gender = $req->request->get('gender', ''); // get caller classification if any - $caller_class = $req->request->get('caller_class'); + $caller_class = $req->request->get('caller_class', ''); // get current user $user = $this->security->getUser(); @@ -1116,22 +1116,22 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface } // get source of awareness if any - $soa_type = $req->request->get('source_of_awareness'); + $soa_type = $req->request->get('source_of_awareness', ''); // get remarks $remarks = $req->request->get('remarks', ''); // get initial concern if any - $initial_concern = $req->request->get('initial_concern'); + $initial_concern = $req->request->get('initial_concern', ''); // get initial concern notes if any $initial_concern_notes = $req->request->get('initial_concern_notes', ''); // get gender if any - $gender = $req->request->get('gender'); + $gender = $req->request->get('gender', ''); // get caller classification if any - $caller_class = $req->request->get('caller_class'); + $caller_class = $req->request->get('caller_class', ''); if (empty($error_array)) { // coordinates @@ -1360,22 +1360,22 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface } // get source of awareness if any - $soa_type = $req->request->get('source_of_awareness'); + $soa_type = $req->request->get('source_of_awareness', ''); // get remarks $remarks = $req->request->get('remarks', ''); // get initial concern if any - $initial_concern = $req->request->get('initial_concern'); + $initial_concern = $req->request->get('initial_concern', ''); // get initial concern notes if any $initial_concern_notes = $req->request->get('initial_concern_notes', ''); // get gender if any - $gender = $req->request->get('gender'); + $gender = $req->request->get('gender', ''); // get caller classification if any - $caller_class = $req->request->get('caller_class'); + $caller_class = $req->request->get('caller_class', ''); // get previously assigned hub, if any $old_hub = $obj->getHub(); @@ -1614,22 +1614,22 @@ class ResqJobOrderHandler implements JobOrderHandlerInterface } // get source of awareness if any - $soa_type = $req->request->get('source_of_awareness'); + $soa_type = $req->request->get('source_of_awareness', ''); // get remarks $remarks = $req->request->get('remarks', ''); // get initial concern if any - $initial_concern = $req->request->get('initial_concern'); + $initial_concern = $req->request->get('initial_concern', ''); // get initial concern notes if any $initial_concern_notes = $req->request->get('initial_concern_notes', ''); // get gender if any - $gender = $req->request->get('gender'); + $gender = $req->request->get('gender', ''); // get caller classification if any - $caller_class = $req->request->get('caller_class'); + $caller_class = $req->request->get('caller_class', ''); if (empty($error_array)) { // rider mqtt event