Переглянути джерело

王耀栋--工作台模块代码,任务详情页面添加视频预览地址

wangyaodong 3 роки тому
батько
коміт
e631954207

+ 4 - 0
api-common/src/main/java/api/common/pojo/vo/project/ProjectTaskDetailsVo.java

@@ -3,6 +3,7 @@ package api.common.pojo.vo.project;
 import lombok.Getter;
 import lombok.Setter;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -93,5 +94,8 @@ public class ProjectTaskDetailsVo {
     //变化曲线
     private Map CurveData;
 
+    //视频地址
+    private List<String> videoUrl;
+
 
 }

+ 14 - 7
simulation-resource-server/src/main/java/com/css/simulation/resource/feign/FileDownService.java

@@ -9,21 +9,20 @@ import feign.Response;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.http.MediaType;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RequestPart;
+import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
 
+import java.util.List;
 
-//@FeignClient(name = "test", url = "http://10.15.12.72:8001",path = "/simulation/resource/common", fallback = FileDownServiceFallback.class, configuration = FeignConfiguration.class)
-@FeignClient(
+
+@FeignClient(name = "test", url = "http://10.15.12.88:8001",path = "/simulation/resource/common", fallback = FileDownServiceFallback.class, configuration = FeignConfiguration.class)
+/*@FeignClient(
         contextId = "file",
         value = "simulation-resource-common",
         path = "/simulation/resource/common",
         fallback = FileDownServiceFallback.class,
         configuration = FeignConfiguration.class
-)
+)*/
 public interface FileDownService {
 
     @PostMapping(value = "/minio/upload", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
@@ -37,4 +36,12 @@ public interface FileDownService {
     @PostMapping("/minio/download")
     Response download(@RequestBody @Validated MinioParameter minioParameter);
 
+    @PostMapping("/minio/list")
+    ResponseBodyVO<List<String>> list(
+            @RequestBody @Validated MinioParameter minioParameter
+    );
+
+    @RequestMapping("/minio/preview")
+    ResponseBodyVO<String> preview(@RequestBody @Validated MinioParameter minioParameter);
+
 }

+ 12 - 0
simulation-resource-server/src/main/java/com/css/simulation/resource/feign/fallback/FileDownServiceFallback.java

@@ -14,6 +14,8 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RequestPart;
 import org.springframework.web.multipart.MultipartFile;
 
+import java.util.List;
+
 @Slf4j
 @Service
 public class FileDownServiceFallback implements FileDownService {
@@ -39,4 +41,14 @@ public class FileDownServiceFallback implements FileDownService {
         return null;
     }
 
+    @Override
+    public ResponseBodyVO<List<String>> list(@RequestBody @Validated MinioParameter minioParameter) {
+        return null;
+    }
+
+    @Override
+    public ResponseBodyVO<String> preview(@RequestBody @Validated MinioParameter minioParameter) {
+        return null;
+    }
+
 }

+ 19 - 0
simulation-resource-server/src/main/java/com/css/simulation/resource/project/impl/SimulationProjectServiceImpl.java

@@ -937,6 +937,24 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
                 velocity_list.add(d);
             }
 
+            //获取视频预览路径
+            List<String> list1 = new ArrayList<>();
+            String runResultFilePath = po.getRunResultFilePath();
+            MinioParameter minioParameter1 = new MinioParameter();
+            minioParameter1.setObjectName(runResultFilePath);
+            ResponseBodyVO<List<String>> list = fileDownService.list(minioParameter1);
+            List<String> info = list.getInfo();
+            for(String s : info){
+                String substring = s.substring(s.lastIndexOf(".") + 1);
+                if("mp4".equals(substring)){
+                    //mp4视频文件
+                    minioParameter1.setObjectName(s);
+                    ResponseBodyVO<String> preview = fileDownService.preview(minioParameter1);
+                    list1.add(preview.getMessage());
+                }
+
+            }
+
             //任务详情信息
             resultVo.setMileage(lc.toString());
             resultVo.setAverageVelocity(pjsd.toString());
@@ -950,6 +968,7 @@ public class SimulationProjectServiceImpl implements SimulationProjectService {
 
             resultVo.setSwingSpeedMeanSquareRoot(zchbjsdjfg);
 //            resultVo.setSwingComfortLevel(po.getSwingComfortLevel());
+            resultVo.setVideoUrl(list1);
 
             HashMap<String, List> CurveData = new HashMap<>();
             CurveData.put("time",time_list);