diff --git a/service/src/main/java/com/hzya/frame/sysnew/comparison/service/impl/ComparisonServiceImpl.java b/service/src/main/java/com/hzya/frame/sysnew/comparison/service/impl/ComparisonServiceImpl.java index 9defee72..de8412fa 100644 --- a/service/src/main/java/com/hzya/frame/sysnew/comparison/service/impl/ComparisonServiceImpl.java +++ b/service/src/main/java/com/hzya/frame/sysnew/comparison/service/impl/ComparisonServiceImpl.java @@ -211,6 +211,19 @@ public class ComparisonServiceImpl extends BaseService if (comparisonEntities != null && comparisonEntities.size() > 0) { map = spliceMainMap(comparisonEntities, jsonObjectMain, map, comparisonEntity, comparisonDetailsEntity); + //根据data_id判断数据是否已经保存在相关表中,避免重复保存 + List fields = getFields(comparisonEntity); + Map mapDataId=new HashMap<>(); + mapDataId.put("data_id",jsonObjectMain.getString("data_id")); + ComparisonEntity comparisonDataId=new ComparisonEntity(); + comparisonDataId.setMap(mapDataId); + comparisonDataId.setDbName(comparisonEntity.getDbName()); + comparisonDataId.setFields(fields); + List> listDataId = comparisonDao.queryComparisonPage(comparisonDataId); + if(CollectionUtils.isNotEmpty(listDataId)){ + return BaseResult.getFailureMessageEntity(comparisonEntity.getDbName()+"表中已经存在data_id为:"+jsonObjectMain.getString("data_id")+"的数据"); + } + //判断输入的主表字段是否是必填项 for (ComparisonEntity entity : comparisonEntities) { //如果必填字段不为空