Ensure order of Item exports

This commit is contained in:
David Bomba 2023-10-20 09:22:33 +11:00
parent 91ddacc3dd
commit aca580780a
3 changed files with 11 additions and 7 deletions

View File

@ -137,16 +137,16 @@ class InvoiceItemExport extends BaseExport
if (str_contains($key, "item.")) { if (str_contains($key, "item.")) {
$key = str_replace("item.", "", $key); $tmp_key = str_replace("item.", "", $key);
if($key == 'type_id') if($tmp_key == 'type_id')
$key = 'type'; $tmp_key = 'type';
if($key == 'tax_id') if($tmp_key == 'tax_id')
$key = 'tax_category'; $tmp_key = 'tax_category';
if (property_exists($item, $key)) { if (property_exists($item, $tmp_key)) {
$item_array[$key] = $item->{$key}; $item_array[$key] = $item->{$tmp_key};
} }
else { else {
$item_array[$key] = ''; $item_array[$key] = '';
@ -157,6 +157,8 @@ class InvoiceItemExport extends BaseExport
$transformed_items = array_merge($transformed_invoice, $item_array); $transformed_items = array_merge($transformed_invoice, $item_array);
$entity = $this->decorateAdvancedFields($invoice, $transformed_items); $entity = $this->decorateAdvancedFields($invoice, $transformed_items);
$entity = array_merge(array_flip(array_values($this->input['report_keys'])), $entity);
$this->storage_array[] = $entity; $this->storage_array[] = $entity;
} }

View File

@ -147,6 +147,7 @@ class PurchaseOrderItemExport extends BaseExport
$transformed_items = array_merge($transformed_purchase_order, $item_array); $transformed_items = array_merge($transformed_purchase_order, $item_array);
$entity = $this->decorateAdvancedFields($purchase_order, $transformed_items); $entity = $this->decorateAdvancedFields($purchase_order, $transformed_items);
$entity = array_merge(array_flip(array_values($this->input['report_keys'])), $entity);
$this->storage_array[] = $entity; $this->storage_array[] = $entity;
} }

View File

@ -152,6 +152,7 @@ class QuoteItemExport extends BaseExport
$transformed_items = array_merge($transformed_quote, $item_array); $transformed_items = array_merge($transformed_quote, $item_array);
$entity = $this->decorateAdvancedFields($quote, $transformed_items); $entity = $this->decorateAdvancedFields($quote, $transformed_items);
$entity = array_merge(array_flip(array_values($this->input['report_keys'])), $entity);
$this->storage_array[] = $entity; $this->storage_array[] = $entity;
} }