|
@@ -19,11 +19,13 @@ import com.fdkankan.fusion.service.ICaseVideoFolderService;
|
|
|
import com.fdkankan.fusion.service.ICaseVideoService;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.fdkankan.redis.util.RedisUtil;
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
+import java.io.File;
|
|
|
import java.io.IOException;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.LinkedHashSet;
|
|
@@ -79,15 +81,22 @@ public class CaseVideoServiceImpl extends ServiceImpl<ICaseVideoMapper, CaseVide
|
|
|
if(videoFolder == null){
|
|
|
throw new BusinessException(ResultCode.FOLDER_NOT_EXIST);
|
|
|
}
|
|
|
- uploadService.deleteOssUrl(videoFolder.getVideoMergeUrl());
|
|
|
- uploadService.deleteOssUrl(videoFolder.getVideoFolderCover());
|
|
|
+ String mergeVideoUrl = null;
|
|
|
+ if(StringUtils.isNotBlank(videoFolder.getVideoMergeUrl())){
|
|
|
+ uploadService.deleteOssUrl(videoFolder.getVideoMergeUrl());
|
|
|
+ mergeVideoUrl = videoFolder.getVideoMergeUrl().replace(queryPath,"/home/");
|
|
|
+ uploadToOssUtil.downFormAli(videoFolder.getVideoMergeUrl(),mergeVideoUrl);
|
|
|
+ }
|
|
|
+ if(StringUtils.isNotBlank(videoFolder.getVideoMergeUrl())){
|
|
|
+ uploadService.deleteOssUrl(videoFolder.getVideoFolderCover());
|
|
|
+ }
|
|
|
this.deleteByFolderId(folderId);
|
|
|
redisUtil.set(RedisKeyUtil.mergerVideoKey+videoFolder.getVideoFolderId(),"10");
|
|
|
- runThread(files,videoFolder,this);
|
|
|
+ runThread(mergeVideoUrl,files,videoFolder,this);
|
|
|
return videoFolder;
|
|
|
}
|
|
|
|
|
|
- private void runThread(MultipartFile[] files,CaseVideoFolder videoFolder,ICaseVideoService caseVideoService){
|
|
|
+ private void runThread(String mergeVideoUrl,MultipartFile[] files,CaseVideoFolder videoFolder,ICaseVideoService caseVideoService){
|
|
|
new Runnable() {
|
|
|
@Override
|
|
|
public void run() {
|
|
@@ -121,7 +130,9 @@ public class CaseVideoServiceImpl extends ServiceImpl<ICaseVideoMapper, CaseVide
|
|
|
return;
|
|
|
}
|
|
|
redisUtil.set(RedisKeyUtil.mergerVideoKey+videoFolder.getVideoFolderId(),"20");
|
|
|
-
|
|
|
+ if(StringUtils.isNotBlank(mergeVideoUrl)){
|
|
|
+ filePathSet.add(mergeVideoUrl);
|
|
|
+ }
|
|
|
String mergeLocalName = VideoUtil.mergeVideo(filePathSet, FilePath.VIDEO_LOCAL_PATH);
|
|
|
redisUtil.set(RedisKeyUtil.mergerVideoKey+videoFolder.getVideoFolderId(),"30");
|
|
|
if(mergeLocalName == null){
|