diff --git a/app/Abstracts/Import.php b/app/Abstracts/Import.php index 775565c50..7cd59dbe8 100644 --- a/app/Abstracts/Import.php +++ b/app/Abstracts/Import.php @@ -4,19 +4,21 @@ namespace App\Abstracts; use App\Traits\Import as ImportHelper; use App\Utilities\Date; +use Carbon\Exceptions\InvalidFormatException; use Illuminate\Support\Arr; +use Illuminate\Support\Facades\Log; +use Illuminate\Support\Facades\Validator; use Illuminate\Support\Str; use Maatwebsite\Excel\Concerns\Importable; -use Maatwebsite\Excel\Concerns\ToModel; use Maatwebsite\Excel\Concerns\SkipsOnError; use Maatwebsite\Excel\Concerns\SkipsOnFailure; +use Maatwebsite\Excel\Concerns\ToModel; use Maatwebsite\Excel\Concerns\WithBatchInserts; use Maatwebsite\Excel\Concerns\WithChunkReading; use Maatwebsite\Excel\Concerns\WithHeadingRow; use Maatwebsite\Excel\Concerns\WithMapping; use Maatwebsite\Excel\Concerns\WithValidation; use Maatwebsite\Excel\Validators\Failure; -use Illuminate\Support\Facades\Validator; use PhpOffice\PhpSpreadsheet\Shared\Date as ExcelDate; abstract class Import implements ToModel, SkipsOnError, SkipsOnFailure, WithBatchInserts, WithChunkReading, WithHeadingRow, WithMapping, WithValidation @@ -45,7 +47,12 @@ abstract class Import implements ToModel, SkipsOnError, SkipsOnFailure, WithBatc continue; } - $row[$date_field] = Date::parse(ExcelDate::excelToDateTimeObject($row[$date_field]))->format('Y-m-d H:i:s'); + try { + $row[$date_field] = Date::parse(ExcelDate::excelToDateTimeObject($row[$date_field])) + ->format('Y-m-d H:i:s'); + } catch (InvalidFormatException | \Exception $e) { + Log::info($e->getMessage()); + } } return $row; diff --git a/app/Imports/Purchases/Sheets/BillItemTaxes.php b/app/Imports/Purchases/Sheets/BillItemTaxes.php index ce40d346e..7f7ebb871 100644 --- a/app/Imports/Purchases/Sheets/BillItemTaxes.php +++ b/app/Imports/Purchases/Sheets/BillItemTaxes.php @@ -31,9 +31,9 @@ class BillItemTaxes extends Import $row['document_id'] = (int) Document::bill()->number($row['bill_number'])->pluck('id')->first(); - if (empty($row['bill_item_id']) && !empty($row['item_name'])) { + if (empty($row['document_item_id']) && !empty($row['item_name'])) { $item_id = Item::name($row['item_name'])->pluck('id')->first(); - $row['bill_item_id'] = DocumentItem::bill()->where('item_id', $item_id)->pluck('id')->first(); + $row['document_item_id'] = DocumentItem::bill()->where('item_id', $item_id)->pluck('id')->first(); } $row['tax_id'] = $this->getTaxId($row); diff --git a/app/Imports/Sales/Sheets/InvoiceItemTaxes.php b/app/Imports/Sales/Sheets/InvoiceItemTaxes.php index cb7ea7186..45dcfdbb8 100644 --- a/app/Imports/Sales/Sheets/InvoiceItemTaxes.php +++ b/app/Imports/Sales/Sheets/InvoiceItemTaxes.php @@ -31,9 +31,9 @@ class InvoiceItemTaxes extends Import $row['document_id'] = (int) Document::invoice()->number($row['invoice_number'])->pluck('id')->first(); - if (empty($row['invoice_item_id']) && !empty($row['item_name'])) { + if (empty($row['document_item_id']) && !empty($row['item_name'])) { $item_id = Item::name($row['item_name'])->pluck('id')->first(); - $row['invoice_item_id'] = DocumentItem::invoice()->where('item_id', $item_id)->pluck('id')->first(); + $row['document_item_id'] = DocumentItem::invoice()->where('item_id', $item_id)->pluck('id')->first(); } $row['tax_id'] = $this->getTaxId($row); diff --git a/resources/assets/js/views/common/documents.js b/resources/assets/js/views/common/documents.js index 890151636..6fd874846 100644 --- a/resources/assets/js/views/common/documents.js +++ b/resources/assets/js/views/common/documents.js @@ -309,7 +309,9 @@ const app = new Vue({ // invoice_item_checkbox_sample: [], }); - this.onCalculateTotal(); + setTimeout(function() { + this.onCalculateTotal(); + }.bind(this), 800); }, onSelectedTax(item_index) {