Selaa lähdekoodia

Merge remote-tracking branch 'origin/feat_file_compare_manger' into feat_wangshuo

wangshuo 1 kuukausi sitten
vanhempi
commit
903fd421be

+ 7 - 5
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysRepoController.java

@@ -2,6 +2,7 @@ package com.ruoyi.web.controller.system;
 
 import java.io.IOException;
 import java.util.List;
+import java.util.Set;
 
 import com.ruoyi.common.utils.file.FileUploadUtils;
 import com.ruoyi.system.domain.SysRepoHistory;
@@ -42,8 +43,9 @@ public class SysRepoController extends BaseController
     @GetMapping("/list")
     public AjaxResult list(SysRepo sysRepo)
     {
+        startPage();
         List<SysRepo> list = sysRepoService.selectSysRepoList(sysRepo);
-        return success(list);
+        return AjaxResult.success(getDataTable(list));
     }
 
 
@@ -94,8 +96,8 @@ public class SysRepoController extends BaseController
             if(sysRepoService.updateSysRepo(sysRepo)<1){
                 return AjaxResult.error("文件插入失败");
             }
-//            OfficeCompareUtils.compare(sysRepoHistory.getUrl(),sysRepo.getUrl(),"spire");
-            return AjaxResult.success("操作成功");
+            Set<String> set =  OfficeCompareUtils.compare(sysRepoHistory.getUrl(),sysRepo.getUrl(),"spire");
+            return AjaxResult.success(set);
         }
     }
     /**
@@ -105,10 +107,10 @@ public class SysRepoController extends BaseController
     @GetMapping (value = "version/{repoId}")
     public AjaxResult getVersion(@PathVariable("repoId") Long repoId)
     {
+        startPage();
         SysRepoHistory sysRepoHistory = new SysRepoHistory();
         sysRepoHistory.setRepoId(repoId);
-
-        return success(sysRepoHistoryService.selectSysRepoHistoryList(sysRepoHistory));
+        return success(getDataTable(sysRepoHistoryService.selectSysRepoHistoryList(sysRepoHistory)));
     }
 
 

+ 29 - 1
ruoyi-common/src/main/java/com/ruoyi/common/filecompare/SpireDoc.java

@@ -1,12 +1,17 @@
 package com.ruoyi.common.filecompare;
 import com.spire.doc.DifferRevisions;
 import com.spire.doc.Document;
+import com.spire.doc.fields.TextRange;
 import com.spire.ms.System.Collections.Generic.List;
 
+import java.util.HashSet;
+import java.util.Set;
+
 public class SpireDoc {
-    public static void compare(String file1, String file2) {
+    public static Set<String> compare(String file1, String file2) {
         Document doc1 = new Document();
         Document doc2 = new Document();
+        Set<String> set = new HashSet<String>();
         try {
             doc1.loadFromFile(file1);
             doc2.loadFromFile(file2);
@@ -15,11 +20,34 @@ public class SpireDoc {
             DifferRevisions differRevisions = new DifferRevisions(doc1);
             List insertRevisionsList = differRevisions.getInsertRevisions();
             List  deleteRevisionsList = differRevisions.getDeleteRevisions();
+            int m = 0;
+            int n = 0;
+            for (int i = 0; i < insertRevisionsList.size(); i++)
+            {
+                if (insertRevisionsList.get(i) instanceof TextRange)
+                {
+                    m += 1;
+                    //获取指定插入改动,并获取插入的具体内容
+                    TextRange textRange = (TextRange)insertRevisionsList.get(i) ;
+                    set.add("插入 #" + m + ":" + textRange.getText());
+                }
+            }
+            for (int i = 0; i < deleteRevisionsList.size() ; i++)
+            {
+                if (deleteRevisionsList.get(i) instanceof TextRange)
+                {
+                    n += 1;
+                    //获取指定删除改动,并获取删除的具体内容
+                    TextRange textRange = (TextRange) deleteRevisionsList.get(i) ;
+                    set.add("删除 #" + n + ":" + textRange.getText());
+                }
+            }
         }catch (Exception e){
             e.printStackTrace();
         }finally {
             doc1.close();
             doc2.close();
+            return set;
         }
     }
 }

+ 10 - 3
ruoyi-common/src/main/java/com/ruoyi/common/utils/OfficeCompareUtils.java

@@ -2,12 +2,19 @@ package com.ruoyi.common.utils;
 
 import com.ruoyi.common.filecompare.SpireDoc;
 
+import java.util.HashSet;
+import java.util.Set;
+/**
+ * 对比Office文档
+ *
+ * @author liyingjun
+ */
 public class OfficeCompareUtils {
-    public static void compare(String file1, String file2,String mode) {
+    public static Set<String> compare(String file1, String file2,String mode) {
         switch (mode){
             case "spire":
-                SpireDoc.compare(file1, file2);
-                break;
+                Set<String> set = SpireDoc.compare(file1, file2);
+                return set;
             default:
                 throw new IllegalArgumentException("无效的比较类型!");
         }

+ 2 - 2
ruoyi-system/src/main/java/com/ruoyi/system/domain/SysRepo.java

@@ -10,9 +10,9 @@ import java.util.ArrayList;
 import java.util.List;
 
 /**
- * 【请填写功能名称】对象 sys_repo
+ * 仓库文件对象 sys_repo
  * 
- * @author ruoyi
+ * @author liyingjin
  * @date 2025-05-15
  */
 public class SysRepo extends BaseEntity

+ 2 - 2
ruoyi-system/src/main/java/com/ruoyi/system/domain/SysRepoHistory.java

@@ -6,9 +6,9 @@ import com.ruoyi.common.annotation.Excel;
 import com.ruoyi.common.core.domain.BaseEntity;
 
 /**
- * 【请填写功能名称】对象 sys_repo_history
+ * 文件历史对象 sys_repo_history
  * 
- * @author ruoyi
+ * @author liyingjun
  * @date 2025-05-19
  */
 public class SysRepoHistory extends BaseEntity

+ 15 - 23
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRepoHistoryMapper.java

@@ -4,67 +4,59 @@ import java.util.List;
 import com.ruoyi.system.domain.SysRepoHistory;
 
 /**
- * 【请填写功能名称】Mapper接口
+ * 文件历史表 数据层
  * 
- * @author ruoyi
+ * @author liyingjun
  * @date 2025-05-19
  */
 public interface SysRepoHistoryMapper 
 {
     /**
-     * 查询【请填写功能名称】
+     * 查询文件历史
      * 
-     * @param hId 【请填写功能名称】主键
-     * @return 【请填写功能名称】
+     * @param hId 文件历史ID
+     * @return 文件历史
      */
     public SysRepoHistory selectSysRepoHistoryByHId(Long hId);
 
     /**
-     * 查询【请填写功能名称】列表
+     * 根据条件查询文件历史列表
      * 
-     * @param sysRepoHistory 【请填写功能名称】
-     * @return 【请填写功能名称】集合
+     * @param sysRepoHistory 文件历史相关的信息
+     * @return 文件历史集合
      */
     public List<SysRepoHistory> selectSysRepoHistoryList(SysRepoHistory sysRepoHistory);
 
     /**
-     * 新增【请填写功能名称】
+     * 新增文件历史
      * 
-     * @param sysRepoHistory 【请填写功能名称】
+     * @param sysRepoHistory 文件历史信息
      * @return 结果
      */
     public int insertSysRepoHistory(SysRepoHistory sysRepoHistory);
 
     /**
-     * 修改【请填写功能名称】
+     * 修改文件历史
      * 
-     * @param sysRepoHistory 【请填写功能名称】
+     * @param sysRepoHistory 文件历史信息
      * @return 结果
      */
     public int updateSysRepoHistory(SysRepoHistory sysRepoHistory);
 
     /**
-     * 删除【请填写功能名称】
+     * 删除文件历史
      * 
-     * @param hId 【请填写功能名称】主键
+     * @param hId 文件历史ID
      * @return 结果
      */
     public int deleteSysRepoHistoryByHId(Long hId);
 
     /**
-     * 批量删除【请填写功能名称】
+     * 批量删除文件历史记录
      * 
      * @param hIds 需要删除的数据主键集合
      * @return 结果
      */
     public int deleteSysRepoHistoryByHIds(Long[] hIds);
 
-//    /**
-//     * 获取历史版本列表
-//     *
-//     * @param repoId 仓库文件ID
-//     * @return 历史版本集合
-//     */
-//    public List<SysRepoHistory> selectSysRepoHistoryListByRepoId(Long repoId);
-
 }

+ 15 - 15
ruoyi-system/src/main/java/com/ruoyi/system/mapper/SysRepoMapper.java

@@ -4,55 +4,55 @@ import java.util.List;
 import com.ruoyi.system.domain.SysRepo;
 
 /**
- * 【请填写功能名称】Mapper接口
+ * 仓库文件表 数据层
  * 
- * @author ruoyi
+ * @author liyingjun
  * @date 2025-05-15
  */
 public interface SysRepoMapper 
 {
     /**
-     * 查询【请填写功能名称】
+     * 查询仓库文件列表
      * 
-     * @param repoId 【请填写功能名称】主键
-     * @return 【请填写功能名称】
+     * @param repoId 仓库文件ID
+     * @return 仓库文件列表
      */
     public SysRepo selectSysRepoByRepoId(Long repoId);
 
     /**
-     * 查询【请填写功能名称】列表
+     * 根据条件查询仓库文件列表
      * 
-     * @param sysRepo 【请填写功能名称】
-     * @return 【请填写功能名称】集合
+     * @param sysRepo 仓库文件相关信息
+     * @return 仓库文件集合
      */
     public List<SysRepo> selectSysRepoList(SysRepo sysRepo);
 
     /**
-     * 新增【请填写功能名称】
+     * 新增仓库文件
      * 
-     * @param sysRepo 【请填写功能名称】
+     * @param sysRepo 仓库文件信息
      * @return 结果
      */
     public int insertSysRepo(SysRepo sysRepo);
 
     /**
-     * 修改【请填写功能名称】
+     * 修改仓库文件
      * 
-     * @param sysRepo 【请填写功能名称】
+     * @param sysRepo 仓库文件信息
      * @return 结果
      */
     public int updateSysRepo(SysRepo sysRepo);
 
     /**
-     * 删除【请填写功能名称】
+     * 删除仓库文件
      * 
-     * @param repoId 【请填写功能名称】主键
+     * @param repoId 仓库文件ID
      * @return 结果
      */
     public int deleteSysRepoByRepoId(Long repoId);
 
     /**
-     * 批量删除【请填写功能名称】
+     * 批量删除仓库文件
      * 
      * @param repoIds 需要删除的数据主键集合
      * @return 结果

+ 2 - 2
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRepoHistoryService.java

@@ -4,9 +4,9 @@ import java.util.List;
 import com.ruoyi.system.domain.SysRepoHistory;
 
 /**
- * SysRepoHistoryService接口
+ * 文件历史Service接口
  * 
- * @author ruoyi
+ * @author liyingjun
  * @date 2025-05-19
  */
 public interface ISysRepoHistoryService 

+ 2 - 2
ruoyi-system/src/main/java/com/ruoyi/system/service/ISysRepoService.java

@@ -4,9 +4,9 @@ import java.util.List;
 import com.ruoyi.system.domain.SysRepo;
 
 /**
- * 【请填写功能名称】Service接口
+ * 仓库文件Service接口
  * 
- * @author ruoyi
+ * @author liyingjun
  * @date 2025-05-15
  */
 public interface ISysRepoService 

+ 2 - 2
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRepoHistoryServiceImpl.java

@@ -8,9 +8,9 @@ import com.ruoyi.system.domain.SysRepoHistory;
 import com.ruoyi.system.service.ISysRepoHistoryService;
 
 /**
- * 【】Service业务层处理
+ * 文件历史业务层处理
  * 
- * @author ruoyi
+ * @author liyingjun
  * @date 2025-05-19
  */
 @Service

+ 16 - 16
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRepoServiceImpl.java

@@ -9,9 +9,9 @@ import com.ruoyi.system.domain.SysRepo;
 import com.ruoyi.system.service.ISysRepoService;
 
 /**
- * 【请填写功能名称】Service业务层处理
+ * 仓库文件Service业务层处理
  * 
- * @author ruoyi
+ * @author liyingjun
  * @date 2025-05-15
  */
 @Service
@@ -21,10 +21,10 @@ public class SysRepoServiceImpl implements ISysRepoService
     private SysRepoMapper sysRepoMapper;
 
     /**
-     * 查询【请填写功能名称】
+     * 查询仓库文件
      * 
-     * @param repoId 【请填写功能名称】主键
-     * @return 【请填写功能名称】
+     * @param repoId 仓库文件ID
+     * @return 仓库文件信息
      */
     @Override
     public SysRepo selectSysRepoByRepoId(Long repoId)
@@ -33,10 +33,10 @@ public class SysRepoServiceImpl implements ISysRepoService
     }
 
     /**
-     * 查询【请填写功能名称】列表
+     * 查询仓库文件列表
      * 
-     * @param sysRepo 【请填写功能名称】
-     * @return 【请填写功能名称】
+     * @param sysRepo 仓库文件信息
+     * @return 仓库文件列表
      */
     @Override
     public List<SysRepo> selectSysRepoList(SysRepo sysRepo)
@@ -45,9 +45,9 @@ public class SysRepoServiceImpl implements ISysRepoService
     }
 
     /**
-     * 新增【请填写功能名称】
+     * 新增仓库文件
      * 
-     * @param sysRepo 【请填写功能名称】
+     * @param sysRepo 仓库文件信息
      * @return 结果
      */
     @Override
@@ -58,9 +58,9 @@ public class SysRepoServiceImpl implements ISysRepoService
     }
 
     /**
-     * 修改【请填写功能名称】
+     * 修改仓库文件信息
      * 
-     * @param sysRepo 【请填写功能名称】
+     * @param sysRepo 仓库文件信息
      * @return 结果
      */
     @Override
@@ -71,9 +71,9 @@ public class SysRepoServiceImpl implements ISysRepoService
     }
 
     /**
-     * 批量删除【请填写功能名称】
+     * 批量删除仓库文件
      * 
-     * @param repoIds 需要删除的【请填写功能名称】主键
+     * @param repoIds 需要删除的仓库文件ID集合
      * @return 结果
      */
     @Override
@@ -83,9 +83,9 @@ public class SysRepoServiceImpl implements ISysRepoService
     }
 
     /**
-     * 删除【请填写功能名称】信息
+     * 删除仓库文件信息
      * 
-     * @param repoId 【请填写功能名称】主键
+     * @param repoId 仓库文件ID
      * @return 结果
      */
     @Override