From 60a0224232a68d73e17b33f3e739d4f2fa1c255b Mon Sep 17 00:00:00 2001
From: yjz <3131811435@qq.com>
Date: Mon, 19 Aug 2024 15:19:42 +0800
Subject: [PATCH] =?UTF-8?q?fix(87790):=20=E6=96=B0=E6=97=A7=E6=8B=86?=
=?UTF-8?q?=E5=88=86=E5=8D=95=E5=AF=B9=E6=AF=94=E4=BC=98=E5=8C=96=E9=80=9F?=
=?UTF-8?q?=E5=BA=A6?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../impl/SarFileCompareInfoServiceImpl.java | 38 ++++++++++++++++---
1 file changed, 33 insertions(+), 5 deletions(-)
diff --git a/laws-modules/src/main/java/com/jero/modules/compare/service/impl/SarFileCompareInfoServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/compare/service/impl/SarFileCompareInfoServiceImpl.java
index db9774c1..19ed2738 100644
--- a/laws-modules/src/main/java/com/jero/modules/compare/service/impl/SarFileCompareInfoServiceImpl.java
+++ b/laws-modules/src/main/java/com/jero/modules/compare/service/impl/SarFileCompareInfoServiceImpl.java
@@ -72,6 +72,8 @@ public class SarFileCompareInfoServiceImpl extends ServiceImpl标签,不以
结尾,也不以结尾
+ private static final Pattern imgPattern = Pattern.compile("
]+>(?)(?)");
/**
* 保存
@@ -154,25 +156,36 @@ public class SarFileCompareInfoServiceImpl extends ServiceImpl leftMenuEOList = sarFileSplitMenuEOService.queryByInfoId(leftStandard);
Map leftMenuMap = wrapperMenuMap(leftMenuEOList, sfcInfo.getId(), CompareConst.POS_LEFT);
sarFileCompareMenuService.saveBatch(leftMenuMap.values());
+ long b = System.currentTimeMillis();
+ log.error("左菜单保存============================"+(b - a));
List rightMenuEOList = sarFileSplitMenuEOService.queryByInfoId(rightStandard);
Map rightMenuMap = wrapperMenuMap(rightMenuEOList, sfcInfo.getId(), CompareConst.POS_RIGHT);
sarFileCompareMenuService.saveBatch(rightMenuMap.values());
+ long c = System.currentTimeMillis();
+ log.error("右菜单保存============================"+(c - b));
//文档对比信息条款
List leftItemEOList = sarFileSplitItemsEOService.selectByInfoId(leftStandard);
List leftItemList = wrapperItemList(leftItemEOList, sfcInfo.getId(), leftMenuMap, CompareConst.POS_LEFT);
List rightItemEOList = sarFileSplitItemsEOService.selectByInfoId(rightStandard);
List rightItemList = wrapperItemList(rightItemEOList, sfcInfo.getId(), rightMenuMap, CompareConst.POS_RIGHT);
-
+ long y = System.currentTimeMillis();
+ log.error("============================"+(y - c));
if (!leftItemList.isEmpty() && !rightItemList.isEmpty()) {
//双重循环找到相似度最高的条款做关联
for (int i = 0; i < leftItemList.size(); i++) {
String leftTxt = leftItemList.get(i).getItemsText();
- String leftAllTxt = leftItemList.get(i).getItemsNum() + leftItemList.get(i).getItemsName() + leftItemList.get(i).getItemsText();
+// String leftAllTxt = leftItemList.get(i).getItemsNum() + leftItemList.get(i).getItemsName() + leftItemList.get(i).getItemsText();
+ StringBuilder sb = new StringBuilder();
+ sb.append(leftItemList.get(i).getItemsNum())
+ .append(leftItemList.get(i).getItemsName())
+ .append(leftItemList.get(i).getItemsText());
+ String leftAllTxt = sb.toString();
//初始化 假设未找到相似条目
leftItemList.get(i).setTargetStand(-1);
//定义初始化的相似度
@@ -183,14 +196,23 @@ public class SarFileCompareInfoServiceImpl extends ServiceImpl标签,不以结尾,也不以结尾
String leftTxtTrim = StringUtils.isBlank(leftTxt) ? "" : leftTxt.trim();
String rightTxtTrim = StringUtils.isBlank(rightTxt) ? "" : rightTxt.trim();
- boolean leftTxtMatches = Pattern.matches("
]+>(?)(?)", leftTxtTrim);
- boolean rightTxtMatches = Pattern.matches("
]+>(?)(?)", rightTxtTrim);
+ boolean leftTxtMatches = leftTxtTrim.matches("
]+>(?)(?)");
+ boolean rightTxtMatches = rightTxtTrim.matches("
]+>(?)(?)");
+// boolean leftTxtMatches = Pattern.matches("
]+>(?)(?)", leftTxtTrim);
+// boolean rightTxtMatches = Pattern.matches("
]+>(?)(?)", rightTxtTrim);
+// boolean leftTxtMatches = imgPattern.matcher(leftTxtTrim).find();
+// boolean rightTxtMatches = imgPattern.matcher(rightTxtTrim).find();
if (leftTxtMatches && rightTxtMatches){
// 如果是纯img标签直接对比内容
if (leftTxtTrim.equals(rightTxtTrim)
@@ -217,8 +239,14 @@ public class SarFileCompareInfoServiceImpl extends ServiceImpl