Resolve "Second round of UAT changes" #865

Merged
jankstudio merged 3 commits from 67-second-round-of-uat-changes into master 2018-04-03 15:53:16 +00:00
13 changed files with 52 additions and 43 deletions

View file

@ -5,6 +5,7 @@ namespace App\Controller;
use App\Ramcar\BaseController; use App\Ramcar\BaseController;
use App\Entity\BatteryManufacturer; use App\Entity\BatteryManufacturer;
use App\Entity\Vehicle; use App\Entity\Vehicle;
use App\Entity\Battery;
use Doctrine\ORM\Query; use Doctrine\ORM\Query;
use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Request;
@ -278,12 +279,14 @@ class BatteryManufacturerController extends BaseController
$em = $this->getDoctrine()->getManager(); $em = $this->getDoctrine()->getManager();
$obj = $em->getRepository(BatteryManufacturer::class)->find($req->request->get('id')); $obj = $em->getRepository(BatteryManufacturer::class)->find($req->request->get('id'));
$vobj = $em->getRepository(Vehicle::class)->find($req->request->get('vehicle_id')); $vobj = $em->getRepository(Vehicle::class)->find($req->request->get('vehicle_id'));
$all_batts = $em->getRepository(Battery::class)->findAll();
if (empty($obj) || empty($vobj)) if (empty($obj) || empty($vobj))
throw $this->createNotFoundException('The item does not exist'); throw $this->createNotFoundException('The item does not exist');
// build batteries array // build batteries array
$batteries = []; $batteries = [];
$battery_index = [];
// get compatible batteries from selected manufacturer // get compatible batteries from selected manufacturer
foreach ($vobj->getBatteries() as $battery) foreach ($vobj->getBatteries() as $battery)
@ -300,13 +303,36 @@ class BatteryManufacturerController extends BaseController
'warr_private' => $battery->getWarrantyPrivate(), 'warr_private' => $battery->getWarrantyPrivate(),
'warr_commercial' => $battery->getWarrantyCommercial(), '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 // order by price
usort($batteries, function ($a, $b) { usort($batteries, function ($a, $b) {
return -($a['sell_price'] <=> $b['sell_price']); return -($a['sell_price'] <=> $b['sell_price']);
}); });
*/
// response // response
return $this->json([ return $this->json([

View file

@ -530,7 +530,8 @@ class JobOrderController extends BaseController
// add row data // add row data
$row['id'] = $orow->getID(); $row['id'] = $orow->getID();
$row['delivery_address'] = $orow->getDeliveryAddress(); $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['service_type'] = $service_types[$orow->getServiceType()];
$row['status'] = $statuses[$orow->getStatus()]; $row['status'] = $statuses[$orow->getStatus()];
$row['flag_advance'] = $orow->isAdvanceOrder(); $row['flag_advance'] = $orow->isAdvanceOrder();

View file

@ -91,7 +91,6 @@ class TicketController extends BaseController
// add row data // add row data
$row['id'] = $orow->getID(); $row['id'] = $orow->getID();
$row['date_create'] = $orow->getDateCreate()->format("d M Y g:i A"); $row['date_create'] = $orow->getDateCreate()->format("d M Y g:i A");
$row['subject'] = $orow->getSubject();
$row['first_name'] = $orow->getFirstName(); $row['first_name'] = $orow->getFirstName();
$row['last_name'] = $orow->getLastName(); $row['last_name'] = $orow->getLastName();
$row['contact_num'] = $orow->getContactNumber(); $row['contact_num'] = $orow->getContactNumber();
@ -243,7 +242,6 @@ class TicketController extends BaseController
->setStatus($req->request->get('status')) ->setStatus($req->request->get('status'))
->setTicketType($ticket_type) ->setTicketType($ticket_type)
->setOtherTicketType($other_ticket_type) ->setOtherTicketType($other_ticket_type)
->setSubject($req->request->get('subject'))
->setDetails($req->request->get('details')) ->setDetails($req->request->get('details'))
->setPlateNumber($req->request->get('plate_number')) ->setPlateNumber($req->request->get('plate_number'))
->setDateCreate(new DateTime()) ->setDateCreate(new DateTime())
@ -401,7 +399,6 @@ class TicketController extends BaseController
->setStatus($req->request->get('status')) ->setStatus($req->request->get('status'))
->setTicketType($ticket_type) ->setTicketType($ticket_type)
->setOtherTicketType($other_ticket_type) ->setOtherTicketType($other_ticket_type)
->setSubject($req->request->get('subject'))
->setDetails($req->request->get('details')) ->setDetails($req->request->get('details'))
->setPlateNumber($req->request->get('plate_number')); ->setPlateNumber($req->request->get('plate_number'));
@ -465,8 +462,7 @@ class TicketController extends BaseController
// check if datatable filter is present and append to query // check if datatable filter is present and append to query
protected function setQueryFilters($datatable, &$query, $qb) { protected function setQueryFilters($datatable, &$query, $qb) {
if (isset($datatable['query']['data-rows-search']) && !empty($datatable['query']['data-rows-search'])) { if (isset($datatable['query']['data-rows-search']) && !empty($datatable['query']['data-rows-search'])) {
$query->where('q.subject LIKE :filter') $query->where('q.status LIKE :filter')
->orWhere('q.status LIKE :filter')
->orWhere('q.ticket_type LIKE :filter') ->orWhere('q.ticket_type LIKE :filter')
->orWhere('q.other_ticket_type LIKE :filter') ->orWhere('q.other_ticket_type LIKE :filter')
->orWhere('q.first_name LIKE :filter') ->orWhere('q.first_name LIKE :filter')

View file

@ -301,7 +301,7 @@ class JobOrder
return $this->coordinates; return $this->coordinates;
} }
public function setAdvanceOrder($flag_advance) public function setAdvanceOrder($flag_advance = true)
{ {
$this->flag_advance = $flag_advance; $this->flag_advance = $flag_advance;
return $this; return $this;

View file

@ -50,13 +50,6 @@ class Ticket
*/ */
protected $other_ticket_type; protected $other_ticket_type;
// subject of this ticket
/**
* @ORM\Column(type="string", length=80)
* @Assert\NotBlank()
*/
protected $subject;
// first name of ticket owner // first name of ticket owner
/** /**
* @ORM\Column(type="string", length=80) * @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) public function setFirstName($first_name)
{ {
$this->first_name = $first_name; $this->first_name = $first_name;

View file

@ -6,9 +6,11 @@ class WarrantyClass extends NameValue
{ {
const WTY_PRIVATE = 'private'; const WTY_PRIVATE = 'private';
const WTY_COMMERCIAL = 'commercial'; const WTY_COMMERCIAL = 'commercial';
const WTY_TNV = 'tnv';
const COLLECTION = [ const COLLECTION = [
'private' => 'Private', 'private' => 'Private',
'commercial' => 'Commercial', 'commercial' => 'Commercial',
'tnv' => 'TNV',
]; ];
} }

View file

@ -85,6 +85,10 @@
field: 'service_type', field: 'service_type',
title: 'Type of Transaction' title: 'Type of Transaction'
}, },
{
field: 'type',
title: 'Schedule'
},
{ {
field: 'date_schedule', field: 'date_schedule',
title: 'Scheduled Date' title: 'Scheduled Date'

View file

@ -85,6 +85,10 @@
field: 'service_type', field: 'service_type',
title: 'Type of Transaction' title: 'Type of Transaction'
}, },
{
field: 'type',
title: 'Schedule'
},
{ {
field: 'date_schedule', field: 'date_schedule',
title: 'Scheduled Date' title: 'Scheduled Date'

View file

@ -85,6 +85,10 @@
field: 'service_type', field: 'service_type',
title: 'Type of Transaction' title: 'Type of Transaction'
}, },
{
field: 'type',
title: 'Schedule'
},
{ {
field: 'date_schedule', field: 'date_schedule',
title: 'Scheduled Date' title: 'Scheduled Date'

View file

@ -85,6 +85,10 @@
field: 'service_type', field: 'service_type',
title: 'Type of Transaction' title: 'Type of Transaction'
}, },
{
field: 'type',
title: 'Schedule'
},
{ {
field: 'date_schedule', field: 'date_schedule',
title: 'Scheduled Date' title: 'Scheduled Date'

View file

@ -81,6 +81,10 @@
field: 'delivery_address', field: 'delivery_address',
title: 'Customer Area' title: 'Customer Area'
}, },
{
field: 'type',
title: 'Schedule'
},
{ {
field: 'date_schedule', field: 'date_schedule',
title: 'Scheduled Date' title: 'Scheduled Date'

View file

@ -95,13 +95,6 @@
<div class="form-control-feedback hide" data-field="status"></div> <div class="form-control-feedback hide" data-field="status"></div>
</div> </div>
</div> </div>
<div class="form-group m-form__group row no-border">
<div class="col-lg-12">
<label data-field="subject">Subject</label>
<input type="text" name="subject" class="form-control m-input" value="{{ obj.getSubject }}">
<div class="form-control-feedback hide" data-field="subject"></div>
</div>
</div>
<div class="form-group m-form__group row no-border"> <div class="form-group m-form__group row no-border">
<div class="col-lg-12"> <div class="col-lg-12">
<label for="details" data-field="details"> <label for="details" data-field="details">
@ -248,7 +241,6 @@
trow = { trow = {
id: "{{ ticket.getID }}", id: "{{ ticket.getID }}",
date_create: "{{ ticket.getDateCreate|date('d M Y - h:i A') }}", date_create: "{{ ticket.getDateCreate|date('d M Y - h:i A') }}",
subject: "{{ ticket.getSubject }}",
ticket_type: "{{ ticket.getTicketTypeText }}", ticket_type: "{{ ticket.getTicketTypeText }}",
status: "{{ ticket.getStatusText }}", status: "{{ ticket.getStatusText }}",
edit_url: "{{ url('ticket_update', {'id': ticket.getID}) }}" edit_url: "{{ url('ticket_update', {'id': ticket.getID}) }}"
@ -281,11 +273,6 @@
title: 'Date Created', title: 'Date Created',
width: 200 width: 200
}, },
{
field: 'subject',
title: 'Subject',
width: 300
},
{ {
field: 'ticket_type', field: 'ticket_type',
title: 'Ticket Type' title: 'Ticket Type'

View file

@ -88,11 +88,6 @@
title: 'Date Created', title: 'Date Created',
width: 150 width: 150
}, },
{
field: 'subject',
title: 'Subject',
width: 250
},
{ {
field: 'first_name', field: 'first_name',
title: 'First Name' title: 'First Name'