From 6c4ac570da2887b09256ea25dd3055bdf93d31c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E5=BB=BA=E7=82=8A?= <924182103@qq.com> Date: Thu, 14 Nov 2024 10:33:52 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=93=E5=AD=98=E7=9B=98=E7=82=B9=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/Goods/GoodsSkusController.php | 4 ++-- app/Services/GoodSku/GoodSkuService.php | 7 +++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/app/Http/Controllers/Goods/GoodsSkusController.php b/app/Http/Controllers/Goods/GoodsSkusController.php index 3c7bf4e..ce330dc 100644 --- a/app/Http/Controllers/Goods/GoodsSkusController.php +++ b/app/Http/Controllers/Goods/GoodsSkusController.php @@ -83,7 +83,8 @@ class GoodsSkusController extends Controller $id = $businessOrderItem['goods_sku']['id']; if ($businessOrderItem['goods_sku']['is_combination']) { foreach ($businessOrderItem['goods_sku']['combination_goods'] ?? [] as $combinationGoods) { - $ids[$combinationGoods['item_id']] = $ids[$combinationGoods['item_id']] ?? 0 + + $ids[$combinationGoods['item_id']] = ($ids[$combinationGoods['item_id']] ?? 0) + ((int)$businessOrderItem['number']) * $combinationGoods['item_num']; $externals[$combinationGoods['item_id']][] = $businessOrderItem; } @@ -97,7 +98,6 @@ class GoodsSkusController extends Controller $externals[$id][] = $businessOrderItem; } - $builder = GoodsSku::query(); $this->preparQueryGoodsSkus($request, $builder); $day = DateTimeUtils::getToday(); diff --git a/app/Services/GoodSku/GoodSkuService.php b/app/Services/GoodSku/GoodSkuService.php index 0448c14..301bef6 100644 --- a/app/Services/GoodSku/GoodSkuService.php +++ b/app/Services/GoodSku/GoodSkuService.php @@ -101,9 +101,11 @@ class GoodSkuService public function handleSkusWithCombinationGoods(array $skusWithCombinationGoods) { //查询sku当前未发货的数量 需要扣减 - $externalSkuIds = collect($skusWithCombinationGoods)->pluck("external_sku_id")->toArray(); + //$externalSkuIds = collect($skusWithCombinationGoods)->pluck("external_sku_id")->toArray(); //默认只查15天内未发货的数据 - $startTime = Carbon::now()->subDays(15)->startOfDay()->toDateTimeString(); + $unshippedData = []; + //发货状态异常 先关闭扣减 + /*$startTime = Carbon::now()->subDays(15)->startOfDay()->toDateTimeString(); $unshippedDataCollect = BusinessOrderItem::query() ->leftJoin("business_orders as b", "business_order_id", "=", "b.id") ->select("external_sku_id", DB::raw("sum(goods_number) as goods_total"), DB::raw("sum(already_cancel_number) as cancel_total")) @@ -112,6 +114,7 @@ class GoodSkuService ->groupBy('external_sku_id')->get()->toArray(); $unshippedData = collect($unshippedDataCollect)->pluck(null, "external_sku_id")->toArray(); Log::info("15日内未发货数据", $unshippedData); + */ return collect($skusWithCombinationGoods)->map(function ($v) use ($unshippedData) { $v['real_stock'] = $v['inventory'] ?? null; if (!empty($unshippedData[$v['external_sku_id']]) && isset($v['inventory'])) {