From 2dc04f00dbd4a41856246f6188214023d0ba53ed Mon Sep 17 00:00:00 2001 From: chenlw <874313221@qq.com> Date: Thu, 3 Nov 2016 15:23:29 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E7=B3=BB=E7=BB=9F=E6=97=B6?= =?UTF-8?q?=EF=BC=8C=E5=8E=BB=E6=8E=89=E7=B3=BB=E7=BB=9F=E5=B7=B2=E5=AD=98?= =?UTF-8?q?=E5=9C=A8=E7=9A=84=E6=96=B0=E5=A2=9E=E6=93=8D=E4=BD=9C=E9=87=8C?= =?UTF-8?q?=E7=9A=84=E7=B3=BB=E7=BB=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/PreDataInfoServiceImpl.java | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/src/com/platform/service/impl/PreDataInfoServiceImpl.java b/src/com/platform/service/impl/PreDataInfoServiceImpl.java index 293193a5..79f04f96 100644 --- a/src/com/platform/service/impl/PreDataInfoServiceImpl.java +++ b/src/com/platform/service/impl/PreDataInfoServiceImpl.java @@ -186,6 +186,7 @@ public class PreDataInfoServiceImpl implements IPreDataInfoService { } //TODO 去掉 已经导入的系统。。(例如 excel反复导入) //在 pre_data_info表中 新增 操作为(新增信息系统)的系统 + all2Insert = removeRepeat(all2Insert); if (all2Insert.size() > 0) { preDataInfoDao.insertBatch(all2Insert); } @@ -217,6 +218,7 @@ public class PreDataInfoServiceImpl implements IPreDataInfoService { } //TODO 去掉 已经导入的系统。。(例如 excel反复导入) //在 pre_data_info表中 新增 操作为(新增行政区划)的系统 + allAreaInsert = removeRepeat(allAreaInsert); if (allAreaInsert.size() > 0) { preDataInfoDao.insertBatch(allAreaInsert); } @@ -444,4 +446,29 @@ public class PreDataInfoServiceImpl implements IPreDataInfoService { return pathStandard; } + /** 新增系统时,去掉系统已存在的 新增操作里的 + * @param allAreaInsert + * @throws Exception + */ + private List removeRepeat(List allAreaInsert) throws Exception { + Map excelAdd = new HashMap(); + List allResult = new ArrayList(); + //系统已存在的 系统 + List sysInDataBase = preDataInfoDao.findAll(); + Map sysInDataBaseMap = new HashMap(); + for (PreDataInfo preDataInfo : sysInDataBase) { + sysInDataBaseMap.put(preDataInfo.getAreaCode()+"_"+preDataInfo.getSysName().trim(), null); + } + //本次新增的系统 + for (PreDataInfo pre : allAreaInsert) { + excelAdd.put(pre.getAreaCode()+"_"+pre.getSysName().trim(), pre); + } + for (String key : excelAdd.keySet()) { + if (!sysInDataBaseMap.containsKey(key)) { + allResult.add(excelAdd.get(key)); + } + } + return allResult; + } + }