|
@@ -872,6 +872,10 @@ class GoodsLogic
|
|
|
|
|
|
|
|
if (!empty($updateData)) {
|
|
if (!empty($updateData)) {
|
|
|
GoodsItem::where('id', $item['item_id'])->update($updateData);
|
|
GoodsItem::where('id', $item['item_id'])->update($updateData);
|
|
|
|
|
+
|
|
|
|
|
+ // 更新商品的最小最大价格
|
|
|
|
|
+ $this->updateGoodsMinMaxPrice($item['goods_id']);
|
|
|
|
|
+
|
|
|
$successCount++;
|
|
$successCount++;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -976,6 +980,10 @@ class GoodsLogic
|
|
|
// 如果有数据需要更新
|
|
// 如果有数据需要更新
|
|
|
if (!empty($updateData)) {
|
|
if (!empty($updateData)) {
|
|
|
\app\common\model\GoodsItem::where('id', $itemId)->update($updateData);
|
|
\app\common\model\GoodsItem::where('id', $itemId)->update($updateData);
|
|
|
|
|
+
|
|
|
|
|
+ // 更新商品的最小最大价格
|
|
|
|
|
+ $this->updateGoodsMinMaxPrice($goodsId);
|
|
|
|
|
+
|
|
|
$successCount++;
|
|
$successCount++;
|
|
|
} else {
|
|
} else {
|
|
|
$errorMessages[] = "第" . ($index + 2) . "行:没有需要更新的价格信息";
|
|
$errorMessages[] = "第" . ($index + 2) . "行:没有需要更新的价格信息";
|
|
@@ -1009,5 +1017,31 @@ class GoodsLogic
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
|
+ * @notes 更新商品的最小最大价格
|
|
|
|
|
+ * @param int $goodsId 商品ID
|
|
|
|
|
+ * @return void
|
|
|
|
|
+ * @author
|
|
|
|
|
+ * @date 2024/01/01 00:00
|
|
|
|
|
+ */
|
|
|
|
|
+ private function updateGoodsMinMaxPrice($goodsId)
|
|
|
|
|
+ {
|
|
|
|
|
+ // 获取该商品所有规格的销售价格
|
|
|
|
|
+ $priceData = \app\common\model\GoodsItem::where('goods_id', $goodsId)
|
|
|
|
|
+ ->where('sell_price', '>', 0)
|
|
|
|
|
+ ->column('sell_price');
|
|
|
|
|
+
|
|
|
|
|
+ if (!empty($priceData)) {
|
|
|
|
|
+ $minPrice = min($priceData);
|
|
|
|
|
+ $maxPrice = max($priceData);
|
|
|
|
|
+
|
|
|
|
|
+ // 更新商品表的最小最大价格
|
|
|
|
|
+ \app\common\model\Goods::where('id', $goodsId)->update([
|
|
|
|
|
+ 'min_price' => $minPrice,
|
|
|
|
|
+ 'max_price' => $maxPrice
|
|
|
|
|
+ ]);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
|
|
|
}
|
|
}
|