From 18be96d7c68b1651dab9733c5130aa501979f791 Mon Sep 17 00:00:00 2001 From: Nikola Cirkovic Date: Sun, 29 May 2022 04:13:09 +0200 Subject: [PATCH] INA-4 | Purchase Order Service --- .../PurchaseOrder/PurchaseOrderService.php | 57 +++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 app/Services/PurchaseOrder/PurchaseOrderService.php diff --git a/app/Services/PurchaseOrder/PurchaseOrderService.php b/app/Services/PurchaseOrder/PurchaseOrderService.php new file mode 100644 index 000000000000..ffb2cb84d164 --- /dev/null +++ b/app/Services/PurchaseOrder/PurchaseOrderService.php @@ -0,0 +1,57 @@ +purchase_order = $purchase_order; + } + + /** + * Saves the purchase order. + * @return \App\Models\PurchaseOrder object + */ + public function save(): ?PurchaseOrder + { + $this->purchase_order->saveQuietly(); + + return $this->purchase_order; + } + + public function fillDefaults() + { + $settings = $this->purchase_order->client->getMergedSettings(); + + //TODO implement design, footer, terms + + + /* If client currency differs from the company default currency, then insert the client exchange rate on the model.*/ + if (!isset($this->purchase_order->exchange_rate) && $this->purchase_order->client->currency()->id != (int)$this->purchase_order->company->settings->currency_id) + $this->purchase_order->exchange_rate = $this->purchase_order->client->currency()->exchange_rate; + + if (!isset($this->purchase_order->public_notes)) + $this->purchase_order->public_notes = $this->purchase_order->client->public_notes; + + + return $this; + } +}