Refactor fulfill jo to belong in entity #159

This commit is contained in:
Kendrick Chan 2018-07-26 02:58:19 +08:00
parent 098df69949
commit 5ed3a2e447
3 changed files with 24 additions and 7 deletions

View file

@ -1326,12 +1326,12 @@ class JobOrderController extends BaseController
->setServiceType($req->request->get('service_type'))
->setWarrantyClass($req->request->get('warranty_class'))
->setSource($req->request->get('source'))
->setStatus(JOStatus::FULFILLED)
// ->setStatus(JOStatus::FULFILLED)
->setDeliveryInstructions($req->request->get('delivery_instructions'))
->setTier1Notes($req->request->get('tier1_notes'))
->setTier2Notes($req->request->get('tier2_notes'))
->setDeliveryAddress($req->request->get('delivery_address'))
->setDateFulfill(new DateTime());
->setDeliveryAddress($req->request->get('delivery_address'));
// ->setDateFulfill(new DateTime());
// validate
$errors = $validator->validate($obj);
@ -1342,6 +1342,8 @@ class JobOrderController extends BaseController
}
}
$obj->fulfill();
// check if any errors were found
if (!empty($error_array)) {
// return validation failure response

View file

@ -554,8 +554,11 @@ class RAPIController extends Controller
// set invoice to paid
$jo->getInvoice()->setStatus(InvoiceStatus::PAID);
/*
// set jo status to fulfilled
$jo->setStatus(JOStatus::FULFILLED);
*/
$jo->fulfill();
$em->flush();

View file

@ -654,6 +654,13 @@ class JobOrder
return $this->trade_in_type;
}
protected function makeRiderAvailable()
{
$rider = $this->getRider();
if ($rider != null)
$rider->setAvailable();
}
public function cancel($reason)
{
// set status to cancelled
@ -661,9 +668,14 @@ class JobOrder
->setDateCancel(new DateTime())
->setCancelReason($reason);
// set rider available
$rider = $obj->getRider();
if ($rider != null)
$rider->setAvailable();
$this->makeRiderAvailable();
}
public function fulfill()
{
$this->setStatus(JOStatus::FULFILLED)
->setDateFulfill(new DateTime());
$this->makeRiderAvailable();
}
}