feat: 老法规国标导入逻辑

This commit is contained in:
2023-12-04 15:02:28 +08:00
parent 9cc05f3d5b
commit 7358a7fcdc
@@ -717,9 +717,11 @@ public class LawsEnterpriseStandardServiceImpl extends ServiceImpl<LawsEnterpris
}
private void oldSysGBImport(List<OldSystemImportDTO> allDatalist, List<OldSystemImportDTO> errImportList) {
List<OldSystemImportDTO> gbDatalist = allDatalist.stream().filter(o -> o.getBzfl().contains("国家") ||
o.getBzfl().contains("地方") ||
o.getBzfl().contains("行业")).collect(Collectors.toList());
List<OldSystemImportDTO> gbDatalist = allDatalist.stream().filter(o ->
o.getBzfl().contains("国家标准/") || // “/”是为了避免匹配到“美国国家标准”这个外标
o.getBzfl().contains("团体标准") ||
o.getBzfl().contains("地方标准") ||
o.getBzfl().contains("行业标准")).collect(Collectors.toList());
log.info("国标相关数据条数:{}", gbDatalist.size());
// 找到所有人 并且用 姓名加工号做key
@@ -746,14 +748,17 @@ public class LawsEnterpriseStandardServiceImpl extends ServiceImpl<LawsEnterpris
// 先将标准号中的中文横杠替换为英文横杠
String newBzh = dto.getBzh().replace("", "-");
gb.setStandardNumber(newBzh);
// 执行拆分
Map<String, String> map = StandardSplitUtils.splitDomesticStandardNumber(newBzh);
gb.setStandardClass(map.get(FieldCommon.STANDARD_CLASS));
gb.setStandardNumberTemp(map.get(FieldCommon.STANDARD_NUMBER_TEMP));
gb.setYearNumber(map.get(FieldCommon.YEAR_NUMBER));
String cybzh = dto.getCybzh();
// 采用标准号为空跳过拆分
if (StrUtil.isNotBlank(cybzh)){
// 执行拆分
Map<String, String> map = StandardSplitUtils.simpleSplitStandardNumber(newBzh, cybzh);
gb.setStandardClass(map.get(FieldCommon.STANDARD_CLASS));
gb.setStandardNumberTemp(map.get(FieldCommon.STANDARD_NUMBER_TEMP));
gb.setYearNumber(map.get(FieldCommon.YEAR_NUMBER));
}
gb.setStandardName(dto.getBzmc());
gb.setStandardEnglishName(dto.getBzywmc());
// 发布日期和实施日期入库之前需要校验 为空或者不符合规则的不入库