From 690373af7d08c2d043bcdef84064dc0b18702cc7 Mon Sep 17 00:00:00 2001 From: gaojiabao Date: Mon, 13 Mar 2023 17:03:08 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AF=91=E6=96=87=E5=8E=9F=E6=96=87=E9=97=AE?= =?UTF-8?q?=E9=A2=98=EF=BC=88=E8=BF=94=E5=9B=9E=E6=96=87=E4=BB=B6=E6=9C=89?= =?UTF-8?q?=E5=90=8D=E7=A7=B0=E9=87=8D=E5=A4=8D,=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E4=BC=98=E5=8C=96=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/SarBussionessStandServiceImpl.java | 264 ++++++++++++------ 1 file changed, 172 insertions(+), 92 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java index f5776d63..6207ce0d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/service/impl/SarBussionessStandServiceImpl.java @@ -2758,7 +2758,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl oldArr = new ArrayList(); List oldArr1 = new ArrayList(); //记录同一数据下文件名重复的 - List fileEOArrayList= new ArrayList<>(); + Set fileEOArrayList= new HashSet<>(); //海外国内的文件数据处理 处理逻辑对比 文件的名称 一致的情况下 则看老数据库 是否有对应的分类 原文 译文 if(type.equals("海外")) { List SarStandardsInfoList = sarStandardsInfoDao.selectListInfo(); @@ -2768,57 +2768,97 @@ public class SarBussionessStandServiceImpl extends ServiceImpl asList = Arrays.asList(fileIdArr); - if (asList.size() > 0) { - // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走 - List attFileEOS = newFileNameRepetition(asList); - if (attFileEOS.isEmpty()) { - String yi = ""; - String yuan = ""; - OldSystem old = new OldSystem(); - for (String fileId : asList) { - //循环调用每一个 文件 获取文件名称 - String id = fileId; - AttFileEO byId = attFileEOService.getFileInfo(id); - String theSame = isTheSame(byId.getOldFileName(), SarStandardsInfo.getBuildId()); - if (theSame.equals("1")) { - //证明找到文件名称一致的了 - OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); - //原文译文 进行判断 - if (sortSign.getSortSign().contains("译")) { - if (StringUtils.isNotBlank(yi)) { - yi = "," + fileId; + if(SarStandardsInfo.getFileId().contains(",")) { + String[] fileIdArr = SarStandardsInfo.getFileId().split(","); + List asList = Arrays.asList(fileIdArr); + if (asList.size() > 0) { + // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走 + List attFileEOS = newFileNameRepetition(asList); + if (attFileEOS.isEmpty()) { + String yi = ""; + String yuan = ""; + OldSystem old = new OldSystem(); + for (String fileId : asList) { + //循环调用每一个 文件 获取文件名称 + String id = fileId; + AttFileEO byId = attFileEOService.getFileInfo(id); + String theSame = isTheSame(byId.getOldFileName(), SarStandardsInfo.getBuildId()); + if (theSame.equals("1")) { + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = "," + fileId; + } else { + yi = fileId; + } } else { - yi = fileId; - } - } else { - if (StringUtils.isNotBlank(yuan)) { - yuan = "," + fileId; - } else { - yuan = fileId; - } + if (StringUtils.isNotBlank(yuan)) { + yuan = "," + fileId; + } else { + yuan = fileId; + } + } } } + if (StringUtils.isNotBlank(yi)) { + old.setTranslation(yi); + } + if (StringUtils.isNotBlank(yuan)) { + old.setOriginal(yuan); + } + if (StringUtils.isNotBlank(yi) || StringUtils.isNotBlank(yuan)) { + old.setStandId(SarStandardsInfo.getStandId()); + oldArr.add(old); + } + } else { + //记录 同一条数据名称一样的 + for (AttFileEO fileEO : attFileEOS) { + fileEO.setResId("h-" + SarStandardsInfo.getStandId()); + fileEOArrayList.add(fileEO); + } } - if (StringUtils.isNotBlank(yi)) { - old.setTranslation(yi); - } - if (StringUtils.isNotBlank(yuan)) { - old.setOriginal(yuan); - } - if (StringUtils.isNotBlank(yi) || StringUtils.isNotBlank(yuan)) { - old.setStandId(SarStandardsInfo.getStandId()); - oldArr.add(old); - } - } else { - //记录 同一条数据名称一样的 - for (AttFileEO fileEO : attFileEOS) { - fileEO.setResId("h-" + SarStandardsInfo.getStandId()); - fileEOArrayList.add(fileEO); + } + }else { + // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走 + String yi = ""; + String yuan = ""; + OldSystem old = new OldSystem(); + //循环调用每一个 文件 获取文件名称 + String id = SarStandardsInfo.getFileId(); + AttFileEO byId = attFileEOService.getFileInfo(id); + String theSame = isTheSame(byId.getOldFileName(), SarStandardsInfo.getBuildId()); + if (theSame.equals("1")) { + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = "," + SarStandardsInfo.getFileId(); + } else { + yi = SarStandardsInfo.getFileId(); + } + } else { + if (StringUtils.isNotBlank(yuan)) { + yuan = "," + SarStandardsInfo.getFileId(); + } else { + yuan = SarStandardsInfo.getFileId(); + } + } } + if (StringUtils.isNotBlank(yi)) { + old.setTranslation(yi); + } + if (StringUtils.isNotBlank(yuan)) { + old.setOriginal(yuan); + } + if (StringUtils.isNotBlank(yi) || StringUtils.isNotBlank(yuan)) { + old.setStandId(SarStandardsInfo.getStandId()); + oldArr.add(old); + } } } } @@ -2848,59 +2888,99 @@ public class SarBussionessStandServiceImpl extends ServiceImpl asList = Arrays.asList(fileIdArr); - if(asList.size()>0) { - // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走 - List attFileEOS = newFileNameRepetition(asList); - if(attFileEOS.isEmpty()) { - String yi = ""; - String yuan = ""; - OldSystem old = new OldSystem(); - for (String fileId : asList) { - //循环调用每一个 文件 获取文件名称 - String id = fileId; - AttFileEO byId = attFileEOService.getFileInfo(id); - String theSame = isTheSame(byId.getOldFileName(), sarBussionessStand.getBuildId()); - if (theSame.equals("1")) { - //证明找到文件名称一致的了 - OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); - //原文译文 进行判断 - if (sortSign.getSortSign().contains("译")) { - if (StringUtils.isNotBlank(yi)) { - yi = "," + fileId; + if(sarBussionessStand.getFileId().contains(",")){ + String[] fileIdArr = sarBussionessStand.getFileId().split(","); + List asList = Arrays.asList(fileIdArr); + if(asList.size()>0) { + // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走 + List attFileEOS = newFileNameRepetition(asList); + if(attFileEOS.isEmpty()) { + String yi = ""; + String yuan = ""; + OldSystem old = new OldSystem(); + for (String fileId : asList) { + //循环调用每一个 文件 获取文件名称 + String id = fileId; + AttFileEO byId = attFileEOService.getFileInfo(id); + String theSame = isTheSame(byId.getOldFileName(), sarBussionessStand.getBuildId()); + if (theSame.equals("1")) { + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = "," + fileId; + } else { + yi = fileId; + } } else { - yi = fileId; - } - } else { - if (StringUtils.isNotBlank(yuan)) { - yuan = "," + fileId; - } else { - yuan = fileId; - } + if (StringUtils.isNotBlank(yuan)) { + yuan = "," + fileId; + } else { + yuan = fileId; + } + } } } + if (StringUtils.isNotBlank(yi)) { + old.setTranslation(yi); + } + if (StringUtils.isNotBlank(yuan)) { + old.setOriginal(yuan); + } + if(StringUtils.isNotBlank(yi) || StringUtils.isNotBlank(yuan)){ + old.setStandId(sarBussionessStand.getStandId()); + oldArr1.add(old); + } + }else { + //记录 同一条数据名称一样的 + for (AttFileEO fileEO:attFileEOS) { + //记录重复 此id企业或者海外的id + fileEO.setResId("q-"+sarBussionessStand.getStandId()); + fileEOArrayList.add(fileEO); + } } - if (StringUtils.isNotBlank(yi)) { - old.setTranslation(yi); - } - if (StringUtils.isNotBlank(yuan)) { - old.setOriginal(yuan); - } - if(StringUtils.isNotBlank(yi) || StringUtils.isNotBlank(yuan)){ - old.setStandId(sarBussionessStand.getStandId()); - oldArr1.add(old); - } - }else { - //记录 同一条数据名称一样的 - for (AttFileEO fileEO:attFileEOS) { - //记录重复 此id企业或者海外的id - fileEO.setResId("q-"+sarBussionessStand.getStandId()); - fileEOArrayList.add(fileEO); - } - } + } + }else { + // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走 + String yi = ""; + String yuan = ""; + OldSystem old = new OldSystem(); + //循环调用每一个 文件 获取文件名称 + String id = sarBussionessStand.getFileId(); + AttFileEO byId = attFileEOService.getFileInfo(id); + String theSame = isTheSame(byId.getOldFileName(), sarBussionessStand.getBuildId()); + if (theSame.equals("1")) { + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = "," + sarBussionessStand.getFileId(); + } else { + yi = sarBussionessStand.getFileId(); + } + } else { + if (StringUtils.isNotBlank(yuan)) { + yuan = "," + sarBussionessStand.getFileId(); + } else { + yuan = sarBussionessStand.getFileId(); + } + + } + } + if (StringUtils.isNotBlank(yi)) { + old.setTranslation(yi); + } + if (StringUtils.isNotBlank(yuan)) { + old.setOriginal(yuan); + } + if(StringUtils.isNotBlank(yi) || StringUtils.isNotBlank(yuan)){ + old.setStandId(sarBussionessStand.getStandId()); + oldArr1.add(old); + } } } }