From cc1bab39263e90069ccef7139f71b2a4061780d1 Mon Sep 17 00:00:00 2001
From: xiangpei <xiangpei@timesnew.cn>
Date: 星期一, 16 六月 2025 15:29:03 +0800
Subject: [PATCH] 刷视频悬挂商品展示、点击视频商品展示

---
 framework/src/main/java/cn/lili/modules/lmk/domain/vo/WxVideoVO.java           |    2 +-
 framework/src/main/resources/mapper/lmk/VideoMapper.xml                        |    5 ++---
 buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java            |    6 ++++++
 framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java          |    7 +++++++
 framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java |    7 ++++++-
 framework/src/main/java/cn/lili/modules/lmk/mapper/VideoMapper.java            |   13 +++++++++----
 6 files changed, 31 insertions(+), 9 deletions(-)

diff --git a/buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java b/buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java
index a1fba30..dec98a3 100644
--- a/buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java
+++ b/buyer-api/src/main/java/cn/lili/controller/lmk/VideoController.java
@@ -68,6 +68,12 @@
         return videoService.recommendVideo(query);
     }
 
+    @GetMapping("/goods/detail/{videoId}")
+    @ApiOperation(value = "瑙嗛鍟嗗搧鏌ョ湅", notes = "瑙嗛鍟嗗搧鏌ョ湅")
+    public Result getGoodsDetail(@PathVariable("videoId") String videoId) {
+        return videoService.getGoodsDetail(videoId);
+    }
+
     @PostMapping("/view/record")
     @ApiOperation(value = "淇濆瓨瑙傜湅璁板綍", notes = "淇濆瓨瑙傜湅璁板綍")
     public Result saveViewRecord(@RequestBody VideoFootPrintForm form) {
diff --git a/framework/src/main/java/cn/lili/modules/lmk/domain/vo/WxVideoVO.java b/framework/src/main/java/cn/lili/modules/lmk/domain/vo/WxVideoVO.java
index 179415f..d324ee0 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/domain/vo/WxVideoVO.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/domain/vo/WxVideoVO.java
@@ -73,7 +73,7 @@
 
     /** 鍟嗗搧淇℃伅 */
     @ApiModelProperty("鍟嗗搧淇℃伅")
-    private VideoGoodsVO goods;
+    private List<VideoGoodsDetailVO> goodsList;
 
     @ApiModelProperty("褰撳墠鐢ㄦ埛鏄惁鏀惰棌浜嗚瑙嗛")
     private Boolean collected = Boolean.FALSE;
diff --git a/framework/src/main/java/cn/lili/modules/lmk/mapper/VideoMapper.java b/framework/src/main/java/cn/lili/modules/lmk/mapper/VideoMapper.java
index 263072f..988a2c4 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/mapper/VideoMapper.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/mapper/VideoMapper.java
@@ -2,10 +2,7 @@
 
 import cn.lili.modules.lmk.domain.entity.Video;
 import cn.lili.modules.lmk.domain.query.*;
-import cn.lili.modules.lmk.domain.vo.CollectTypeNumVO;
-import cn.lili.modules.lmk.domain.vo.VideoAccountVO;
-import cn.lili.modules.lmk.domain.vo.VideoVO;
-import cn.lili.modules.lmk.domain.vo.WxEditVideoVO;
+import cn.lili.modules.lmk.domain.vo.*;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Mapper;
@@ -120,4 +117,12 @@
     IPage healthPage(IPage page, @Param("query") HealthVideoQuery query);
 
     IPage kitchenPage(IPage page, @Param("query") KitchenVideoQuery query);
+
+    /**
+     * 鑾峰彇瑙嗛鎮寕鍟嗗搧
+     *
+     * @param videoId
+     * @return
+     */
+    List<VideoGoodsDetailVO> getVideoGoods(@Param("id") String videoId);
 }
diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java b/framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java
index 6492e48..73fe761 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/service/VideoService.java
@@ -228,4 +228,11 @@
 
     Result delKitchen(String id);
 
+    /**
+     * 瑙嗛鍟嗗搧鏌ョ湅
+     *
+     * @param videoId
+     * @return
+     */
+    Result getGoodsDetail(String videoId);
 }
diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java b/framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java
index 9132498..7e79858 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java
@@ -314,7 +314,6 @@
             List<String> subscribes = mySubscribeService.getSubscribesByUserId(UserContext.getCurrentUserId());
             // 3. 鑾峰彇瑙嗛涓存椂璁块棶鍦板潃銆佽缃棰戞爣绛俱�佹垜鏄惁鏀惰棌銆佷綔鑰呮槸鍚﹀叧娉�
             page.getRecords().forEach(v -> {
-                v.setGoods(new VideoGoodsVO());
                 v.setTagList(tagMap.get(v.getId()));
                 v.setCollected(CollectionUtils.isNotEmpty(collectMap.get(v.getId())));
                 if (VideoContentTypeEnum.VIDEO.getValue().equals(v.getVideoContentType())) {
@@ -404,6 +403,12 @@
     }
 
     @Override
+    public Result getGoodsDetail(String videoId) {
+        List<VideoGoodsDetailVO> goodsList = baseMapper.getVideoGoods(videoId);
+        return Result.ok().data(goodsList);
+    }
+
+    @Override
     @Transactional(rollbackFor = Exception.class)
     public Result homePageInfoEdit(VideoHomePageInfoForm form) {
         new LambdaUpdateChainWrapper<>(memberService.getBaseMapper())
diff --git a/framework/src/main/resources/mapper/lmk/VideoMapper.xml b/framework/src/main/resources/mapper/lmk/VideoMapper.xml
index d51fd28..8981055 100644
--- a/framework/src/main/resources/mapper/lmk/VideoMapper.xml
+++ b/framework/src/main/resources/mapper/lmk/VideoMapper.xml
@@ -23,9 +23,7 @@
         <result column="video_content_type" property="videoContentType" />
         <result column="video_type" property="videoType" />
         <result column="video_imgs" property="videoImgs" />
-        <collection property="goodsList" column="id" select="getVideoGoods" ofType="cn.lili.modules.lmk.domain.vo.VideoGoodsDetailVO">
-
-        </collection>
+        <collection property="goodsList" column="id" select="getVideoGoods" ofType="cn.lili.modules.lmk.domain.vo.VideoGoodsDetailVO"/>
     </resultMap>
 
     <resultMap id="VideoGoodsMap" type="cn.lili.modules.lmk.domain.vo.VideoGoodsDetailVO">
@@ -94,6 +92,7 @@
         <result column="video_content_type" property="videoContentType" />
         <result column="video_type" property="videoType" />
         <result column="video_imgs" property="videoImgs" />
+        <collection property="goodsList" column="id" select="getVideoGoods" ofType="cn.lili.modules.lmk.domain.vo.VideoGoodsDetailVO"/>
     </resultMap>
 
 

--
Gitblit v1.8.0