diff --git a/app/Ninja/Import/BaseTransformer.php b/app/Ninja/Import/BaseTransformer.php index 2f0131c9dfa7..3400d5dade23 100644 --- a/app/Ninja/Import/BaseTransformer.php +++ b/app/Ninja/Import/BaseTransformer.php @@ -63,6 +63,16 @@ class BaseTransformer extends TransformerAbstract return (isset($data->$field) && $data->$field) ? $data->$field : 0; } + /** + * @param $data + * @param $field + * @return float + */ + protected function getFloat($data, $field) + { + return (isset($data->$field) && $data->$field) ? Utils::parseFloat($data->$field) : 0; + } + /** * @param $name * @return null diff --git a/app/Ninja/Import/CSV/ExpenseTransformer.php b/app/Ninja/Import/CSV/ExpenseTransformer.php index cd566c0f1ab4..4b8a4cef64ff 100644 --- a/app/Ninja/Import/CSV/ExpenseTransformer.php +++ b/app/Ninja/Import/CSV/ExpenseTransformer.php @@ -1,5 +1,6 @@ isset($data->amount) ? (float) $data->amount : null, + 'amount' => $this->getFloat($data, 'amount'), 'vendor_id' => isset($data->vendor) ? $this->getVendorId($data->vendor) : null, 'client_id' => isset($data->client) ? $this->getClientId($data->client) : null, 'expense_date' => isset($data->expense_date) ? date('Y-m-d', strtotime($data->expense_date)) : null, diff --git a/app/Ninja/Import/CSV/InvoiceTransformer.php b/app/Ninja/Import/CSV/InvoiceTransformer.php index 6095388fdde0..2ee8b018a4e2 100644 --- a/app/Ninja/Import/CSV/InvoiceTransformer.php +++ b/app/Ninja/Import/CSV/InvoiceTransformer.php @@ -26,7 +26,7 @@ class InvoiceTransformer extends BaseTransformer return [ 'client_id' => $this->getClientId($data->name), 'invoice_number' => isset($data->invoice_number) ? $this->getInvoiceNumber($data->invoice_number) : null, - 'paid' => isset($data->paid) ? (float) $data->paid : null, + 'paid' => $this->getFloat($data, 'paid'), 'po_number' => $this->getString($data, 'po_number'), 'terms' => $this->getString($data, 'terms'), 'public_notes' => $this->getString($data, 'public_notes'), @@ -35,11 +35,11 @@ class InvoiceTransformer extends BaseTransformer [ 'product_key' => '', 'notes' => $this->getString($data, 'notes'), - 'cost' => isset($data->amount) ? (float) $data->amount : null, + 'cost' => $this->getFloat($data, 'amount'), 'qty' => 1, ] ], ]; }); } -} \ No newline at end of file +} diff --git a/app/Ninja/Import/CSV/PaymentTransformer.php b/app/Ninja/Import/CSV/PaymentTransformer.php index c8a1a82955e4..e06677fcb3ea 100644 --- a/app/Ninja/Import/CSV/PaymentTransformer.php +++ b/app/Ninja/Import/CSV/PaymentTransformer.php @@ -16,11 +16,11 @@ class PaymentTransformer extends BaseTransformer { return new Item($data, function ($data) { return [ - 'amount' => $data->paid, + 'amount' => $this->getFloat($data, 'paid'), 'payment_date_sql' => isset($data->invoice_date) ? $data->invoice_date : null, 'client_id' => $data->client_id, 'invoice_id' => $data->invoice_id, ]; }); } -} \ No newline at end of file +} diff --git a/app/Ninja/Import/CSV/ProductTransformer.php b/app/Ninja/Import/CSV/ProductTransformer.php index b8b877c29833..60663c495719 100644 --- a/app/Ninja/Import/CSV/ProductTransformer.php +++ b/app/Ninja/Import/CSV/ProductTransformer.php @@ -22,7 +22,7 @@ class ProductTransformer extends BaseTransformer return [ 'product_key' => $this->getString($data, 'product_key'), 'notes' => $this->getString($data, 'notes'), - 'cost' => $this->getNumber($data, 'cost'), + 'cost' => $this->getFloat($data, 'cost'), ]; }); }