Selaa lähdekoodia

fix bug:修复合并文件接口的bug

lijie 3 vuotta sitten
vanhempi
commit
cfacb828b8

+ 8 - 2
dmp-cloud/dmp-file/src/main/java/com/persagy/dmp/file/service/impl/FileUploadServiceImpl.java

@@ -103,6 +103,14 @@ public class FileUploadServiceImpl extends ServiceImpl<FileMapper, FileInfo> imp
         //根据md5获取所有分片文件名称(minio的文件名称 = 文件path)
         List<String> chunks = minioCommonService
                 .listObjectNames(minioCommonService.getChuckBucketName(null),requestData.getFileMd5());
+        if (CollUtil.isEmpty(chunks)){
+            throw new BusinessException(ResponseCode.A0400.getCode(), "分片文件数量为空");
+        }
+        //获取数据库里记录的文件信息,修改数据并返回文件信息
+        FileInfo fileInfo = queryFileInfosByFileMd5(requestData.getFileMd5());
+        if (null==fileInfo){
+            throw new BusinessException(ResponseCode.A0400.getCode(), "文件信息为空");
+        }
         //自定义文件名称
         String fileName = requestData.getFileName();
         String suffix = fileName.substring(fileName.lastIndexOf("."));
@@ -112,8 +120,6 @@ public class FileUploadServiceImpl extends ServiceImpl<FileMapper, FileInfo> imp
         if(minioCommonService.composeObject(requestData.getBucketName(),chunks,fileName)){
             //获取文件访问外链(1小时过期)
             String url = minioCommonService.getObjectUrl(requestData.getBucketName(),fileName,60);
-            //获取数据库里记录的文件信息,修改数据并返回文件信息
-            FileInfo fileInfo = queryFileInfosByFileMd5(requestData.getFileMd5());
             fileInfo.setUploadStatus(UPLOAD_SUCCESS);
             fileInfo.setFileName(fileName);
             fileInfo.setFilePath(url);