Browse Source

app-mall/group-buy/goods-landing 增加返回商品详情图文

shizhongqi 14 hours ago
parent
commit
44be1fb9a5
1 changed files with 15 additions and 1 deletions
  1. 15 1
      app-mall/controllers/GroupBuyController.php

+ 15 - 1
app-mall/controllers/GroupBuyController.php

@@ -10,6 +10,7 @@ use bizHd\groupBuy\classes\GroupBuyMemberClass;
 use bizHd\order\services\OrderService;
 use bizHd\shop\classes\ShopClass;
 use bizMall\hd\classes\HdClass;
+use bizMall\pictext\classes\PicTextGoodsClass;
 use common\components\business;
 use common\components\dict;
 use common\components\orderSn;
@@ -31,8 +32,9 @@ class GroupBuyController extends BaseController
     ];
 
     /**
-     * 团购商品落地页:活动商品信息 + 当前最快成团开放团
+     * 团购商品落地页:活动商品信息 + 商品详情图文 + 当前最快成团开放团
      * GET goodsId
+     * 返回字段与商品详情页对齐:picTextGoods(标题/content JSON)供前端 rich-media-viewer 渲染
      */
     public function actionGoodsLanding()
     {
@@ -55,7 +57,9 @@ class GroupBuyController extends BaseController
             $formatted = business::formatUploadImg($cover);
             $coverUrl = $formatted['url'] ?? $cover;
         }
+        // 轮播图兜底:保留商品图集;详情正文以 picTextGoods 为准(与 GoodsController::actionDetail 一致)
         $detailImages = [];
+        $picTextGoods = [];
         if (!empty($goods)) {
             $pics = $goods->detail ?? ($goods->pic ?? '');
             if (is_string($pics) && $pics !== '') {
@@ -73,6 +77,15 @@ class GroupBuyController extends BaseController
                     }
                 }
             }
+            // 规格商品详情图文挂在主商品上,与商品详情接口取值规则一致
+            $picTextGoodsId = empty($goods->masterId) ? $goodsId : intval($goods->masterId);
+            $picTextRow = PicTextGoodsClass::getByCondition([
+                'mainId' => $mainId,
+                'goodsId' => $picTextGoodsId,
+            ], true);
+            if (!empty($picTextRow)) {
+                $picTextGoods = $picTextRow;
+            }
         }
         $openGroup = GroupBuyClass::getHottestOpenGroup(
             $mainId,
@@ -101,6 +114,7 @@ class GroupBuyController extends BaseController
             'desc' => strval($row['desc']),
             'showCountdown' => intval($row['showCountdown']),
             'detailImages' => $detailImages,
+            'picTextGoods' => $picTextGoods,
             'openGroup' => $openGroup,
         ]);
     }