a订单导出

This commit is contained in:
杨建炊 2024-11-06 16:13:23 +08:00
parent f946d6c65b
commit 46f32294b8
2 changed files with 9 additions and 24 deletions

View File

@ -77,22 +77,14 @@ class GoodsCombinationController extends Controller
->where('is_combination', 1)
->filter();
if ($sortField == "order_goods_num") {
$builder = GoodsSku::query();
$goodsSkus = (clone $builder)->filter()
->where('is_combination', 1)
->orderByDesc('id')
->pluck('stock', 'id')
->toArray();
$finalIds = [];
asort($ids);
foreach ($ids as $id => $number) {
if (isset($goodsSkus[$id])) {
$finalIds[] = $id;
unset($goodsSkus[$id]);
}
$finalIds[] = $id;
}
$finalIds = array_merge($finalIds, array_keys($goodsSkus));
$idField = implode(',', $finalIds);
$goodsSkusBuilder->orderByRaw("FIELD({$idField},id) {$sortValue}");
$goodsSkusBuilder->orderByRaw("FIELD(id,{$idField}) {$sortValue}");
} else {
$goodsSkusBuilder->orderBy($sortField, $sortValue);
}

View File

@ -96,7 +96,7 @@ class GoodsSkusController extends Controller
$externals[$id][] = $businessOrderItem;
}
arsort($ids);
$builder = GoodsSku::query();
$this->preparQueryGoodsSkus($request, $builder);
@ -114,21 +114,14 @@ class GoodsSkusController extends Controller
}])
->where('is_combination', 0);
if ($sortField == "order_goods_num") {
$goodsSkus = (clone $builder)->filter()
->where('is_combination', 0)
->orderByDesc('id')
->pluck('stock', 'id')
->toArray();
$finalIds = [];
asort($ids);
foreach ($ids as $id => $number) {
if (isset($goodsSkus[$id])) {
$finalIds[] = $id;
unset($goodsSkus[$id]);
}
$finalIds[] = $id;
}
$finalIds = array_merge($finalIds, array_keys($goodsSkus));
$idField = implode(',', $finalIds);
$goodsSkusBuilder->orderByRaw("FIELD({$idField},id) {$sortValue}");
$goodsSkusBuilder->orderByRaw("FIELD(id,{$idField}) {$sortValue}");
} else {
$goodsSkusBuilder->orderBy($sortField, $sortValue);
}