mirror of
https://gitee.com/hzchunfen/erp.git
synced 2025-12-01 14:40:44 +00:00
commit
e3bea34a1b
@ -66,20 +66,30 @@ class GoodsSkusController extends Controller
|
|||||||
foreach ($goodsSkus as &$sku) {
|
foreach ($goodsSkus as &$sku) {
|
||||||
$externalSkuId = $sku['goods']['goods_code'] . '_' . $sku['sku_code'];
|
$externalSkuId = $sku['goods']['goods_code'] . '_' . $sku['sku_code'];
|
||||||
$lastInventoryTime = $sku['daily']['inventory_time'];
|
$lastInventoryTime = $sku['daily']['inventory_time'];
|
||||||
$addOrderGoodsNum = BusinessOrderItem::query()
|
$fields = implode(',', [
|
||||||
|
'shop_id',
|
||||||
|
'external_sku_id',
|
||||||
|
'sum(goods_number) as number',
|
||||||
|
'sum(already_cancel_number) as cancel_number',
|
||||||
|
]);
|
||||||
|
$orderDetail = BusinessOrderItem::query()
|
||||||
|
->select(DB::raw($fields))
|
||||||
->where('external_sku_id', $externalSkuId)
|
->where('external_sku_id', $externalSkuId)
|
||||||
->when($lastInventoryTime, function ($query) use ($lastInventoryTime) {
|
->when($lastInventoryTime, function ($query) use ($lastInventoryTime) {
|
||||||
$query->where('updated_at', '>', $lastInventoryTime);
|
$query->where('updated_at', '>', $lastInventoryTime);
|
||||||
})
|
})
|
||||||
->sum('goods_number');
|
->groupBy(['shop_id', 'external_sku_id'])
|
||||||
$reduceOrderGoodsNum = BusinessOrderItem::query()
|
->with(['shop:id,name'])
|
||||||
->where('external_sku_id', $externalSkuId)
|
->get();
|
||||||
->when($lastInventoryTime, function ($query) use ($lastInventoryTime) {
|
$addOrderGoodsNum = $reduceOrderGoodsNum = 0;
|
||||||
$query->where('updated_at', '>', $lastInventoryTime);
|
if ($orderDetail) {
|
||||||
})
|
$orderDetail = $orderDetail->toArray();
|
||||||
->sum('already_cancel_number');
|
$addOrderGoodsNum = array_sum(array_column($orderDetail, 'number'));
|
||||||
|
$reduceOrderGoodsNum = array_sum(array_column($orderDetail, 'cancel_number'));
|
||||||
|
}
|
||||||
$sku['inventory_time'] = $lastInventoryTime;
|
$sku['inventory_time'] = $lastInventoryTime;
|
||||||
$sku['order_goods_num'] = $addOrderGoodsNum - $reduceOrderGoodsNum;
|
$sku['order_goods_num'] = $addOrderGoodsNum - $reduceOrderGoodsNum;
|
||||||
|
$sku['order_detail'] = $orderDetail;
|
||||||
}
|
}
|
||||||
|
|
||||||
return GoodsSkuResource::collection($goodsSkus);
|
return GoodsSkuResource::collection($goodsSkus);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user