译文原文问题(返回文件有名称重复)

This commit is contained in:
gaojiabao
2023-03-13 10:52:18 +08:00
parent e13d97769d
commit 99eb785b9d
@@ -2762,9 +2762,11 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
//数据组合 //数据组合
List<OldSystem> oldArr = new ArrayList(); List<OldSystem> oldArr = new ArrayList();
List<OldSystem> oldArr1 = new ArrayList(); List<OldSystem> oldArr1 = new ArrayList();
//记录同一数据下文件名重复的
List<AttFileEO> fileEOArrayList= new ArrayList<>();
//海外国内的文件数据处理 处理逻辑对比 文件的名称 一致的情况下 则看老数据库 是否有对应的分类 原文 译文 //海外国内的文件数据处理 处理逻辑对比 文件的名称 一致的情况下 则看老数据库 是否有对应的分类 原文 译文
for (OldSystem SarStandardsInfo: SarStandardsInfoList){ for (OldSystem SarStandardsInfo: SarStandardsInfoList){
for (OldSystem oldSystem : oldSystemInfoList) { for (OldSystem oldSystem : oldSystemInfoList) {
if(StringUtils.isNotBlank(SarStandardsInfo.getBuildId())){ if(StringUtils.isNotBlank(SarStandardsInfo.getBuildId())){
if(oldSystem.getLoreDocId().equals(SarStandardsInfo.getBuildId())) { if(oldSystem.getLoreDocId().equals(SarStandardsInfo.getBuildId())) {
@@ -2773,43 +2775,53 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
String[] fileIdArr = SarStandardsInfo.getFileId().split(","); String[] fileIdArr = SarStandardsInfo.getFileId().split(",");
List<String> asList = Arrays.asList(fileIdArr); List<String> asList = Arrays.asList(fileIdArr);
if(asList.size()>0) { if(asList.size()>0) {
String yi = ""; // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走
String yuan = ""; List<AttFileEO> attFileEOS = newFileNameRepetition(asList);
OldSystem old = new OldSystem(); if(attFileEOS.isEmpty()) {
for (String fileId : asList) { String yi = "";
//循环调用每一个 文件 获取文件名称 String yuan = "";
String id = fileId; OldSystem old = new OldSystem();
AttFileEO byId = attFileEOService.getFileInfo(id); for (String fileId : asList) {
String theSame = isTheSame(byId.getOldFileName(),SarStandardsInfo.getBuildId()); //循环调用每一个 文件 获取文件名称
if(theSame.equals("1")){ String id = fileId;
//证明找到文件名称一致的了 AttFileEO byId = attFileEOService.getFileInfo(id);
OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); String theSame = isTheSame(byId.getOldFileName(), SarStandardsInfo.getBuildId());
//原文译文 进行判断 if (theSame.equals("1")) {
if (sortSign.getSortSign().contains("")) { //证明找到文件名称一致的了
if (StringUtils.isNotBlank(yi)) { OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId());
yi = "," + fileId; //原文译文 进行判断
} else { if (sortSign.getSortSign().contains("")) {
yi = fileId; if (StringUtils.isNotBlank(yi)) {
} yi = "," + fileId;
} else { } else {
if (StringUtils.isNotBlank(yuan)) { yi = fileId;
yuan = "," + fileId; }
} else { } else {
yuan = fileId; if (StringUtils.isNotBlank(yuan)) {
} yuan = "," + fileId;
} else {
yuan = fileId;
}
} }
} }
} }
if (StringUtils.isNotBlank(yi)) { if (StringUtils.isNotBlank(yi)) {
old.setTranslation(yi); old.setTranslation(yi);
} }
if (StringUtils.isNotBlank(yuan)) { if (StringUtils.isNotBlank(yuan)) {
old.setOriginal(yuan); old.setOriginal(yuan);
} }
if(StringUtils.isNotBlank(yi) || StringUtils.isNotBlank(yuan)){ if(StringUtils.isNotBlank(yi) || StringUtils.isNotBlank(yuan)){
old.setStandId(SarStandardsInfo.getStandId()); old.setStandId(SarStandardsInfo.getStandId());
oldArr.add(old); oldArr.add(old);
}
}else {
//记录 同一条数据名称一样的
for (AttFileEO fileEO:attFileEOS) {
fileEO.setResId("h-"+SarStandardsInfo.getStandId());
fileEOArrayList.add(fileEO);
}
} }
} }
} }
@@ -2828,44 +2840,56 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
String[] fileIdArr = sarBussionessStand.getFileId().split(","); String[] fileIdArr = sarBussionessStand.getFileId().split(",");
List<String> asList = Arrays.asList(fileIdArr); List<String> asList = Arrays.asList(fileIdArr);
if(asList.size()>0) { if(asList.size()>0) {
String yi = ""; // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走
String yuan = ""; List<AttFileEO> attFileEOS = newFileNameRepetition(asList);
OldSystem old = new OldSystem(); if(attFileEOS.isEmpty()) {
for (String fileId : asList) { String yi = "";
//循环调用每一个 文件 获取文件名称 String yuan = "";
String id = fileId; OldSystem old = new OldSystem();
AttFileEO byId = attFileEOService.getFileInfo(id); for (String fileId : asList) {
String theSame = isTheSame(byId.getOldFileName(),sarBussionessStand.getBuildId()); //循环调用每一个 文件 获取文件名称
if(theSame.equals("1")){ String id = fileId;
//证明找到文件名称一致的了 AttFileEO byId = attFileEOService.getFileInfo(id);
OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); String theSame = isTheSame(byId.getOldFileName(), sarBussionessStand.getBuildId());
//原文译文 进行判断 if (theSame.equals("1")) {
if (sortSign.getSortSign().contains("")) { //证明找到文件名称一致的了
if (StringUtils.isNotBlank(yi)) { OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId());
yi = "," + fileId; //原文译文 进行判断
if (sortSign.getSortSign().contains("")) {
if (StringUtils.isNotBlank(yi)) {
yi = "," + fileId;
} else {
yi = fileId;
}
} else { } else {
yi = fileId; if (StringUtils.isNotBlank(yuan)) {
} yuan = "," + fileId;
} else { } else {
if (StringUtils.isNotBlank(yuan)) { yuan = fileId;
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);
}
} }
} }
} }
@@ -2897,7 +2921,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
sarStandAttrInfoEODao.updateById(sarStandAttrInfo); sarStandAttrInfoEODao.updateById(sarStandAttrInfo);
logger.info("海外国内修改成功"); logger.info("海外国内修改成功");
} }
return Result.success(); return Result.success(fileEOArrayList);
} }
public String isTheSame (String oldFileName,String buildId){ public String isTheSame (String oldFileName,String buildId){
@@ -2953,4 +2977,22 @@ public class SarBussionessStandServiceImpl extends ServiceImpl<SarBussionessStan
} }
return Result.success(null,"数量="+set.size()+"====",set); return Result.success(null,"数量="+set.size()+"====",set);
} }
public List<AttFileEO> newFileNameRepetition(List<String> asList){
List<AttFileEO> attFileEOS = new ArrayList<>();
List<AttFileEO> attFileEOArrayList = new ArrayList<>();
for (String fileId : asList){
AttFileEO byId = attFileEOService.getFileInfo(fileId);
attFileEOS.add(byId);
}
for (AttFileEO data:attFileEOS) {
for (AttFileEO file:attFileEOS){
if(!data.getId().equals(file.getId())){
if(data.getOldFileName().equals(file.getOldFileName())){
attFileEOArrayList.add(data);
}
}
}
}
return attFileEOArrayList;
}
} }