From 7e9972d25b3d035201331d401c8e1a74d8f2d8e8 Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期二, 12 八月 2025 17:11:23 +0800
Subject: [PATCH] 分享适配

---
 framework/src/main/java/cn/lili/modules/lmk/service/impl/LmkFileServiceImpl.java |   26 ++++++++++++++++++++++++++
 1 files changed, 26 insertions(+), 0 deletions(-)

diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/impl/LmkFileServiceImpl.java b/framework/src/main/java/cn/lili/modules/lmk/service/impl/LmkFileServiceImpl.java
index 4076c84..8b2c67e 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/service/impl/LmkFileServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/service/impl/LmkFileServiceImpl.java
@@ -2,11 +2,14 @@
 
 import cn.lili.base.Result;
 import cn.lili.common.exception.ServiceException;
+import cn.lili.common.utils.StringUtils;
 import cn.lili.cos.CosSTS;
 import cn.lili.modules.lmk.domain.entity.LmkFile;
+import cn.lili.modules.lmk.domain.entity.Video;
 import cn.lili.modules.lmk.domain.form.FileInfoForm;
 import cn.lili.modules.lmk.domain.vo.LmkFileVO;
 import cn.lili.modules.lmk.mapper.LmkFileMapper;
+import cn.lili.modules.lmk.mapper.VideoMapper;
 import cn.lili.modules.lmk.service.LmkFileService;
 import cn.lili.utils.COSUtil;
 import cn.lili.utils.FileUtil;
@@ -35,6 +38,29 @@
     private final LmkFileMapper lmkFileMapper;
     private final COSUtil cosUtil;
 
+    private final VideoMapper videoMapper;
+    @Override
+    public Result generateVideoCoverUrl(String videoId, Long snapshotTime, Integer width, Integer height){
+        Video video = videoMapper.selectById(videoId);
+        if (video != null){
+            if (StringUtils.isNotBlank(video.getCoverUrl())){
+                return Result.ok().data(cosUtil.getPreviewUrl(video.getCoverUrl()));
+            }
+            //鑾峰緱videoKey
+            try {
+                System.out.println(video.getVideoFileKey());
+                MultipartFile file =cosUtil.captureVideoCoverAsMultipart(cosUtil.getPreviewUrl(video.getVideoFileKey()), width, height);
+                LmkFileVO fileVo = (LmkFileVO) this.uploadObject(file).get("data");
+                video.setCoverUrl(fileVo.getFileKey());
+                videoMapper.updateById(video);
+                return Result.ok().data(fileVo.getUrl());
+            } catch (Exception e) {
+                throw new RuntimeException(e);
+            }
+
+        }
+        return Result.ok();
+    }
 
     @Override
     public Result uploadObject(MultipartFile file) {

--
Gitblit v1.8.0