From 3cba7c6a9c1a9df84bf5289c5a5815fe5eab2261 Mon Sep 17 00:00:00 2001
From: peng <peng.com>
Date: 星期四, 24 七月 2025 17:46:30 +0800
Subject: [PATCH] 修改视频推荐和礼品图片显示

---
 manager-api/src/main/java/cn/lili/controller/goods/GoodsManagerController.java |    9 ++++++++-
 framework/src/main/resources/mapper/lmk/VideoMapper.xml                        |   34 ++++++++++++++++++++++++++++++++++
 framework/src/main/java/cn/lili/modules/lmk/service/impl/VideoServiceImpl.java |    7 +++++++
 framework/src/main/java/cn/lili/modules/lmk/mapper/VideoMapper.java            |    2 ++
 4 files changed, 51 insertions(+), 1 deletions(-)

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 e3d5481..829acb3 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
@@ -47,6 +47,8 @@
      */
     IPage recommendVideo(IPage page, @Param("query") VideoQuery query);
 
+    List<WxVideoVO> recommendVideoList(@Param("query") VideoQuery query);
+
     IPage recommendHealthVideo(IPage page, @Param("query") WxHealthVideoQuery query);
 
 
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 da35abc..04a8b16 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
@@ -4,6 +4,7 @@
 import cn.lili.cache.CachePrefix;
 import cn.lili.common.properties.RocketmqCustomProperties;
 import cn.lili.common.security.context.UserContext;
+import cn.lili.common.utils.CommonUtil;
 import cn.lili.elasticsearch.EsSuffix;
 import cn.lili.modules.lmk.constant.RedisKeyExpireConstant;
 import cn.lili.modules.lmk.domain.dto.VideoEsUpdateDTO;
@@ -46,6 +47,7 @@
 import org.springframework.data.elasticsearch.core.SearchHits;
 import org.springframework.data.elasticsearch.core.query.NativeSearchQuery;
 import org.springframework.data.elasticsearch.core.query.NativeSearchQueryBuilder;
+import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.stereotype.Service;
 import lombok.RequiredArgsConstructor;
 import cn.lili.utils.PageUtil;
@@ -54,6 +56,8 @@
 import org.springframework.util.Assert;
 
 import java.util.*;
+import java.util.concurrent.TimeUnit;
+import java.util.function.Function;
 import java.util.stream.Collectors;
 
 /**
@@ -547,6 +551,9 @@
         switch (query.getVideoFrom()) {
             case "recommend":// 鍔犺浇鎺ㄨ崘瑙嗛
                 baseMapper.recommendVideo(page, query);
+                //鎺ㄨ崘瑙嗛閲嶆柊鎺掑簭
+                List<WxVideoVO> records = page.getRecords();
+                Collections.shuffle(records);
                 break;
             case "author":  // 鍔犺浇瑙嗛涓婚〉鎴戝彂甯冪殑瑙嗛
                 AuthorVideoQuery query1 = new AuthorVideoQuery();
diff --git a/framework/src/main/resources/mapper/lmk/VideoMapper.xml b/framework/src/main/resources/mapper/lmk/VideoMapper.xml
index ca87dfc..77fe601 100644
--- a/framework/src/main/resources/mapper/lmk/VideoMapper.xml
+++ b/framework/src/main/resources/mapper/lmk/VideoMapper.xml
@@ -267,6 +267,40 @@
         ORDER BY
             LV.create_time DESC
     </select>
+    <select id="recommendVideoList" resultMap="WxResultMap">
+        SELECT
+            LV.author_id,
+            LV.cover_url,
+            LV.video_fit,
+            LV.video_duration,
+            LV.video_file_key,
+            LV.title,
+            LV.goods_view_num,
+            LV.goods_order_num,
+            LV.recommend,
+            LV.status,
+            LV.play_num,
+            LV.comment_num,
+            LV.collect_num,
+            LV.thumbs_up_num,
+            LV.weight,
+            LV.audit_pass_time,
+            LV.update_time,
+            LV.create_time,
+            LV.video_content_type,
+            LV.video_type,
+            LV.video_imgs,
+            LV.id,
+            LM.nick_name as authorName,
+            LM.face as authorAvatar
+        FROM
+            lmk_video LV
+            LEFT JOIN li_member LM ON LV.author_id = LM.id
+        WHERE
+            LV.delete_flag = 0 AND LV.status = '1' AND LV.video_type = #{query.videoType}
+        ORDER BY
+            LV.create_time DESC
+    </select>
 
     <select id="goodsSimilarlyPage" resultMap="WxResultMap">
         SELECT
diff --git a/manager-api/src/main/java/cn/lili/controller/goods/GoodsManagerController.java b/manager-api/src/main/java/cn/lili/controller/goods/GoodsManagerController.java
index b252dab..9271290 100644
--- a/manager-api/src/main/java/cn/lili/controller/goods/GoodsManagerController.java
+++ b/manager-api/src/main/java/cn/lili/controller/goods/GoodsManagerController.java
@@ -63,7 +63,14 @@
     @ApiOperation(value = "鍒嗛〉鑾峰彇鍟嗗搧鍒楄〃")
     @GetMapping(value = "/sku/list")
     public ResultMessage<IPage<GoodsSku>> getSkuByPage(GoodsSearchParams goodsSearchParams) {
-        return ResultUtil.data(goodsSkuService.getGoodsSkuByPage(goodsSearchParams));
+        IPage<GoodsSku> goodsSkuByPage = goodsSkuService.getGoodsSkuByPage(goodsSearchParams);
+        goodsSkuByPage.getRecords().forEach(goodsSku -> {
+            String thumbnail = goodsSku.getThumbnail();
+            if (StringUtils.isNotBlank(thumbnail)&&!thumbnail.contains("http")) {
+                goodsSku.setThumbnail(cosUtil.getPreviewUrl(goodsSku.getThumbnail()));
+            }
+        });
+        return ResultUtil.data(goodsSkuByPage);
     }
 
     @ApiOperation(value = "鍒嗛〉鑾峰彇寰呭鏍稿晢鍝�")

--
Gitblit v1.8.0