From 07806c44fcff6591169132e261cc07c17485abcc Mon Sep 17 00:00:00 2001 From: imanghafoori Date: Wed, 3 Apr 2019 18:09:13 +0330 Subject: [PATCH] flatten code --- .../OrderItemInventoryRepository.php | 74 ++++++++++--------- .../src/Repositories/OrderItemRepository.php | 4 +- 2 files changed, 40 insertions(+), 38 deletions(-) diff --git a/packages/Webkul/Sales/src/Repositories/OrderItemInventoryRepository.php b/packages/Webkul/Sales/src/Repositories/OrderItemInventoryRepository.php index e7739dd6b..181f0b1b6 100755 --- a/packages/Webkul/Sales/src/Repositories/OrderItemInventoryRepository.php +++ b/packages/Webkul/Sales/src/Repositories/OrderItemInventoryRepository.php @@ -37,42 +37,44 @@ class OrderItemInventoryRepository extends Repository $product = $orderItem->type == 'configurable' ? $orderItem->child->product : $orderItem->product; - if ($product) { - $inventories = $product->inventory_sources()->orderBy('priority', 'asc')->get(); - - foreach ($inventories as $inventorySource) { - if (! $orderedQuantity) - break; - - $sourceQuantity = $inventorySource->pivot->qty; - - if (! $inventorySource->status || !$sourceQuantity) - continue; - - if ($sourceQuantity >= $orderedQuantity) { - $orderItemQuantity = $orderedQuantity; - - $sourceQuantity -= $orderItemQuantity; - - $orderedQuantity = 0; - } else { - $orderItemQuantity = $sourceQuantity; - - $sourceQuantity = 0; - - $orderedQuantity -= $orderItemQuantity; - } - - $this->model->create([ - 'qty' => $orderItemQuantity, - 'order_item_id' => $orderItem->id, - 'inventory_source_id' => $inventorySource->id, - ]); - - $inventorySource->pivot->update([ - 'qty' => $sourceQuantity - ]); - } + if (!$product) { + return ; } + $inventories = $product->inventory_sources()->orderBy('priority', 'asc')->get(); + + foreach ($inventories as $inventorySource) { + if (! $orderedQuantity) + break; + + $sourceQuantity = $inventorySource->pivot->qty; + + if (! $inventorySource->status || !$sourceQuantity) + continue; + + if ($sourceQuantity >= $orderedQuantity) { + $orderItemQuantity = $orderedQuantity; + + $sourceQuantity -= $orderItemQuantity; + + $orderedQuantity = 0; + } else { + $orderItemQuantity = $sourceQuantity; + + $sourceQuantity = 0; + + $orderedQuantity -= $orderItemQuantity; + } + + $this->model->create([ + 'qty' => $orderItemQuantity, + 'order_item_id' => $orderItem->id, + 'inventory_source_id' => $inventorySource->id, + ]); + + $inventorySource->pivot->update([ + 'qty' => $sourceQuantity + ]); + } + } } \ No newline at end of file diff --git a/packages/Webkul/Sales/src/Repositories/OrderItemRepository.php b/packages/Webkul/Sales/src/Repositories/OrderItemRepository.php index 88a5946af..5917a4e4b 100755 --- a/packages/Webkul/Sales/src/Repositories/OrderItemRepository.php +++ b/packages/Webkul/Sales/src/Repositories/OrderItemRepository.php @@ -89,9 +89,9 @@ class OrderItemRepository extends Repository $product = $orderItem->type == 'configurable' ? $orderItem->child->product : $orderItem->product; - if (! $product) { + if (! $product) return; - } + $orderedInventory = $product->ordered_inventories() ->where('channel_id', $orderItem->order->channel->id)