Rename processCriteria to generateInvoice. Added constants to invoice generator. #265

This commit is contained in:
Korina Cordero 2019-09-20 09:30:08 +00:00
parent dc2eecbe0c
commit 89ec286a9f
4 changed files with 25 additions and 17 deletions

View file

@ -973,7 +973,7 @@ class APIController extends Controller
$icrit->addEntry($batt, $trade_in, 1); $icrit->addEntry($batt, $trade_in, 1);
// send to invoice generator // send to invoice generator
$invoice = $ic->processCriteria($icrit); $invoice = $ic->generateInvoice($icrit);
$jo->setInvoice($invoice); $jo->setInvoice($invoice);
$em->persist($jo); $em->persist($jo);
@ -1120,7 +1120,7 @@ class APIController extends Controller
$icrit->addEntry($batt, $trade_in, 1); $icrit->addEntry($batt, $trade_in, 1);
// send to invoice generator // send to invoice generator
$invoice = $ic->processCriteria($icrit); $invoice = $ic->generateInvoice($icrit);
// make invoice json data // make invoice json data
$data = [ $data = [

View file

@ -327,7 +327,7 @@ class JobOrderController extends Controller
else else
{ {
// generate the invoice // generate the invoice
$iobj = $ic->processCriteria($criteria); $iobj = $ic->generateInvoice($criteria);
$iobj->setStatus(InvoiceStatus::DRAFT) $iobj->setStatus(InvoiceStatus::DRAFT)
->setCreatedBy($this->getUser()); ->setCreatedBy($this->getUser());
@ -522,7 +522,7 @@ class JobOrderController extends Controller
else else
{ {
// generate the invoice // generate the invoice
$iobj = $ic->processCriteria($criteria); $iobj = $ic->generateInvoice($criteria);
$iobj->setStatus(InvoiceStatus::DRAFT) $iobj->setStatus(InvoiceStatus::DRAFT)
->setCreatedBy($this->getUser()); ->setCreatedBy($this->getUser());
@ -2548,7 +2548,7 @@ class JobOrderController extends Controller
} }
// generate the invoice // generate the invoice
$iobj = $ic->processCriteria($criteria); $iobj = $ic->generateInvoice($criteria);
// use invoice object values in a json friendly array // use invoice object values in a json friendly array
$invoice = [ $invoice = [

View file

@ -839,7 +839,7 @@ class RAPIController extends Controller
error_log('adding entry for battery - ' . $battery->getID()); error_log('adding entry for battery - ' . $battery->getID());
} }
$invoice = $ic->processCriteria($crit); $invoice = $ic->generateInvoice($crit);
$invoice->setStatus(InvoiceStatus::DRAFT); $invoice->setStatus(InvoiceStatus::DRAFT);
// remove previous invoice // remove previous invoice

View file

@ -21,6 +21,13 @@ class ResqInvoiceGenerator implements InvoiceGeneratorInterface
const TAX_RATE = 0.12; const TAX_RATE = 0.12;
const SERVICE_FEE = 300; const SERVICE_FEE = 300;
const RECHARGE_FEE = 300; const RECHARGE_FEE = 300;
const TROUBLESHOOTING_FEE = 150;
const BATT_REPLACEMENT_FEE = 0;
const WARRANTY_FEE = 0;
const OTHER_SERVICES_FEE = 200;
const COOLANT_FEE = 1600;
const REFUEL_FEE_GAS = 260;
const REFUEL_FEE_DIESEL = 220;
// creates invoice based on the criteria sent // creates invoice based on the criteria sent
public function __construct() public function __construct()
@ -276,12 +283,12 @@ class ResqInvoiceGenerator implements InvoiceGeneratorInterface
$item->setInvoice($invoice) $item->setInvoice($invoice)
->setTitle('Troubleshooting fee') ->setTitle('Troubleshooting fee')
->setQuantity(1) ->setQuantity(1)
->setPrice(150.00); ->setPrice(self::TROUBLESHOOTING_FEE);
$invoice->addItem($item); $invoice->addItem($item);
$total['sell_price'] = 150.00; $total['sell_price'] = self::TROUBLESHOOTING_FEE;
$total['vat_ex_price'] = 150.00; $total['vat_ex_price'] = self::TROUBLESHOOTING_FEE;
$total['total_price'] = 150.00; $total['total_price'] = self::TROUBLESHOOTING_FEE;
} }
protected function processJumpstartWarranty(&$total, $invoice) protected function processJumpstartWarranty(&$total, $invoice)
@ -316,7 +323,7 @@ class ResqInvoiceGenerator implements InvoiceGeneratorInterface
$item->setInvoice($invoice) $item->setInvoice($invoice)
->setTitle('Battery replacement') ->setTitle('Battery replacement')
->setQuantity(1) ->setQuantity(1)
->setPrice(0.00); ->setPrice(self::BATT_REPLACEMENT_FEE);
$invoice->addItem($item); $invoice->addItem($item);
} }
@ -331,7 +338,7 @@ class ResqInvoiceGenerator implements InvoiceGeneratorInterface
$item->setInvoice($invoice) $item->setInvoice($invoice)
->setTitle($batt->getModel()->getName() . ' ' . $batt->getSize()->getName() . ' - Service Unit') ->setTitle($batt->getModel()->getName() . ' ' . $batt->getSize()->getName() . ' - Service Unit')
->setQuantity(1) ->setQuantity(1)
->setPrice(0.00) ->setPrice(self::WARRANTY_FEE)
->setBattery($batt); ->setBattery($batt);
$invoice->addItem($item); $invoice->addItem($item);
} }
@ -343,7 +350,7 @@ class ResqInvoiceGenerator implements InvoiceGeneratorInterface
$item->setInvoice($invoice) $item->setInvoice($invoice)
->setTitle('Service - ' . ServiceType::getName($stype)) ->setTitle('Service - ' . ServiceType::getName($stype))
->setQuantity(1) ->setQuantity(1)
->setPrice(200.00); ->setPrice(self::OTHER_SERVICES_FEE);
$invoice->addItem($item); $invoice->addItem($item);
$total['total_price'] = 200.00; $total['total_price'] = 200.00;
@ -372,10 +379,11 @@ class ResqInvoiceGenerator implements InvoiceGeneratorInterface
$coolant->setInvoice($invoice) $coolant->setInvoice($invoice)
->setTitle('4L Coolant') ->setTitle('4L Coolant')
->setQuantity(1) ->setQuantity(1)
->setPrice(1600); ->setPrice(self::COOLANT_FEE);
$invoice->addItem($coolant); $invoice->addItem($coolant);
$total_price += 1600; $total_price += self::COOLANT_FEE;
//$total_price += 1600;
} }
$vat_ex_price = $this->getTaxExclusivePrice($total_price); $vat_ex_price = $this->getTaxExclusivePrice($total_price);
@ -428,8 +436,8 @@ class ResqInvoiceGenerator implements InvoiceGeneratorInterface
$total_price = $fee; $total_price = $fee;
// $total['total_price'] = 200.00; // $total['total_price'] = 200.00;
$gas_price = 260; $gas_price = self::REFUEL_FEE_GAS;
$diesel_price = 220; $diesel_price = self::REFUEL_FEE_DIESEL;
$fuel = new InvoiceItem(); $fuel = new InvoiceItem();
error_log('fuel type - ' . $ftype); error_log('fuel type - ' . $ftype);