diff --git a/src/Controller/APIController.php b/src/Controller/APIController.php index 23d498bf..d5070b59 100644 --- a/src/Controller/APIController.php +++ b/src/Controller/APIController.php @@ -693,7 +693,8 @@ class APIController extends Controller $jo->setSource('mobile') ->setStatus(JOStatus::PENDING) ->setDeliveryInstructions('') - ->setAgentNotes('') + ->setTier1Notes('') + ->setTier2Notes('') ->setDeliveryAddress('Set by mobile application'); // customer diff --git a/src/Controller/CustomerController.php b/src/Controller/CustomerController.php index a8eef366..6bbbb6b1 100644 --- a/src/Controller/CustomerController.php +++ b/src/Controller/CustomerController.php @@ -685,7 +685,7 @@ class CustomerController extends BaseController 'model_year_to' => $vehicle->getModelYearTo(), 'model_year' => $obj->getModelYear(), 'color' => $obj->getColor(), - //'plate_number' => $obj->getPlateNumber(), + 'plate_number' => $obj->getPlateNumber(), //'fuel_type' => $obj->getFuelType(), //'status_condition' => $obj->getStatusCondition(), ] diff --git a/src/Controller/JobOrderController.php b/src/Controller/JobOrderController.php index 223f53c3..b9edfb7a 100644 --- a/src/Controller/JobOrderController.php +++ b/src/Controller/JobOrderController.php @@ -10,6 +10,8 @@ use App\Ramcar\DiscountApply; use App\Ramcar\TradeInType; use App\Ramcar\InvoiceCriteria; use App\Ramcar\InvoiceStatus; +use App\Ramcar\ModeOfPayment; + use App\Entity\JobOrder; use App\Entity\BatteryManufacturer; use App\Entity\Customer; @@ -134,6 +136,7 @@ class JobOrderController extends BaseController $params['promos'] = $em->getRepository(Promo::class)->findAll(); $params['service_types'] = ServiceType::getCollection(); $params['warranty_classes'] = WarrantyClass::getCollection(); + $params['modes_of_payment'] = ModeOfPayment::getCollection(); $params['statuses'] = JOStatus::getCollection(); $params['discount_apply'] = DiscountApply::getCollection(); $params['trade_in_types'] = TradeInType::getCollection(); @@ -175,8 +178,7 @@ class JobOrderController extends BaseController $point = new Point($req->request->get('coord_lng'), $req->request->get('coord_lat')); // set and save values - $obj->setDateCreate(DateTime::createFromFormat("d M Y", $req->request->get('date_transaction'))) - ->setDateSchedule(DateTime::createFromFormat("d M Y h:i A", $req->request->get('date_schedule_date') . " " . $req->request->get('date_schedule_time'))) + $obj->setDateSchedule(DateTime::createFromFormat("d M Y h:i A", $req->request->get('date_schedule_date') . " " . $req->request->get('date_schedule_time'))) ->setCoordinates($point) ->setAdvanceOrder($req->request->get('flag_advance') ?? false) ->setCreatedBy($this->getUser()) @@ -187,7 +189,8 @@ class JobOrderController extends BaseController ->setSource('web') ->setStatus(JOStatus::PENDING) ->setDeliveryInstructions($req->request->get('delivery_instructions')) - ->setAgentNotes($req->request->get('agent_notes')) + ->setTier1Notes($req->request->get('tier1_notes')) + ->setTier2Notes($req->request->get('tier2_notes')) ->setDeliveryAddress($req->request->get('delivery_address')); // check if reference JO is set and validate @@ -568,6 +571,7 @@ class JobOrderController extends BaseController $params['customers'] = $em->getRepository(Customer::class)->findAll(); $params['service_types'] = ServiceType::getCollection(); $params['warranty_classes'] = WarrantyClass::getCollection(); + $params['modes_of_payment'] = ModeOfPayment::getCollection(); $params['statuses'] = JOStatus::getCollection(); $params['promos'] = $em->getRepository(Promo::class)->findAll(); $params['discount_apply'] = DiscountApply::getCollection(); @@ -667,7 +671,8 @@ class JobOrderController extends BaseController ->setSource('web') ->setStatus(JOStatus::RIDER_ASSIGN) ->setDeliveryInstructions($req->request->get('delivery_instructions')) - ->setAgentNotes($req->request->get('agent_notes')) + ->setTier1Notes($req->request->get('tier1_notes')) + ->setTier2Notes($req->request->get('tier2_notes')) ->setDeliveryAddress($req->request->get('delivery_address')) ->setHub($hub); @@ -763,6 +768,7 @@ class JobOrderController extends BaseController $params['customers'] = $em->getRepository(Customer::class)->findAll(); $params['service_types'] = ServiceType::getCollection(); $params['warranty_classes'] = WarrantyClass::getCollection(); + $params['modes_of_payment'] = ModeOfPayment::getCollection(); $params['statuses'] = JOStatus::getCollection(); $params['promos'] = $em->getRepository(Promo::class)->findAll(); $params['discount_apply'] = DiscountApply::getCollection(); @@ -821,7 +827,8 @@ class JobOrderController extends BaseController ->setSource('web') ->setStatus(JOStatus::ASSIGNED) ->setDeliveryInstructions($req->request->get('delivery_instructions')) - ->setAgentNotes($req->request->get('agent_notes')) + ->setTier1Notes($req->request->get('tier1_notes')) + ->setTier2Notes($req->request->get('tier2_notes')) ->setDeliveryAddress($req->request->get('delivery_address')) ->setAssignedBy($this->getUser()) ->setDateAssign(new DateTime()) @@ -890,6 +897,7 @@ class JobOrderController extends BaseController $params['customers'] = $em->getRepository(Customer::class)->findAll(); $params['service_types'] = ServiceType::getCollection(); $params['warranty_classes'] = WarrantyClass::getCollection(); + $params['modes_of_payment'] = ModeOfPayment::getCollection(); $params['statuses'] = JOStatus::getCollection(); $params['promos'] = $em->getRepository(Promo::class)->findAll(); $params['discount_apply'] = DiscountApply::getCollection(); @@ -936,7 +944,8 @@ class JobOrderController extends BaseController ->setSource('web') ->setStatus(JOStatus::FULFILLED) ->setDeliveryInstructions($req->request->get('delivery_instructions')) - ->setAgentNotes($req->request->get('agent_notes')) + ->setTier1Notes($req->request->get('tier1_notes')) + ->setTier2Notes($req->request->get('tier2_notes')) ->setDeliveryAddress($req->request->get('delivery_address')); // validate @@ -989,6 +998,7 @@ class JobOrderController extends BaseController $params['customers'] = $em->getRepository(Customer::class)->findAll(); $params['service_types'] = ServiceType::getCollection(); $params['warranty_classes'] = WarrantyClass::getCollection(); + $params['modes_of_payment'] = ModeOfPayment::getCollection(); $params['statuses'] = JOStatus::getCollection(); $params['promos'] = $em->getRepository(Promo::class)->findAll(); $params['discount_apply'] = DiscountApply::getCollection(); @@ -1079,7 +1089,8 @@ class JobOrderController extends BaseController ->setSource('web') ->setStatus(JOStatus::RIDER_ASSIGN) ->setDeliveryInstructions($req->request->get('delivery_instructions')) - ->setAgentNotes($req->request->get('agent_notes')) + ->setTier1Notes($req->request->get('tier1_notes')) + ->setTier2Notes($req->request->get('tier2_notes')) ->setDeliveryAddress($req->request->get('delivery_address')) ->setHub($hub) ->clearRider(); @@ -1142,6 +1153,7 @@ class JobOrderController extends BaseController $params['customers'] = $em->getRepository(Customer::class)->findAll(); $params['service_types'] = ServiceType::getCollection(); $params['warranty_classes'] = WarrantyClass::getCollection(); + $params['modes_of_payment'] = ModeOfPayment::getCollection(); $params['statuses'] = JOStatus::getCollection(); $params['promos'] = $em->getRepository(Promo::class)->findAll(); $params['discount_apply'] = DiscountApply::getCollection(); @@ -1200,7 +1212,8 @@ class JobOrderController extends BaseController ->setSource('web') ->setStatus(JOStatus::ASSIGNED) ->setDeliveryInstructions($req->request->get('delivery_instructions')) - ->setAgentNotes($req->request->get('agent_notes')) + ->setTier1Notes($req->request->get('tier1_notes')) + ->setTier2Notes($req->request->get('tier2_notes')) ->setDeliveryAddress($req->request->get('delivery_address')) ->setAssignedBy($this->getUser()) ->setDateAssign(new DateTime()) @@ -1254,6 +1267,7 @@ class JobOrderController extends BaseController $params['customers'] = $em->getRepository(Customer::class)->findAll(); $params['service_types'] = ServiceType::getCollection(); $params['warranty_classes'] = WarrantyClass::getCollection(); + $params['modes_of_payment'] = ModeOfPayment::getCollection(); $params['statuses'] = JOStatus::getCollection(); $params['promos'] = $em->getRepository(Promo::class)->findAll(); $params['discount_apply'] = DiscountApply::getCollection(); diff --git a/src/Entity/Customer.php b/src/Entity/Customer.php index bbd287c8..f04a794d 100644 --- a/src/Entity/Customer.php +++ b/src/Entity/Customer.php @@ -115,7 +115,7 @@ class Customer $this->flag_confirmed = false; $this->flag_mobile_app = false; - $this->flag_active = false; + $this->flag_active = true; } public function getID() diff --git a/src/Entity/JobOrder.php b/src/Entity/JobOrder.php index 50ffedaf..2faf6c2e 100644 --- a/src/Entity/JobOrder.php +++ b/src/Entity/JobOrder.php @@ -8,6 +8,7 @@ use Symfony\Component\Validator\Constraints as Assert; use CrEOF\Spatial\PHP\Types\Geometry\Point; use DateTime; +use App\Ramcar\ModeOfPayment; /** * @ORM\Entity @@ -148,11 +149,17 @@ class JobOrder */ protected $delivery_instructions; - // agent notes + // agent tier I notes /** * @ORM\Column(type="text", nullable=true) */ - protected $agent_notes; + protected $tier1_notes; + + // agent tier II notes + /** + * @ORM\Column(type="text", nullable=true) + */ + protected $tier2_notes; // delivery address /** @@ -186,6 +193,11 @@ class JobOrder */ protected $ref_jo; + /** + * @ORM\Column(type="string", length=50) + */ + protected $mode_of_payment; + public function __construct() { $this->date_create = new DateTime(); @@ -193,6 +205,7 @@ class JobOrder $this->flag_advance = false; $this->source = 'mobile'; + $this->mode_of_payment = ModeOfPayment::CASH; } public function getID() @@ -420,15 +433,26 @@ class JobOrder return $this->delivery_instructions; } - public function setAgentNotes($agent_notes) + public function setTier1Notes($notes) { - $this->agent_notes = $agent_notes; + $this->tier1_notes = $notes; return $this; } - public function getAgentNotes() + public function getTier1Notes() { - return $this->agent_notes; + return $this->tier1_notes; + } + + public function setTier2Notes($notes) + { + $this->tier2_notes = $notes; + return $this; + } + + public function getTier2Notes() + { + return $this->tier2_notes; } public function setDeliveryAddress($delivery_address) @@ -480,4 +504,15 @@ class JobOrder { return $this->ref_jo; } + + public function setModeOfPayment($mode) + { + $this->mode_of_payment = $mode; + return $this; + } + + public function getModeOfPayment() + { + return $this->mode_of_payment; + } } diff --git a/src/Ramcar/ModeOfPayment.php b/src/Ramcar/ModeOfPayment.php new file mode 100644 index 00000000..77f0098f --- /dev/null +++ b/src/Ramcar/ModeOfPayment.php @@ -0,0 +1,18 @@ + 'Cash', + 'credit_card' => 'Credit Card', + 'debit_card' => 'Debit Card', + 'installment' => 'Installment', + ]; +} diff --git a/src/Ramcar/ServiceType.php b/src/Ramcar/ServiceType.php index 65fe5deb..0a510f13 100644 --- a/src/Ramcar/ServiceType.php +++ b/src/Ramcar/ServiceType.php @@ -14,7 +14,7 @@ class ServiceType extends NameValue const COLLECTION = [ 'battery_new' => 'Battery Replacement (New)', 'battery_warranty' => 'Battery Replacement (Under Warranty)', - 'jumpstart_troubleshoot' => 'Jumpstart or Troubleshoot', + 'jumpstart_troubleshoot' => 'General Service', 'tire' => 'Tire Repair', 'overheat' => 'Overheat Assistance', 'fuel' => 'Emergency Refuel', diff --git a/templates/customer/form.html.twig b/templates/customer/form.html.twig index 68642d19..52527c8e 100644 --- a/templates/customer/form.html.twig +++ b/templates/customer/form.html.twig @@ -32,7 +32,7 @@ -