From d4bfca46bccbc626665873b1512a895ef79ac613 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Mon, 18 Jan 2021 21:59:24 +1100 Subject: [PATCH 1/3] Fixes for reminder job --- app/DataMapper/FeesAndLimits.php | 3 +++ app/Jobs/Util/ReminderJob.php | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/app/DataMapper/FeesAndLimits.php b/app/DataMapper/FeesAndLimits.php index ecb51cc0130f..922a6cb486c1 100644 --- a/app/DataMapper/FeesAndLimits.php +++ b/app/DataMapper/FeesAndLimits.php @@ -37,9 +37,12 @@ class FeesAndLimits public $adjust_fee_percent = false; + public $is_enabled = true; + //public $gateway_type_id = 1; public static $casts = [ + 'is_enabled' => 'bool', 'gateway_type_id' => 'int', 'min_limit' => 'float', 'max_limit' => 'float', diff --git a/app/Jobs/Util/ReminderJob.php b/app/Jobs/Util/ReminderJob.php index ea72979d617d..f6f53f176229 100644 --- a/app/Jobs/Util/ReminderJob.php +++ b/app/Jobs/Util/ReminderJob.php @@ -58,7 +58,7 @@ class ReminderJob implements ShouldQueue Invoice::where('next_send_date', Carbon::today()->format('Y-m-d'))->with('invitations')->cursor()->each(function ($invoice) { if ($invoice->isPayable()) { $reminder_template = $invoice->calculateTemplate('invoice'); - $invoice->service()->touchReminder($this->reminder_template)->save(); + $invoice->service()->touchReminder($reminder_template)->save(); $invoice->invitations->each(function ($invitation) use ($invoice, $reminder_template) { EmailEntity::dispatch($invitation, $invitation->company, $reminder_template); From 81da8e169d4229a50689eb288742a54105a51225 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Mon, 18 Jan 2021 22:06:26 +1100 Subject: [PATCH 2/3] Add documents to groups --- app/Http/Controllers/GroupSettingController.php | 5 +++++ app/Models/GroupSetting.php | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/app/Http/Controllers/GroupSettingController.php b/app/Http/Controllers/GroupSettingController.php index 1f79f7838dc8..8f7f828270e0 100644 --- a/app/Http/Controllers/GroupSettingController.php +++ b/app/Http/Controllers/GroupSettingController.php @@ -22,6 +22,7 @@ use App\Models\GroupSetting; use App\Repositories\GroupSettingRepository; use App\Transformers\GroupSettingTransformer; use App\Utils\Traits\MakesHash; +use App\Utils\Traits\SavesDocuments; use App\Utils\Traits\Uploadable; use Illuminate\Foundation\Bus\DispatchesJobs; use Illuminate\Http\Request; @@ -32,6 +33,7 @@ class GroupSettingController extends BaseController use DispatchesJobs; use Uploadable; use MakesHash; + use SavesDocuments; protected $entity_type = GroupSetting::class; @@ -357,6 +359,9 @@ class GroupSettingController extends BaseController $this->uploadLogo($request->file('company_logo'), $group_setting->company, $group_setting); + if ($request->has('documents')) + $this->saveDocuments($request->input('documents'), $group_setting, false); + return $this->itemResponse($group_setting); } diff --git a/app/Models/GroupSetting.php b/app/Models/GroupSetting.php index 14d4178a37fe..b94fffbbfd3b 100644 --- a/app/Models/GroupSetting.php +++ b/app/Models/GroupSetting.php @@ -51,6 +51,11 @@ class GroupSetting extends StaticModel return $this->hasMany(Client::class, 'id', 'group_settings_id'); } + public function documents() + { + return $this->morphMany(Document::class, 'documentable'); + } + /** * Retrieve the model for a bound value. * From 1a4b5ed51d29ac814c58df622e039ded2273dc46 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Mon, 18 Jan 2021 22:08:18 +1100 Subject: [PATCH 3/3] Add public notes to invoices --- app/Services/Credit/CreditService.php | 3 +++ app/Services/Invoice/InvoiceService.php | 4 ++++ app/Services/Quote/QuoteService.php | 3 +++ 3 files changed, 10 insertions(+) diff --git a/app/Services/Credit/CreditService.php b/app/Services/Credit/CreditService.php index b7cc91d13888..3abdfc3ef583 100644 --- a/app/Services/Credit/CreditService.php +++ b/app/Services/Credit/CreditService.php @@ -114,6 +114,9 @@ class CreditService $this->credit->terms = $settings->credit_terms; } + if (!isset($this->credit->public_notes)) { + $this->credit->public_notes = $this->credit->client->public_notes; + } return $this; } diff --git a/app/Services/Invoice/InvoiceService.php b/app/Services/Invoice/InvoiceService.php index 7b9fc1a13b3c..2c0128b79d4f 100644 --- a/app/Services/Invoice/InvoiceService.php +++ b/app/Services/Invoice/InvoiceService.php @@ -375,6 +375,10 @@ class InvoiceService if (!isset($this->invoice->terms)) { $this->invoice->terms = $settings->invoice_terms; } + + if (!isset($this->invoice->public_notes)) { + $this->invoice->public_notes = $this->invoice->client->public_notes; + } return $this; } diff --git a/app/Services/Quote/QuoteService.php b/app/Services/Quote/QuoteService.php index 92ac2731175a..c561f10dee69 100644 --- a/app/Services/Quote/QuoteService.php +++ b/app/Services/Quote/QuoteService.php @@ -171,6 +171,9 @@ class QuoteService $this->quote->terms = $settings->quote_terms; } + if (!isset($this->quote->public_notes)) { + $this->quote->public_notes = $this->quote->client->public_notes; + } return $this; }