fix: 老法规系统导入BUG修改

This commit is contained in:
2023-11-08 15:18:32 +08:00
parent 6db3543b13
commit d75c103cb6
@@ -31,6 +31,8 @@ import javax.annotation.Resource;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
@@ -79,6 +81,18 @@ public class LawsEnterpriseStandardServiceImpl extends ServiceImpl<LawsEnterpris
// 编号拆分
for (LawsEnterpriseStandard es : esList) {
String standardNumber = es.getStandardNumber();
// 如果标准号中有错误符号 则需要修正一下
// 正则表达式用于检测是否存在错误的“-”作为分隔符
String regex = "([A-Za-z]{1,2})-([A-Za-z]{1,2}) (\\d{4,5}(\\.\\d+)?)-(\\d{4})";
// 使用Pattern和Matcher检测是否匹配
Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(standardNumber);
if (matcher.find()) {
// 如果匹配,将第一个“-”替换为“/”
standardNumber = standardNumber.replaceFirst("-", "/");
es.setStandardNumber(standardNumber);
}
if (StringUtils.isNotBlank(standardNumber)) {
Map<String, String> map = EnterpriseStandardUtil.splitStandardNumber(standardNumber);
es.setStandardCode(map.get(FieldCommon.ENTERPRISE_STANDARD_CODE));