feat: 企标编号导入判断重复行
This commit is contained in:
@@ -88,6 +88,7 @@ public class ImportUtil {
|
||||
|
||||
// 从数据行开始遍历
|
||||
for (int i = 3; i < sheet.getPhysicalNumberOfRows(); i++) {
|
||||
Map<String, Integer> keyMap = new HashMap<>();
|
||||
int line = i + 1;
|
||||
StringBuilder errMsg = new StringBuilder("第" + line + "行");
|
||||
Map<String, Object> parameterMap = new HashMap<>();
|
||||
@@ -144,34 +145,44 @@ public class ImportUtil {
|
||||
parameterMap.put(FieldCommon.STANDARD_CATEGORY_CODE, this.convertDictValue("standard_category_code", categoryCode));
|
||||
parameterMap.put(FieldCommon.YEAR_NUMBER, yearCode);
|
||||
}
|
||||
}
|
||||
// 校验编号唯一性
|
||||
if (TableNameEnum.ENTERPRISE_STANDARDS.getValue().equals(tag.getIsModel())) {
|
||||
LawsEnterpriseStandard lawsEnterpriseStandard = lawsEnterpriseStandardService.queryByStandardNumber(cellValue);
|
||||
if (lawsEnterpriseStandard != null) {
|
||||
log.error("第" + row + "列输入的" + tag.getDbFieldTxt() + "已存在 ");
|
||||
errMsg.append("第").append(row).append("列输入的").append(tag.getDbFieldTxt()).append("已存在 ");
|
||||
}
|
||||
}
|
||||
if (TableNameEnum.DOMESTIC_REGULATIONS.getValue().equals(tag.getIsModel())) {
|
||||
QueryWrapper<LawsDomesticStandard> domesticStandardQueryWrapper = new QueryWrapper<>();
|
||||
domesticStandardQueryWrapper.eq(FieldCommon.STANDARD_NUMBER, cellValue);
|
||||
LawsDomesticStandard lawsDomesticStandard = lawsDomeStandardService.getOne(domesticStandardQueryWrapper);
|
||||
if (lawsDomesticStandard != null) {
|
||||
log.error("第" + row + "列输入的" + tag.getDbFieldTxt() + "已存在 ");
|
||||
errMsg.append("第").append(row).append("列输入的").append(tag.getDbFieldTxt()).append("已存在 ");
|
||||
}
|
||||
}
|
||||
if (TableNameEnum.FOREIGN_REGULATIONS.getValue().equals(tag.getIsModel())) {
|
||||
QueryWrapper<LawsOverseasStandard> foreignStandardQueryWrapper = new QueryWrapper<>();
|
||||
foreignStandardQueryWrapper.eq(FieldCommon.STANDARD_NUMBER, cellValue);
|
||||
LawsOverseasStandard lawsOverseasStandard = overseasStandardService.getOne(foreignStandardQueryWrapper);
|
||||
if (lawsOverseasStandard != null) {
|
||||
log.error("第" + row + "列输入的" + tag.getDbFieldTxt() + "已存在 ");
|
||||
errMsg.append("第").append(row).append("列输入的").append(tag.getDbFieldTxt()).append("已存在 ");
|
||||
// 判断是否有重复数据
|
||||
if (keyMap.containsKey(cellValue)) {
|
||||
errMsgList.add("第" + keyMap.get(cellValue) + "行'标准编号'与第" + line + "行数据重复。");
|
||||
} else {
|
||||
// 5. 如果不存在,则将 GradeName 和其行号添加到 HashMap 中
|
||||
keyMap.put(cellValue, line);
|
||||
}
|
||||
}
|
||||
}
|
||||
// TODO 国标编号校验
|
||||
// TODO 外标编号校验
|
||||
// 校验编号唯一性
|
||||
if (TableNameEnum.ENTERPRISE_STANDARDS.getValue().equals(tag.getIsModel())) {
|
||||
LawsEnterpriseStandard lawsEnterpriseStandard = lawsEnterpriseStandardService.queryByStandardNumber(cellValue);
|
||||
if (lawsEnterpriseStandard != null) {
|
||||
log.error("第" + row + "列输入的" + tag.getDbFieldTxt() + "已存在 ");
|
||||
errMsg.append("第").append(row).append("列输入的").append(tag.getDbFieldTxt()).append("已存在 ");
|
||||
}
|
||||
}
|
||||
if (TableNameEnum.DOMESTIC_REGULATIONS.getValue().equals(tag.getIsModel())) {
|
||||
QueryWrapper<LawsDomesticStandard> domesticStandardQueryWrapper = new QueryWrapper<>();
|
||||
domesticStandardQueryWrapper.eq(FieldCommon.STANDARD_NUMBER, cellValue);
|
||||
LawsDomesticStandard lawsDomesticStandard = lawsDomeStandardService.getOne(domesticStandardQueryWrapper);
|
||||
if (lawsDomesticStandard != null) {
|
||||
log.error("第" + row + "列输入的" + tag.getDbFieldTxt() + "已存在 ");
|
||||
errMsg.append("第").append(row).append("列输入的").append(tag.getDbFieldTxt()).append("已存在 ");
|
||||
}
|
||||
}
|
||||
if (TableNameEnum.FOREIGN_REGULATIONS.getValue().equals(tag.getIsModel())) {
|
||||
QueryWrapper<LawsOverseasStandard> foreignStandardQueryWrapper = new QueryWrapper<>();
|
||||
foreignStandardQueryWrapper.eq(FieldCommon.STANDARD_NUMBER, cellValue);
|
||||
LawsOverseasStandard lawsOverseasStandard = overseasStandardService.getOne(foreignStandardQueryWrapper);
|
||||
if (lawsOverseasStandard != null) {
|
||||
log.error("第" + row + "列输入的" + tag.getDbFieldTxt() + "已存在 ");
|
||||
errMsg.append("第").append(row).append("列输入的").append(tag.getDbFieldTxt()).append("已存在 ");
|
||||
}
|
||||
}
|
||||
|
||||
// 字段长度校验
|
||||
if (FieldShowTypeEnum.TEXT_BOX.getValue().equals(tag.getFieldShowType())) {
|
||||
if (cellValue.length() > 50) {
|
||||
|
||||
Reference in New Issue
Block a user