瀏覽代碼

文件工具类拓展

24282 1 年之前
父節點
當前提交
4b64c3a0a6

+ 14 - 13
hx-file/src/main/java/com/fjhx/file/service/impl/FileInfoServiceImpl.java

@@ -7,10 +7,9 @@ import cn.hutool.core.io.IoUtil;
 import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.dynamic.datasource.annotation.DS;
-import com.baomidou.mybatisplus.core.toolkit.IdWorker;
-import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.file.entity.*;
@@ -27,7 +26,6 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.io.File;
 import java.util.*;
 import java.util.stream.Collectors;
 
@@ -169,6 +167,7 @@ public class FileInfoServiceImpl extends ServiceImpl<FileInfoMapper, FileInfo> i
 
     /**
      * 保存文件--直接插入
+     *
      * @param obsFileList  文件列表
      * @param businessId   业务id
      * @param businessType 业务文件类型
@@ -189,6 +188,7 @@ public class FileInfoServiceImpl extends ServiceImpl<FileInfoMapper, FileInfo> i
     }
 
     /**
+     * 编辑文件
      *
      * @param obsFileList  文件列表
      * @param businessId   业务id
@@ -212,7 +212,7 @@ public class FileInfoServiceImpl extends ServiceImpl<FileInfoMapper, FileInfo> i
     }
 
     /**
-     * !!!必须加上Transactional 更改事务传播行为,否则数据源将被缓存,造成数据源切换失败
+     * 删除文件
      *
      * @param businessId   业务id
      * @param businessType 业务文件类型
@@ -238,22 +238,23 @@ public class FileInfoServiceImpl extends ServiceImpl<FileInfoMapper, FileInfo> i
 
     /**
      * 交换业务ID
-     * @param  oldBusinessId 旧业务id
-     * @param  newBusinessId 新业务id
+     *
+     * @param oldBusinessId 旧业务id
+     * @param newBusinessId 新业务id
      */
     @DS(BaseSourceConstant.BASE)
     @Override
     @Transactional(rollbackFor = Exception.class)
     public void exchangeBusinessId(Long oldBusinessId, Long newBusinessId) {
-        List<FileInfo> oldFile = this.list(Wrappers.<FileInfo>query().lambda().select(FileInfo::getId).eq(FileInfo::getBusinessId,oldBusinessId));
-        List<FileInfo> newFile = this.list(Wrappers.<FileInfo>query().lambda().select(FileInfo::getId).eq(FileInfo::getBusinessId,newBusinessId));
-        if(CollectionUtils.isNotEmpty(oldFile)){
+        List<FileInfo> oldFile = this.list(Wrappers.<FileInfo>query().lambda().select(FileInfo::getId).eq(FileInfo::getBusinessId, oldBusinessId));
+        List<FileInfo> newFile = this.list(Wrappers.<FileInfo>query().lambda().select(FileInfo::getId).eq(FileInfo::getBusinessId, newBusinessId));
+        if (CollectionUtils.isNotEmpty(oldFile)) {
             List<Long> ids = oldFile.stream().map(FileInfo::getId).collect(Collectors.toList());
-            this.update(Wrappers.<FileInfo>update().lambda().set(FileInfo::getBusinessId,newBusinessId).in(FileInfo::getId,ids));
+            this.update(Wrappers.<FileInfo>update().lambda().set(FileInfo::getBusinessId, newBusinessId).in(FileInfo::getId, ids));
         }
-        if(CollectionUtils.isNotEmpty(newFile)){
+        if (CollectionUtils.isNotEmpty(newFile)) {
             List<Long> ids = newFile.stream().map(FileInfo::getId).collect(Collectors.toList());
-            this.update(Wrappers.<FileInfo>update().lambda().set(FileInfo::getBusinessId,oldBusinessId).in(FileInfo::getId,ids));
+            this.update(Wrappers.<FileInfo>update().lambda().set(FileInfo::getBusinessId, oldBusinessId).in(FileInfo::getId, ids));
         }
     }
 
@@ -285,7 +286,7 @@ public class FileInfoServiceImpl extends ServiceImpl<FileInfoMapper, FileInfo> i
             if (ObjectUtils.isEmpty(fileInfo)) {
                 continue;
             }
-            //如果文件已经有业务id了 且业务id不是当前业务id 就将文件复制一份
+            // 如果文件已经有业务id了 且业务id不是当前业务id 就将文件复制一份
             if (ObjectUtils.isNotEmpty(fileInfo.getBusinessId()) && !businessId.equals(fileInfo.getBusinessId())) {
                 long id = IdWorker.getId();
                 fileInfo.setId(id);

+ 58 - 6
hx-file/src/main/java/com/fjhx/file/utils/ObsFileUtil.java

@@ -6,6 +6,7 @@ import com.fjhx.file.entity.FileInfoVo;
 import com.fjhx.file.entity.ObsFile;
 import com.fjhx.file.service.FileInfoService;
 
+import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 
@@ -17,6 +18,30 @@ public class ObsFileUtil {
     /**
      * 保存文件
      *
+     * @param obsFile      文件列表
+     * @param businessId   业务id
+     * @param businessType 业务文件类型
+     */
+    public static void saveFile(ObsFile obsFile, Long businessId, Integer businessType) {
+        if (obsFile == null) {
+            return;
+        }
+        fileInfoService.saveFile(Collections.singletonList(obsFile), businessId, businessType);
+    }
+
+    /**
+     * 保存文件
+     *
+     * @param obsFile    文件
+     * @param businessId 业务id
+     */
+    public static void saveFile(ObsFile obsFile, Long businessId) {
+        saveFile(obsFile, businessId, defaultFileType);
+    }
+
+    /**
+     * 保存文件
+     *
      * @param obsFileList  文件列表
      * @param businessId   业务id
      * @param businessType 业务文件类型
@@ -32,7 +57,7 @@ public class ObsFileUtil {
      * @param businessId  业务id
      */
     public static void saveFile(List<ObsFile> obsFileList, Long businessId) {
-        fileInfoService.saveFile(obsFileList, businessId, defaultFileType);
+        saveFile(obsFileList, businessId, defaultFileType);
     }
 
     /**
@@ -53,7 +78,32 @@ public class ObsFileUtil {
      * @param businessId  业务id
      */
     public static void editFile(List<ObsFile> obsFileList, Long businessId) {
-        fileInfoService.editFile(obsFileList, businessId, defaultFileType);
+        editFile(obsFileList, businessId, defaultFileType);
+    }
+
+    /**
+     * 更新文件
+     *
+     * @param obsFile      文件
+     * @param businessId   业务id
+     * @param businessType 业务文件类型
+     */
+    public static void editFile(ObsFile obsFile, Long businessId, Integer businessType) {
+        if (obsFile == null) {
+            return;
+        }
+
+        fileInfoService.editFile(Collections.singletonList(obsFile), businessId, businessType);
+    }
+
+    /**
+     * 更新文件
+     *
+     * @param obsFile    文件
+     * @param businessId 业务id
+     */
+    public static void editFile(ObsFile obsFile, Long businessId) {
+        editFile(obsFile, businessId, defaultFileType);
     }
 
     /**
@@ -68,20 +118,22 @@ public class ObsFileUtil {
 
     /**
      * 交换ID
-     * @param oldBusinessId   旧业务id
+     *
+     * @param oldBusinessId 旧业务id
      * @param newBusinessId 新业务id
      */
-    public static void exchangeBusinessId(Long oldBusinessId,Long newBusinessId) {
+    public static void exchangeBusinessId(Long oldBusinessId, Long newBusinessId) {
         fileInfoService.exchangeBusinessId(oldBusinessId, newBusinessId);
     }
 
     /**
      * 保存所有文件
+     *
      * @param obsFileList
      * @param businessId
      */
-    public static void saveAllFile(List<ObsFile> obsFileList, Long businessId,Integer type) {
-        fileInfoService.saveAllFile(obsFileList, businessId,type);
+    public static void saveAllFile(List<ObsFile> obsFileList, Long businessId, Integer type) {
+        fileInfoService.saveAllFile(obsFileList, businessId, type);
     }
 
     /**