Browse Source

【功能修复】拼团:未开启拼团的 SKU 需要禁用选择

YunaiV 1 year ago
parent
commit
5feab41b3d
2 changed files with 15 additions and 2 deletions
  1. 13 1
      pages/goods/groupon.vue
  2. 2 1
      pages/goods/seckill.vue

+ 13 - 1
pages/goods/groupon.vue

@@ -199,6 +199,7 @@
 
   /**
    * 去参团
+   *
    * @param record 团长的团购记录
    */
   function onJoinGroupon(record) {
@@ -227,7 +228,6 @@
   }
 
   // 分享信息
-  // TODO @芋艿:分享的接入
   const shareInfo = computed(() => {
     if (isEmpty(state.activity)) return {};
     return sheep.$platform.share.getShareInfo(
@@ -262,9 +262,21 @@
     // 加载商品信息
     const { data: spu } = await SpuApi.getSpuDetail(activity.spuId);
     state.goodsId = spu.id;
+    // 默认显示最低价
     activity.products.forEach((product) => {
       spu.price = Math.min(spu.price, product.combinationPrice); // 设置 SPU 的最低价格
     });
+    // 价格、库存使用活动的
+    spu.skus.forEach((sku) => {
+      const product = activity.products.find((product) => product.skuId === sku.id);
+      if (product) {
+        sku.price = product.combinationPrice;
+      } else {
+        // 找不到可能是没配置,则不能发起秒杀
+        sku.stock = 0;
+      }
+    });
+
     // 关闭骨架屏
     state.skeletonLoading = false;
     if (code === 0) {

+ 2 - 1
pages/goods/seckill.vue

@@ -220,6 +220,7 @@
 
   const activity = ref();
   const timeStatusEnum = ref('');
+
   // 查询活动
   const getActivity = async (id) => {
     const { data } = await SeckillApi.getSeckillActivity(id);
@@ -230,9 +231,9 @@
     await getSpu(data.spuId);
   };
 
+  // 查询商品
   const getSpu = async (id) => {
     const { data } = await SpuApi.getSpuDetail(id);
-    // 模拟
     data.activity_type = 'seckill';
     state.goodsInfo = data;
     // 处理轮播图