ソースを参照

bugfix:
1、关闭视频,视频仍然播放声音
2、解决大文件上传过慢导致接口超时

lihao16 5 ヶ月 前
コミット
00d7857117

+ 14 - 7
smsb-modules/smsb-source/src/main/java/com/inspur/source/service/impl/SmsbMinioDataServiceImpl.java

@@ -81,6 +81,9 @@ public class SmsbMinioDataServiceImpl implements ISmsbMinioDataService {
     @Value("${server.tempDir}")
     private String tempDir;
 
+    @Value("${server.minio.ip}")
+    private String minioServerIp;
+
     // 计算目标分辨率(高或宽压缩至480,保持比例)
     private static String calculateResolution(int width, int height) {
         String scaleFilter;
@@ -512,8 +515,7 @@ public class SmsbMinioDataServiceImpl implements ISmsbMinioDataService {
         OssClient storage = OssFactory.instance();
         UploadResult uploadResult;
         uploadResult = storage.uploadSuffix(file, suffix);
-        String imageUrl = uploadResult.getUrl();
-        return imageUrl;
+        return uploadResult.getUrl().replace("127.0.0.1",minioServerIp);
     }
 
     private String uploadCompressVideo(String tempFile) {
@@ -522,7 +524,7 @@ public class SmsbMinioDataServiceImpl implements ISmsbMinioDataService {
         OssClient storage = OssFactory.instance();
         UploadResult uploadResult;
         uploadResult = storage.uploadSuffix(file, suffix);
-        return uploadResult.getUrl();
+        return uploadResult.getUrl().replace("127.0.0.1",minioServerIp);
     }
 
     /**
@@ -877,7 +879,8 @@ public class SmsbMinioDataServiceImpl implements ISmsbMinioDataService {
     @NotNull
     private SysOssVo buildResultEntityV2(String originalfileName, String suffix, String configKey, UploadResult uploadResult, String md5, MultipartFile file) {
         SysOss oss = new SysOss();
-        oss.setUrl(uploadResult.getUrl());
+        // 如果是127.0.0.1 替换成minio地址
+        oss.setUrl(uploadResult.getUrl().replace("127.0.0.1",minioServerIp));
         oss.setFileSuffix(suffix);
         oss.setFileName(uploadResult.getFilename());
         oss.setOriginalName(originalfileName);
@@ -1006,9 +1009,13 @@ public class SmsbMinioDataServiceImpl implements ISmsbMinioDataService {
             if (StringUtils.isEmpty(videoInfo)) {
                 return null;
             }
-            resolution = videoInfo.split(",")[0].trim();
-            codeRate = Integer.parseInt(videoInfo.split(",")[1].trim()) / 1000;
-            duration = Integer.parseInt(videoInfo.split(",")[2].trim());
+            try {
+                resolution = videoInfo.split(",")[0].trim();
+                duration = Integer.parseInt(videoInfo.split(",")[2].trim());
+                codeRate = Integer.parseInt(videoInfo.split(",")[1].trim()) / 1000;
+            }catch (Exception e) {
+                log.info("get video info error : " + videoInfo);
+            }
         }
         oss.setResolution(resolution);
         oss.setCodeRate(codeRate);

+ 1 - 1
smsb-plus-ui/src/views/smsb/minioData/index.vue

@@ -222,7 +222,7 @@
     </el-dialog>
 
     <!-- 用于展示播放的视频 -->
-    <el-dialog v-model="videoDialogVisible">
+    <el-dialog v-model="videoDialogVisible" v-if="videoDialogVisible">
       <video width="100%" controls :src="videoUrl"></video>
     </el-dialog>