diff --git a/src/Controller/BatteryManufacturerController.php b/src/Controller/BatteryManufacturerController.php index 9d377481..55419c6a 100644 --- a/src/Controller/BatteryManufacturerController.php +++ b/src/Controller/BatteryManufacturerController.php @@ -5,6 +5,7 @@ namespace App\Controller; use App\Ramcar\BaseController; use App\Entity\BatteryManufacturer; use App\Entity\Vehicle; +use App\Entity\Battery; use Doctrine\ORM\Query; use Symfony\Component\HttpFoundation\Request; @@ -278,12 +279,14 @@ class BatteryManufacturerController extends BaseController $em = $this->getDoctrine()->getManager(); $obj = $em->getRepository(BatteryManufacturer::class)->find($req->request->get('id')); $vobj = $em->getRepository(Vehicle::class)->find($req->request->get('vehicle_id')); + $all_batts = $em->getRepository(Battery::class)->findAll(); if (empty($obj) || empty($vobj)) throw $this->createNotFoundException('The item does not exist'); // build batteries array $batteries = []; + $battery_index = []; // get compatible batteries from selected manufacturer foreach ($vobj->getBatteries() as $battery) @@ -300,13 +303,36 @@ class BatteryManufacturerController extends BaseController 'warr_private' => $battery->getWarrantyPrivate(), 'warr_commercial' => $battery->getWarrantyCommercial(), ]; + $battery_index[$battery->getID()] = 1; } } + // add all other batteries, because they want options + foreach ($all_batts as $battery) + { + // if we already listed it + if (isset($battery_index[$battery->getID()])) + continue; + + $batteries[] = [ + 'id' => $battery->getID(), + 'mfg_name' => $battery->getManufacturer()->getName(), + 'model_name' => $battery->getModel()->getName(), + 'size_name' => $battery->getSize()->getName(), + 'prod_code' => $battery->getProductCode(), + 'sell_price' => $battery->getSellingPrice(), + 'warr_private' => $battery->getWarrantyPrivate(), + 'warr_commercial' => $battery->getWarrantyCommercial(), + ]; + } + + /* + // NOTE: no need to order by price for control center / only for app // order by price usort($batteries, function ($a, $b) { return -($a['sell_price'] <=> $b['sell_price']); }); + */ // response return $this->json([ diff --git a/src/Controller/JobOrderController.php b/src/Controller/JobOrderController.php index d812df67..6d7b86cb 100644 --- a/src/Controller/JobOrderController.php +++ b/src/Controller/JobOrderController.php @@ -530,7 +530,8 @@ class JobOrderController extends BaseController // add row data $row['id'] = $orow->getID(); $row['delivery_address'] = $orow->getDeliveryAddress(); - $row['date_schedule'] = $orow->isAdvanceOrder() ? $orow->getDateSchedule()->format("d M Y g:i A") : 'Immediate'; + $row['date_schedule'] = $orow->getDateSchedule()->format("d M Y g:i A"); + $row['type'] = $orow->isAdvanceOrder() ? 'Advanced Order' : 'Immediate'; $row['service_type'] = $service_types[$orow->getServiceType()]; $row['status'] = $statuses[$orow->getStatus()]; $row['flag_advance'] = $orow->isAdvanceOrder(); diff --git a/src/Controller/TicketController.php b/src/Controller/TicketController.php index fbcd17c6..cdac40e0 100644 --- a/src/Controller/TicketController.php +++ b/src/Controller/TicketController.php @@ -91,7 +91,6 @@ class TicketController extends BaseController // add row data $row['id'] = $orow->getID(); $row['date_create'] = $orow->getDateCreate()->format("d M Y g:i A"); - $row['subject'] = $orow->getSubject(); $row['first_name'] = $orow->getFirstName(); $row['last_name'] = $orow->getLastName(); $row['contact_num'] = $orow->getContactNumber(); @@ -243,7 +242,6 @@ class TicketController extends BaseController ->setStatus($req->request->get('status')) ->setTicketType($ticket_type) ->setOtherTicketType($other_ticket_type) - ->setSubject($req->request->get('subject')) ->setDetails($req->request->get('details')) ->setPlateNumber($req->request->get('plate_number')) ->setDateCreate(new DateTime()) @@ -401,7 +399,6 @@ class TicketController extends BaseController ->setStatus($req->request->get('status')) ->setTicketType($ticket_type) ->setOtherTicketType($other_ticket_type) - ->setSubject($req->request->get('subject')) ->setDetails($req->request->get('details')) ->setPlateNumber($req->request->get('plate_number')); @@ -465,8 +462,7 @@ class TicketController extends BaseController // check if datatable filter is present and append to query protected function setQueryFilters($datatable, &$query, $qb) { if (isset($datatable['query']['data-rows-search']) && !empty($datatable['query']['data-rows-search'])) { - $query->where('q.subject LIKE :filter') - ->orWhere('q.status LIKE :filter') + $query->where('q.status LIKE :filter') ->orWhere('q.ticket_type LIKE :filter') ->orWhere('q.other_ticket_type LIKE :filter') ->orWhere('q.first_name LIKE :filter') diff --git a/src/Entity/JobOrder.php b/src/Entity/JobOrder.php index 753d350a..be1cf920 100644 --- a/src/Entity/JobOrder.php +++ b/src/Entity/JobOrder.php @@ -301,7 +301,7 @@ class JobOrder return $this->coordinates; } - public function setAdvanceOrder($flag_advance) + public function setAdvanceOrder($flag_advance = true) { $this->flag_advance = $flag_advance; return $this; diff --git a/src/Entity/Ticket.php b/src/Entity/Ticket.php index 38faf2be..cdf44ab1 100644 --- a/src/Entity/Ticket.php +++ b/src/Entity/Ticket.php @@ -50,13 +50,6 @@ class Ticket */ protected $other_ticket_type; - // subject of this ticket - /** - * @ORM\Column(type="string", length=80) - * @Assert\NotBlank() - */ - protected $subject; - // first name of ticket owner /** * @ORM\Column(type="string", length=80) @@ -180,17 +173,6 @@ class Ticket } } - public function setSubject($subject) - { - $this->subject = $subject; - return $this; - } - - public function getSubject() - { - return $this->subject; - } - public function setFirstName($first_name) { $this->first_name = $first_name; diff --git a/src/Ramcar/WarrantyClass.php b/src/Ramcar/WarrantyClass.php index ca850d9b..992ee1c6 100644 --- a/src/Ramcar/WarrantyClass.php +++ b/src/Ramcar/WarrantyClass.php @@ -6,9 +6,11 @@ class WarrantyClass extends NameValue { const WTY_PRIVATE = 'private'; const WTY_COMMERCIAL = 'commercial'; + const WTY_TNV = 'tnv'; const COLLECTION = [ 'private' => 'Private', 'commercial' => 'Commercial', + 'tnv' => 'TNV', ]; } diff --git a/templates/job-order/list.all.html.twig b/templates/job-order/list.all.html.twig index 0c446c6c..88a80ec2 100644 --- a/templates/job-order/list.all.html.twig +++ b/templates/job-order/list.all.html.twig @@ -85,6 +85,10 @@ field: 'service_type', title: 'Type of Transaction' }, + { + field: 'type', + title: 'Schedule' + }, { field: 'date_schedule', title: 'Scheduled Date' diff --git a/templates/job-order/list.assigning.html.twig b/templates/job-order/list.assigning.html.twig index 2b68ba7e..1d815f6f 100644 --- a/templates/job-order/list.assigning.html.twig +++ b/templates/job-order/list.assigning.html.twig @@ -85,6 +85,10 @@ field: 'service_type', title: 'Type of Transaction' }, + { + field: 'type', + title: 'Schedule' + }, { field: 'date_schedule', title: 'Scheduled Date' diff --git a/templates/job-order/list.fulfillment.html.twig b/templates/job-order/list.fulfillment.html.twig index b425e792..f38bd4a5 100644 --- a/templates/job-order/list.fulfillment.html.twig +++ b/templates/job-order/list.fulfillment.html.twig @@ -85,6 +85,10 @@ field: 'service_type', title: 'Type of Transaction' }, + { + field: 'type', + title: 'Schedule' + }, { field: 'date_schedule', title: 'Scheduled Date' diff --git a/templates/job-order/list.open.html.twig b/templates/job-order/list.open.html.twig index 0f7ddb97..8bdfbfb1 100644 --- a/templates/job-order/list.open.html.twig +++ b/templates/job-order/list.open.html.twig @@ -85,6 +85,10 @@ field: 'service_type', title: 'Type of Transaction' }, + { + field: 'type', + title: 'Schedule' + }, { field: 'date_schedule', title: 'Scheduled Date' diff --git a/templates/job-order/list.processing.html.twig b/templates/job-order/list.processing.html.twig index e82e5796..2d429398 100644 --- a/templates/job-order/list.processing.html.twig +++ b/templates/job-order/list.processing.html.twig @@ -81,6 +81,10 @@ field: 'delivery_address', title: 'Customer Area' }, + { + field: 'type', + title: 'Schedule' + }, { field: 'date_schedule', title: 'Scheduled Date' diff --git a/templates/ticket/form.html.twig b/templates/ticket/form.html.twig index 0d498d1d..71930e9b 100644 --- a/templates/ticket/form.html.twig +++ b/templates/ticket/form.html.twig @@ -95,13 +95,6 @@
-