From b159a5a08dd67380c368c87b898e015b5cc19692 Mon Sep 17 00:00:00 2001 From: David Bomba Date: Thu, 8 Sep 2022 12:15:25 +1000 Subject: [PATCH] Improve float parsing in csv imports --- app/Import/Transformer/BaseTransformer.php | 8 +++++--- app/Jobs/RecurringInvoice/SendRecurring.php | 7 +++++-- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/app/Import/Transformer/BaseTransformer.php b/app/Import/Transformer/BaseTransformer.php index 4e755a140852..4752f2e6cd84 100644 --- a/app/Import/Transformer/BaseTransformer.php +++ b/app/Import/Transformer/BaseTransformer.php @@ -178,12 +178,14 @@ class BaseTransformer public function getFloat($data, $field) { if (array_key_exists($field, $data)) { - $number = preg_replace('/[^0-9-.]+/', '', $data[$field]); + //$number = preg_replace('/[^0-9-.]+/', '', $data[$field]); + return Number::parseStringFloat($data[$field]); } else { - $number = 0; + //$number = 0; + return 0; } - return Number::parseFloat($number); + // return Number::parseFloat($number); } /** diff --git a/app/Jobs/RecurringInvoice/SendRecurring.php b/app/Jobs/RecurringInvoice/SendRecurring.php index cd8b1b6a3d7b..a1452f2f15ee 100644 --- a/app/Jobs/RecurringInvoice/SendRecurring.php +++ b/app/Jobs/RecurringInvoice/SendRecurring.php @@ -74,6 +74,9 @@ class SendRecurring implements ShouldQueue } $invoice->date = date('Y-m-d'); + + nlog("Recurring Invoice Date Set on Invoice = {$invoice->date} - ". now()->format('Y-m-d')); + $invoice->due_date = $this->recurring_invoice->calculateDueDate(date('Y-m-d')); $invoice->recurring_id = $this->recurring_invoice->id; $invoice->saveQuietly(); @@ -108,9 +111,9 @@ class SendRecurring implements ShouldQueue $this->recurring_invoice->setCompleted(); } - // nlog('next send date = '.$this->recurring_invoice->next_send_date); + nlog('next send date = '.$this->recurring_invoice->next_send_date); // nlog('remaining cycles = '.$this->recurring_invoice->remaining_cycles); - // nlog('last send date = '.$this->recurring_invoice->last_sent_date); + nlog('last send date = '.$this->recurring_invoice->last_sent_date); $this->recurring_invoice->save();