diff --git a/app/Console/Commands/SendRemindersCron.php b/app/Console/Commands/SendRemindersCron.php new file mode 100644 index 000000000000..9eaefac5c0f3 --- /dev/null +++ b/app/Console/Commands/SendRemindersCron.php @@ -0,0 +1,52 @@ +credit_repository->save($request->all(), CreditFactory::create(auth()->user()->company()->id, auth()->user()->id)); - $credit = StoreCredit::dispatchNow($credit, $request->all(), $credit->company); + $credit = $credit->service() + ->fillDefaults() + ->save(); event(new CreditWasCreated($credit, $credit->company, Ninja::eventVars())); diff --git a/app/Http/Controllers/InvoiceController.php b/app/Http/Controllers/InvoiceController.php index bcd61c1439c3..fb0350e5fe3f 100644 --- a/app/Http/Controllers/InvoiceController.php +++ b/app/Http/Controllers/InvoiceController.php @@ -213,7 +213,10 @@ class InvoiceController extends BaseController event(new InvoiceWasCreated($invoice, $invoice->company, Ninja::eventVars())); - $invoice = $invoice->service()->triggeredActions($request)->save(); + $invoice = $invoice->service() + ->fillDefaults() + ->triggeredActions($request) + ->save(); return $this->itemResponse($invoice); } diff --git a/app/Jobs/Credit/StoreCredit.php b/app/Jobs/Credit/StoreCredit.php deleted file mode 100644 index 0a114fab9d2d..000000000000 --- a/app/Jobs/Credit/StoreCredit.php +++ /dev/null @@ -1,55 +0,0 @@ -credit = $credit; - - $this->data = $data; - } - - /** - * Execute the job. - * - * @param CreditRepository $credit_repository - * @return Credit|null - */ - public function handle(CreditRepository $credit_repository): ?Credit - { - // MultiDB::setDB($this->company->db); - - // $payment = false; - - // if ($payment) { - // PaymentNotification::dispatch($payment, $payment->company); - // } - - return $this->credit; - } -} diff --git a/app/Jobs/Ninja/SendReminders.php b/app/Jobs/Ninja/SendReminders.php new file mode 100644 index 000000000000..fd26d397ba78 --- /dev/null +++ b/app/Jobs/Ninja/SendReminders.php @@ -0,0 +1,60 @@ +format('Y-m-d h:i:s')); + + if (! config('ninja.db.multi_db_enabled')) { + + + + } else { + //multiDB environment, need to + foreach (MultiDB::$dbs as $db) { + + MultiDB::setDB($db); + + } + + } + + } +} \ No newline at end of file diff --git a/app/Services/Credit/CreditService.php b/app/Services/Credit/CreditService.php index b31e15043909..4928b4d45178 100644 --- a/app/Services/Credit/CreditService.php +++ b/app/Services/Credit/CreditService.php @@ -104,6 +104,17 @@ class CreditService public function fillDefaults() { + $settings = $this->credit->client->getMergedSettings(); + + if(! $this->credit->design_id) + $this->credit->design_id = $this->decodePrimaryKey($settings->credit_design_id); + + if(!isset($this->credit->footer)) + $this->credit->footer = $settings->credit_footer; + + if(!isset($this->credit->terms)) + $this->credit->terms = $settings->credit_terms; + return $this; } diff --git a/app/Services/Invoice/AutoBillInvoice.php b/app/Services/Invoice/AutoBillInvoice.php index 878d766075e7..102f1bee251b 100644 --- a/app/Services/Invoice/AutoBillInvoice.php +++ b/app/Services/Invoice/AutoBillInvoice.php @@ -60,8 +60,8 @@ class AutoBillInvoice extends AbstractService if($this->client->getSetting('use_credits_payment') != 'off') $this->applyCreditPayment(); - info("partial = {$this->invoice->partial}"); - info("balance = {$this->invoice->balance}"); + // info("partial = {$this->invoice->partial}"); + // info("balance = {$this->invoice->balance}"); /* Determine $amount */ if ($this->invoice->partial > 0) diff --git a/app/Services/Invoice/InvoiceService.php b/app/Services/Invoice/InvoiceService.php index d0d4d4efe1ac..5171752aea9e 100644 --- a/app/Services/Invoice/InvoiceService.php +++ b/app/Services/Invoice/InvoiceService.php @@ -365,6 +365,17 @@ class InvoiceService public function fillDefaults() { + $settings = $this->invoice->client->getMergedSettings(); + + if(! $this->invoice->design_id) + $this->invoice->design_id = $this->decodePrimaryKey($settings->invoice_design_id); + + if(!isset($this->invoice->footer)) + $this->invoice->footer = $settings->invoice_footer; + + if(!isset($this->invoice->terms)) + $this->invoice->terms = $settings->invoice_terms; + return $this; }