优化企业标准导入增加对Excel文档重复编号和名称的校验
This commit is contained in:
+30
-13
@@ -2775,6 +2775,22 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
|
||||
}
|
||||
}
|
||||
}
|
||||
//校验Excel中企标编号和企标名称同时存在重复
|
||||
Map<String,SarBussStandAttrInfoExecl> map = new HashMap<>();
|
||||
int count = 2;
|
||||
for (String str : jsonList) {
|
||||
count++;
|
||||
SarBussStandAttrInfoExecl se = com.alibaba.fastjson.JSONObject.parseObject(str,SarBussStandAttrInfoExecl.class);
|
||||
if(ObjectUtils.isNotEmpty(se)){
|
||||
String key = se.getStandCode()+se.getStandName();
|
||||
if(map.containsKey(key)){
|
||||
logger.info("导入失败,第" + count +" 行需要导入的企标标号或企标名称重复");
|
||||
return Result.error("导入失败,第" + count + " 行需要导入的企标标号或企标名称重复");
|
||||
}else{
|
||||
map.put(key,se);
|
||||
}
|
||||
}
|
||||
}
|
||||
//入库
|
||||
try {
|
||||
for (String infoJson : jsonList) {
|
||||
@@ -2818,6 +2834,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
|
||||
if ((list.size() ==1 && !list.get(0).getId().equals(stand.getId())) || list.size() >1){
|
||||
valIdFlag = stand.getValidFlag();
|
||||
if (valIdFlag == 0){
|
||||
logger.info("企标标准号"+ sarBussionessStand.getStandCode() +"或企标名称"+ sarBussionessStand.getStandName() +"已存在");
|
||||
throw new AdcDaBaseException("企标标准号"+ sarBussionessStand.getStandCode() +"或企标名称"+ sarBussionessStand.getStandName() +"已存在");
|
||||
}
|
||||
}
|
||||
@@ -2887,19 +2904,19 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
|
||||
// sarBussionessStand.setStandCode(standCode);
|
||||
// // 根据标准号判断数据是否已存在
|
||||
// //2021年4月9日 此处检查当前是否存在standId
|
||||
QueryWrapper<SarBussionessStand>queryWrapper = new QueryWrapper<>();
|
||||
queryWrapper.eq(sarBussionessStand.getStandCode() != null,"STAND_CODE",sarBussionessStand.getStandCode())
|
||||
.eq(sarBussionessStand.getStandName() != null,"STAND_NAME",sarBussionessStand.getStandName());
|
||||
List<SarBussionessStand> list = iSarBussionessStandService.list(queryWrapper);
|
||||
Integer valIdFlag = 0;
|
||||
for (SarBussionessStand stand :list){
|
||||
if ((list.size() ==1 && !list.get(0).getId().equals(stand.getId())) || list.size() >1){
|
||||
valIdFlag = stand.getValidFlag();
|
||||
if (valIdFlag == 0){
|
||||
throw new AdcDaBaseException("企标标准号"+ sarBussionessStand.getStandCode() +"或企标名称"+ sarBussionessStand.getStandName() +"已存在");
|
||||
}
|
||||
}
|
||||
}
|
||||
// QueryWrapper<SarBussionessStand>queryWrapper = new QueryWrapper<>();
|
||||
// queryWrapper.eq(sarBussionessStand.getStandCode() != null,"STAND_CODE",sarBussionessStand.getStandCode())
|
||||
// .eq(sarBussionessStand.getStandName() != null,"STAND_NAME",sarBussionessStand.getStandName());
|
||||
// List<SarBussionessStand> list = iSarBussionessStandService.list(queryWrapper);
|
||||
// Integer valIdFlag = 0;
|
||||
// for (SarBussionessStand stand :list){
|
||||
// if ((list.size() ==1 && !list.get(0).getId().equals(stand.getId())) || list.size() >1){
|
||||
// valIdFlag = stand.getValidFlag();
|
||||
// if (valIdFlag == 0){
|
||||
// throw new AdcDaBaseException("企标标准号"+ sarBussionessStand.getStandCode() +"或企标名称"+ sarBussionessStand.getStandName() +"已存在");
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
//此处判断是否是带入的标准
|
||||
if(StringUtils.isNotBlank(sarBussionessStand.getId())) {
|
||||
|
||||
Reference in New Issue
Block a user