|
@@ -1,8 +1,6 @@
|
|
|
package com.taais.biz.service.impl;
|
|
|
|
|
|
import java.io.File;
|
|
|
-import java.nio.file.Path;
|
|
|
-import java.nio.file.Paths;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.List;
|
|
@@ -31,7 +29,6 @@ import com.taais.biz.domain.vo.DataSeqVo;
|
|
|
import com.taais.biz.service.IDataSeqService;
|
|
|
|
|
|
import static com.taais.biz.domain.table.DataSeqTableDef.DATA_SEQ;
|
|
|
-import static com.taais.biz.service.impl.VideoStableServiceImpl.removeFileExtension;
|
|
|
import static com.taais.biz.utils.ZipUtils.unzip;
|
|
|
|
|
|
/**
|
|
@@ -199,15 +196,31 @@ public class DataSeqServiceImpl extends BaseServiceImpl<DataSeqMapper, DataSeq>
|
|
|
String resourcePath = localPath + StringUtils.substringAfter(filePath, Constants.RESOURCE_PREFIX);
|
|
|
String unzipPath = resourcePath.substring(0, resourcePath.lastIndexOf(".")) + BizConstant.UNZIP_SUFFIX;
|
|
|
|
|
|
- String urlPrefix = ossEntity.getUrl().substring(0, ossEntity.getUrl().lastIndexOf(".")) + BizConstant.UNZIP_SUFFIX;
|
|
|
+ String urlPrefix = ossEntity.getUrl().substring(0, ossEntity.getUrl().indexOf(Constants.RESOURCE_PREFIX) + Constants.RESOURCE_PREFIX.length());
|
|
|
|
|
|
// 列出unzipPath下所有图片文件
|
|
|
File directory = new File(unzipPath);
|
|
|
- File[] files = directory.listFiles();
|
|
|
- List<String> imageList = Arrays.asList(files).stream().filter(file -> file.isFile() && isImageFile(file)).map(file -> urlPrefix + "/" + file.getName()).toList();
|
|
|
+
|
|
|
+ List<String> imageList = new ArrayList<>();
|
|
|
+ filterImages(imageList, directory, urlPrefix);
|
|
|
return imageList;
|
|
|
}
|
|
|
|
|
|
+ public void filterImages(List<String> imageList, File path, String urlPrefix) {
|
|
|
+ File[] files = path.listFiles();
|
|
|
+ if (files == null || files.length == 0) {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ List<String> tmpList = Arrays.asList(files).stream().filter(file -> file.isFile() && isImageFile(file)).map(file -> urlPrefix + file.getPath().substring(TaaisConfig.getProfile().length()).replaceAll("\\\\", "/")).toList();
|
|
|
+ imageList.addAll(tmpList);
|
|
|
+
|
|
|
+ for(File file :files) {
|
|
|
+ if (file.isDirectory()) {
|
|
|
+ filterImages(imageList, file, urlPrefix);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public List<String> getImages(Long inputOdssId, String subsystem, Boolean isInput, String dir) {
|
|
|
// 检查input_oss_id是否存在
|