From d6f41b63a86cc94cfb17a1020c078b9681896db5 Mon Sep 17 00:00:00 2001 From: SUNJIABIN Date: Thu, 9 Mar 2023 14:13:58 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E4=BC=81=E6=A0=87=E6=8A=80=E6=9C=AF?= =?UTF-8?q?=E6=A0=87=E5=87=86=E5=8E=86=E5=8F=B2=E7=89=88=E6=9C=AC=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/SarBussionessStandController.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java index 7f93d5b5..a2b87d3f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java @@ -221,6 +221,16 @@ public class SarBussionessStandController extends BaseController Date: Wed, 22 Mar 2023 18:07:19 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E8=8B=B1=E8=AF=91=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=92=8C=E6=97=A0=E6=B3=95=E5=A4=84=E7=90=86?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E8=BF=9B=E8=A1=8C=E8=BF=94=E5=9B=9E=EF=BC=88?= =?UTF-8?q?=E5=85=AC=E4=BC=97=E5=8F=B7=E5=92=8C=E6=96=87=E4=BB=B6id?= =?UTF-8?q?=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SarBussionessStandController.java | 6 +- .../sarBussionessStand/entity/OldSystem.java | 39 + .../entity/OldSystemVo.java | 15 + .../service/ISarBussionessStandService.java | 1 + .../impl/SarBussionessStandServiceImpl.java | 1465 ++++++++++++++++- .../dao/SarStandAttrInfoDao.java | 5 + .../dao/SarStandardsInfoDao.java | 13 + .../SarStandAttrInfoMapper.xml | 12 + .../SarStandardsInfoMapper.xml | 149 +- 9 files changed, 1656 insertions(+), 49 deletions(-) create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/entity/OldSystem.java create mode 100644 adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/entity/OldSystemVo.java diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java index a2b87d3f..4c2f496f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarBussionessStand/controller/SarBussionessStandController.java @@ -376,7 +376,11 @@ public class SarBussionessStandController extends BaseController void checkFileByEncrypt(); + ResponseMessage emptyFileAnewStorage(String type); } 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 6b67f662..ff3e11d0 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 @@ -3,12 +3,12 @@ package com.adc.da.slrs.sarBussionessStand.service.impl; import cn.hutool.core.bean.BeanUtil; import com.adc.da.att.entity.AttFileEO; import com.adc.da.att.service.IAttFileEOService; -import com.adc.da.common.ConvertMqEO; -import com.adc.da.common.SarTypeEnum; -import com.adc.da.common.SelectionTypeEnum; -import com.adc.da.common.UseModuleEnum; +import com.adc.da.att.vo.AttFileVo; +import com.adc.da.common.*; +import com.adc.da.exception.AdcDaBaseException; import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; +import com.adc.da.login.util.UserUtils; import com.adc.da.mq.CreateMQService; import com.adc.da.mq.CreateStandMQService; import com.adc.da.person.dao.PersonCollectEODao; @@ -20,10 +20,14 @@ import com.adc.da.search.entity.StandLawsEO; import com.adc.da.search.service.StandLawsSearchService; import com.adc.da.slrs.NewsFeed.entity.NewsFeed; import com.adc.da.slrs.NewsFeed.service.INewsFeedService; +import com.adc.da.slrs.esRevisePlan.dao.EsRevisePlanDao; +import com.adc.da.slrs.esRevisePlan.dao.EsRevisePlanLogDao; +import com.adc.da.slrs.esRevisePlan.service.IEsRevisePlanService; import com.adc.da.slrs.otConvertMq.dao.OtConvertMqDao; import com.adc.da.slrs.otConvertMq.entity.OtConvertMq; import com.adc.da.slrs.sarBussStandAttrInfo.dao.SarBussStandAttrInfoDao; import com.adc.da.slrs.sarBussStandAttrInfo.entity.SarBussStandAttrInfo; +import com.adc.da.slrs.sarBussStandAttrInfo.service.ISarBussStandAttrInfoService; import com.adc.da.slrs.sarBussStandFile.dao.SarBussStandFileDao; import com.adc.da.slrs.sarBussStandFile.entity.SarBussStandFile; import com.adc.da.slrs.sarBussStandItems.dao.SarBussStandItemsDao; @@ -33,20 +37,21 @@ import com.adc.da.slrs.sarBussStandSn.entity.SarBussStandSn; import com.adc.da.slrs.sarBussStandSn.service.ISarBussStandSnService; import com.adc.da.slrs.sarBussStandVal.dao.SarBussStandValDao; import com.adc.da.slrs.sarBussStandVal.entity.SarBussStandVal; +import com.adc.da.slrs.sarBussionessStand.entity.OldSystem; +import com.adc.da.slrs.sarBussionessStand.entity.OldSystemVo; import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStand; import com.adc.da.slrs.sarBussionessStand.dao.SarBussionessStandDao; import com.adc.da.slrs.sarBussionessStand.entity.SarBussionessStandExport; import com.adc.da.slrs.sarBussionessStand.service.ISarBussionessStandService; -import com.adc.da.slrs.sarMenuStandard.entity.SarMenuStandardNew; -import com.adc.da.slrs.sarMenuStandard.service.ISarMenuStandardNewService; +import com.adc.da.slrs.sarBussionessStandState.service.ISarBussionessStandStateService; +import com.adc.da.slrs.sarEnterpriseStandardEvaluation.service.IQualityEvaluationService; +import com.adc.da.slrs.sarLawsInfo.service.ISarLawsInfoService; import com.adc.da.slrs.sarResource.entity.TsResource; import com.adc.da.slrs.sarResource.service.ITsResourceService; import com.adc.da.slrs.sarStandAttrInfo.dao.SarStandAttrInfoDao; -import com.adc.da.slrs.sarStandFile.entity.SarStandFile; import com.adc.da.slrs.sarStandardsInfo.dao.SarStandardsInfoDao; import com.adc.da.slrs.sarStandardsInfo.entity.SarAdvanceSearchVO; import com.adc.da.slrs.sarStandardsInfo.entity.SarBussionessStandEOPage; -import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfo; import com.adc.da.slrs.sarUpdLog.service.ISarUpdLogService; import com.adc.da.slrs.sarUser.service.ITsUserService; import com.adc.da.slrs.sysInfo.service.SysInfoEOService; @@ -58,12 +63,19 @@ import com.adc.da.sys.sarMenuStandard.service.ISarMenuStandardService; import com.adc.da.sys.util.LoginUserUtil; import com.adc.da.util.UUIDUtils; import com.adc.da.utils.util.*; +import com.adc.da.utils.util.DateUtil; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.serializer.SerializerFeature; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.mysql.cj.x.protobuf.MysqlxDatatypes; +import lombok.SneakyThrows; import net.sf.json.JSONObject; import org.apache.commons.beanutils.BeanUtils; import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.io.FileUtils; import org.apache.commons.lang.StringUtils; +import org.json.JSONArray; import org.json.JSONTokener; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -71,9 +83,21 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; +import org.springframework.web.multipart.MultipartFile; +import javax.net.ssl.*; +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.net.HttpURLConnection; +import java.net.MalformedURLException; +import java.net.URL; +import java.security.SecureRandom; +import java.security.cert.CertificateException; +import java.security.cert.X509Certificate; import java.sql.Clob; import java.text.DateFormat; +import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; @@ -172,6 +196,33 @@ public class SarBussionessStandServiceImpl extends ServiceImpl readImpExcelFile(String path) { + File file = new File(path); + List resultlist = new ArrayList<>(); + if (file.isDirectory()) { + File[] files = file.listFiles(); + for (File fi : files) { + // 对文件进行过滤,读取所有文件 + String name = fi.getName(); + //文件不为空 添加 + if (name != null){ + resultlist.add(fi); + } + } + } + return resultlist; + } + + public String processCreateBuss(String standJson) throws Exception{ + Map standMap = new HashMap(); + standMap = com.alibaba.fastjson.JSONObject.parseObject(standJson); + String bussId = ""; + if (standMap != null && !standMap.isEmpty()) { + + SarBussionessStand sarBussionessStand = new SarBussionessStand(); + + Map attInfoMap = new HashMap<>(); + List jsonArray = new ArrayList<>(); + Object breakVal = null; + Object itemList = null; + for (Map.Entry entry : standMap.entrySet()) { + String field = entry.getKey().toUpperCase(); + Object value = entry.getValue(); + if (InitStandAttrUtil.queryFieldListBuss.contains(field)) { + if (value instanceof com.alibaba.fastjson.JSONArray) { + String valStr = String.valueOf(value); + List valueArr = com.alibaba.fastjson.JSONArray.parseArray(valStr,String.class); + if (valueArr != null && !valueArr.isEmpty()) { + String newValue = ""; + for (String val : valueArr) { + newValue += val + ","; + } + newValue = newValue.substring(0,newValue.length()-1); + value = newValue; + }else { + value = ""; + } + } + attInfoMap.put(field,value); + } else { + createStandBaseField(sarBussionessStand,entry.getKey(),value); + } + } + String resData = JSON.toJSONString(attInfoMap, SerializerFeature.WriteMapNullValue); + sarBussionessStand.setSarStandAttrEOStr(resData); + // 根据标准号判断数据是否已存在 + //2021年4月9日 此处检查当前是否存在standId + QueryWrapperqueryWrapper = new QueryWrapper<>(); + queryWrapper.eq(sarBussionessStand.getStandCode() != null,"STAND_CODE",sarBussionessStand.getStandCode()) + .eq(sarBussionessStand.getStandName() != null,"STAND_NAME",sarBussionessStand.getStandName()); + Integer count = iSarBussionessStandService.count(queryWrapper); + if (count > 0){ + //return Result.error("当前企标标准号和企标名称已存在"); + throw new AdcDaBaseException("企标标准号"+ sarBussionessStand.getStandCode() +"或企标名称"+ sarBussionessStand.getStandName() +"已存在"); + } + + String standCode = ""; + if(StringUtils.isNotBlank(sarBussionessStand.getStandCode()) && !"null".equals(sarBussionessStand.getStandCode())){ + standCode = sarBussionessStand.getStandCode(); + } + List lawsList = iSarBussionessStandService.selectStandardsByStandNumber(standCode); + + //此处判断是否是带入的标准 + if(StringUtils.isNotBlank(sarBussionessStand.getId())) { + bussId = sarBussionessStand.getId(); + SarBussionessStand query = new SarBussionessStand(); + query.setId(sarBussionessStand.getId()); + iSarBussionessStandService.attrInfoDetails(query); + Map attrInfoMap = query.getAttrInfoMap(); + if(attInfoMap!=null && !attInfoMap.isEmpty()){ + resData = JSON.toJSONString(attInfoMap, SerializerFeature.WriteMapNullValue); + sarBussionessStand.setSarStandAttrEOStr(resData); + } + + // 编辑标准 + iSarBussionessStandService.updateSarBussionessStand(sarBussionessStand); + + }else if (lawsList != null && !lawsList.isEmpty()) {//Id不存在,但是标准号存在的情况 + String standId = lawsList.get(0).getId(); + bussId = lawsList.get(0).getId(); + SarBussionessStand query = new SarBussionessStand(); + query.setId(standId); + iSarBussionessStandService.attrInfoDetails(query); + Map attrInfoMap = query.getAttrInfoMap(); + if(attInfoMap!=null && !attInfoMap.isEmpty()){ +// updateStandFileFieldData(attInfoMap,attrInfoMap); + resData = JSON.toJSONString(attInfoMap, SerializerFeature.WriteMapNullValue); + sarBussionessStand.setSarStandAttrEOStr(resData); + } + + // 编辑标准 + sarBussionessStand.setId(standId); + iSarBussionessStandService.updateSarBussionessStand(sarBussionessStand); + + } else {//标准号、ID都不存在的情况 + // 新增方法 + sarBussionessStand.setStandCode(standCode); + iSarBussionessStandService.createSarBussionessStand(sarBussionessStand); + } + } + return null; + } + + /** + * 处理标准基础库字段 + * @param sarBussionessStand + * @param field + * @param value + * @throws Exception + */ + public void createStandBaseField (SarBussionessStand sarBussionessStand,String field,Object value) throws Exception{ + String valueStr = ""; + if (value != null) { + valueStr = String.valueOf(value); + } + switch (field) { + case "id": sarBussionessStand.setId(valueStr); break; + case "standSort": sarBussionessStand.setStandSort(valueStr); break; + case "standNumber": sarBussionessStand.setStandNumber(valueStr); break; + case "standYear": sarBussionessStand.setStandYear(valueStr); break; + case "standCode": sarBussionessStand.setStandCode(valueStr); break; + case "standName": sarBussionessStand.setStandName(valueStr); break; + case "standEnName": sarBussionessStand.setStandEnName(valueStr); break; + case "textStatusBuss": sarBussionessStand.setTextStatusBuss(valueStr); break; + case "reviseStatus": sarBussionessStand.setReviseStatus(valueStr); break; + case "standSn": sarBussionessStand.setStandSn(valueStr); break; + case "issueTime": + if (StringUtils.isNotBlank(valueStr)) { + sarBussionessStand.setIssueTime(tTo(valueStr)); + } + break; + case "putTime": + if (StringUtils.isNotBlank(valueStr)) { + sarBussionessStand.setPutTime(tTo(valueStr)); + } + break; + case "prcNum": sarBussionessStand.setProcessNum(valueStr); break; + case "menuId": sarBussionessStand.setMenuId(valueStr); break; + case "fileWord": + if (StringUtils.isNotBlank(sarBussionessStand.getFileIds()) && StringUtils.isNotBlank(valueStr)) { + valueStr = sarBussionessStand.getFileIds() + "," + valueStr; + } + sarBussionessStand.setFileIds(valueStr); break; + case "filePdf": + if (StringUtils.isNotBlank(sarBussionessStand.getFileIds()) && StringUtils.isNotBlank(valueStr)) { + valueStr = sarBussionessStand.getFileIds() + "," + valueStr; + } + sarBussionessStand.setFileIds(valueStr); + break; + default: break; + } + } + + private String tTo(String dateStr){ + return dateStr.contains("T") ? dateStr.split("T")[0] : dateStr; + } + + //1:数据迁移方案 + //方案一:清空附件 重新挂靠 + //1.流程: + //a.备份并清空新系统中标准下附件 + //识别老系统中原文标签下标准对应新系统标准数据 + //b.将老系统中原文附件迁移至新系统存储空间,涉及到文件的复制和转码(其中转码失败率比较高,需要一定时间) + //c.对应的文件路径储存在新系统数据库中,并且对应挂靠新系统中标准的发布稿原文下 + //d.搜索中心的刷新 + // + //2.关联关系 + //新系统中数据表sar_standards_info表的BUILD_ID字段,对应老系统中数据表kmpro_addon34表的lore_doc_id字段 + // + //老系统中 + //kmpro_addon34表,记录所有标准信息 + //lore_depot_sort 表中Sign字段可以看出是原文或译文 + //lore_attache表中记录附件名称和路径 + // + //新系统中 + //sar_standards_info表,记录所有海外标准信息 + //sar_buss_stand_attr_info表,记录标准对应附件(目前只有发布稿原文的字段,没有发布稿译文的存储字段。。) + //att_file_01——att_file_10表,记录附件对应存储位置 + // + @Override + public ResponseMessage emptyFileAnewStorage(String type) { + //数据组合 + List oldArr = new ArrayList(); + // + List objectList = new ArrayList<>(); + // 被修改的标准号和文件 + Set UpdateStandNumberFileList = new HashSet<>(); + // 无法处理的信息 标准号 和文件id + Set cannotModifyStandNumberFileList = new HashSet<>(); + //海外国内的文件数据处理 处理逻辑对比 文件的名称 一致的情况下 则看老数据库 是否有对应的分类 原文 译文 + if(type.equals("海外")) { + List SarStandardsInfoList = sarStandardsInfoDao.selectListInfo("FOREIGN"); + for (OldSystem SarStandardsInfo : SarStandardsInfoList) { + String yi = ""; + String yuan = ""; + OldSystem old = new OldSystem(); + if (StringUtils.isNotBlank(SarStandardsInfo.getBuildId())) { + if(SarStandardsInfo.getBuildId().contains(",")){ + String[] buildIdArr = SarStandardsInfo.getBuildId().split(","); + List buildIdList = Arrays.asList(buildIdArr); + if(!buildIdList.isEmpty()){ + for (String bid: buildIdList){ + List OldSystem1 = sarStandardsInfoDao.selectOldSystemInfoByBuidId(bid); + if(!OldSystem1.isEmpty()){ + OldSystem oldSystem =OldSystem1.get(0); + if (oldSystem.getLoreDocId().equals(bid)) { + //通过,号分割文件,通过id去查询文件 获取文件名称 + if (StringUtils.isNotBlank(SarStandardsInfo.getFileId())) { + if(SarStandardsInfo.getFileId().contains(",")) { + String[] fileIdArr = SarStandardsInfo.getFileId().split(","); + List asList = Arrays.asList(fileIdArr); + if (asList.size() > 0) { + // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走 + Set attFileEOS = newFileNameRepetition(asList); + if (attFileEOS.isEmpty()) { + for (String fileId : asList) { + //循环调用每一个 文件 获取文件名称 + String id = fileId; + AttFileEO byId = attFileEOService.getFileInfo(id); + if(byId!=null) { + String theSame = isTheSame(byId.getOldFileName(), bid); + if (theSame.equals("1")) { + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if(sortSign != null) { + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = yi+"," + fileId; + } else { + yi = fileId; + } + } else { + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan+"," + fileId; + } else { + yuan = fileId; + } + } + } + + } + } + } + } else { + int numberCount = 0; + //只允许2个文件名称相同 + for (AttFileEO data : attFileEOS) { + numberCount = 0; + for (AttFileEO file : attFileEOS) { + if (data.getOldFileName().equals(file.getOldFileName())) { + numberCount = numberCount+1; + } + } + } + if(numberCount==2){ + //1:文件名称重复的情况下 判断文件的大小 大的为中文 小的为英文,一样大则存入 + List attFileEOS1 = newFileNameRepetitionInfo(asList); + // 不相等的数据 notRepeatedFile 重复的文件 attFileEOS + List notRepeatedFile = duplicateFiles(attFileEOS1, attFileEOS); + if(!notRepeatedFile.isEmpty()){ + //不重复数据在老库中是否存在 selectOldSystemFileBuildId + for (AttFileEO file: notRepeatedFile){ + String theSame = isTheSame(file.getOldFileName(), bid); + //1 有相同 -1 无相同 + if(theSame.equals("1")){ + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if(sortSign != null) { + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = yi+"," + file.getId(); + } else { + yi = file.getId(); + } + } else { + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan+"," + file.getId(); + } else { + yuan = file.getId(); + } + } + } + } + } + + } else { + //相同文件处理 + List arrayList = new ArrayList<>(); + for (AttFileEO data : attFileEOS) { + arrayList.add(data); + } + String theSame = isTheSame(arrayList.get(0).getOldFileName(), bid); + if (theSame.equals("1")) { + File file1 = new File("E:/data/slrs/file/" + arrayList.get(0).getFilePath() + arrayList.get(0).getFileName()); + File file2 = new File("E:/data/slrs/file/" + arrayList.get(1).getFilePath() + arrayList.get(1).getFileName()); + //判断两个文件大小 //相等 则不做处理 + long length1 = file1.length(); + long length2 = file2.length(); + if (length1 > length2) { + //1 中文 2英文 + if (StringUtils.isNotBlank(yi)) { + yi = yi + "," + arrayList.get(1).getId(); + } else { + yi = arrayList.get(1).getId(); + } + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan + "," + arrayList.get(0).getId(); + } else { + yuan = arrayList.get(0).getId(); + } + } + if (length1 < length2) { + if (StringUtils.isNotBlank(yi)) { + yi = yi + "," + arrayList.get(0).getId(); + } else { + yi = arrayList.get(0).getId(); + } + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan + "," + arrayList.get(1).getId(); + } else { + yuan = arrayList.get(1).getId(); + } + } + } + } + }else { + //记录所有疑问的数据 + OldSystemVo oldSystemVo = new OldSystemVo(); + oldSystemVo.setId(SarStandardsInfo.getStandId()); + oldSystemVo.setStandNumber(SarStandardsInfo.getStandNumber()); + oldSystemVo.setOriginalFileId(SarStandardsInfo.getFileId()); + cannotModifyStandNumberFileList.add(oldSystemVo); + } + + } + } + }else { + String id = SarStandardsInfo.getFileId(); + AttFileEO byId = attFileEOService.getFileInfo(id); + if(byId!=null){ + String theSame = isTheSame(byId.getOldFileName(), bid); + if (theSame.equals("1")) { + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if(sortSign != null) { + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = yi+"," + SarStandardsInfo.getFileId(); + } else { + yi = SarStandardsInfo.getFileId(); + } + } else { + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan+"," + SarStandardsInfo.getFileId(); + } else { + yuan = SarStandardsInfo.getFileId(); + } + } + } + } + } + } + } + } + } + } + } + }else { + List OldSystem1 = sarStandardsInfoDao.selectOldSystemInfoByBuidId(SarStandardsInfo.getBuildId()); + if(!OldSystem1.isEmpty()){ + OldSystem oldSystem =OldSystem1.get(0); + if (oldSystem.getLoreDocId().equals(SarStandardsInfo.getBuildId())) { + //通过,号分割文件,通过id去查询文件 获取文件名称 + if (StringUtils.isNotBlank(SarStandardsInfo.getFileId())) { + if(SarStandardsInfo.getFileId().contains(",")) { + String[] fileIdArr = SarStandardsInfo.getFileId().split(","); + List asList = Arrays.asList(fileIdArr); + if (asList.size() > 0) { + // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走 + Set attFileEOS = newFileNameRepetition(asList); + if (attFileEOS.isEmpty()) { + for (String fileId : asList) { + //循环调用每一个 文件 获取文件名称 + String id = fileId; + AttFileEO byId = attFileEOService.getFileInfo(id); + if(byId!=null){ + String theSame = isTheSame(byId.getOldFileName(), SarStandardsInfo.getBuildId()); + if (theSame.equals("1")) { + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if(sortSign != null) { + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = yi+"," + fileId; + } else { + yi = fileId; + } + } else { + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan+"," + fileId; + } else { + yuan = fileId; + } + + } + } + } + } + } + } else { + int numberCount = 0; + //只允许2个文件名称相同 + for (AttFileEO data : attFileEOS) { + numberCount = 0; + for (AttFileEO file : attFileEOS) { + if (data.getOldFileName().equals(file.getOldFileName())) { + numberCount = numberCount+1; + } + } + } + if(numberCount==2){ + //1:文件名称重复的情况下 判断文件的大小 大的为中文 小的为英文,一样大则存入 + List attFileEOS1 = newFileNameRepetitionInfo(asList); + // 不相等的数据 notRepeatedFile 重复的文件 attFileEOS + List notRepeatedFile = duplicateFiles(attFileEOS1, attFileEOS); + if(!notRepeatedFile.isEmpty()){ + //不重复数据在老库中是否存在 selectOldSystemFileBuildId + for (AttFileEO file: notRepeatedFile){ + String theSame = isTheSame(file.getOldFileName(), SarStandardsInfo.getBuildId()); + //1 有相同 -1 无相同 + if(theSame.equals("1")){ + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if(sortSign != null) { + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = yi+"," + file.getId(); + } else { + yi = file.getId(); + } + } else { + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan+"," + file.getId(); + } else { + yuan = file.getId(); + } + } + } + } + } + + }else { + //相同文件处理 + List arrayList = new ArrayList<>(); + for (AttFileEO data : attFileEOS) { + arrayList.add(data); + } + String theSame = isTheSame(arrayList.get(0).getOldFileName(), SarStandardsInfo.getBuildId()); + if (theSame.equals("1")) { + File file1 = new File( "E:/data/slrs/file/" + arrayList.get(0).getFilePath() + arrayList.get(0).getFileName()); + File file2 = new File( "E:/data/slrs/file/" + arrayList.get(1).getFilePath() + arrayList.get(1).getFileName()); + //判断两个文件大小 //相等 则不做处理 + long length1 = file1.length(); + long length2 = file2.length(); + if (length1 > length2) { + //1 中文 2英文 + if (StringUtils.isNotBlank(yi)) { + yi = yi + "," + arrayList.get(1).getId(); + } else { + yi = arrayList.get(1).getId(); + } + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan + "," + arrayList.get(0).getId(); + } else { + yuan = arrayList.get(0).getId(); + } + } + if (length1 < length2) { + if (StringUtils.isNotBlank(yi)) { + yi = yi + "," + arrayList.get(0).getId(); + } else { + yi = arrayList.get(0).getId(); + } + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan + "," + arrayList.get(1).getId(); + } else { + yuan = arrayList.get(1).getId(); + } + } + } + } + }else { + //记录所有疑问的数据 + OldSystemVo oldSystemVo = new OldSystemVo(); + oldSystemVo.setId(SarStandardsInfo.getStandId()); + oldSystemVo.setStandNumber(SarStandardsInfo.getStandNumber()); + oldSystemVo.setOriginalFileId(SarStandardsInfo.getFileId()); + cannotModifyStandNumberFileList.add(oldSystemVo); + } + + } + } + }else { + //循环调用每一个 文件 获取文件名称 + String id = SarStandardsInfo.getFileId(); + AttFileEO byId = attFileEOService.getFileInfo(id); + if(byId!=null){ + String theSame = isTheSame(byId.getOldFileName(), SarStandardsInfo.getBuildId()); + if (theSame.equals("1")) { + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if(sortSign != null) { + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = yi+"," + SarStandardsInfo.getFileId(); + } else { + yi = SarStandardsInfo.getFileId(); + } + } else { + if (StringUtils.isNotBlank(yuan)) { + 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)) { + old.setStandId(SarStandardsInfo.getStandId()); + oldArr.add(old); + //记录所有修改的数据 + OldSystemVo oldSystemVo = new OldSystemVo(); + oldSystemVo.setId(SarStandardsInfo.getStandId()); + oldSystemVo.setStandNumber(SarStandardsInfo.getStandNumber()); + oldSystemVo.setTranslateFileId(yi); + UpdateStandNumberFileList.add(oldSystemVo); + } + } + //海外 + for(OldSystem data : oldArr) { + String id = sarStandAttrInfoEODao.selectInfoStandId(data.getStandId()); + if(StringUtils.isNotBlank(id)) { + sarStandAttrInfoEODao.updateByIdInfo(id,data.getOriginal(),data.getTranslation()); + logger.info("海外修改成功====================================================================================="); + } + } + } + if(type.equals("国内")) { + List SarStandardsInfoList = sarStandardsInfoDao.selectListInfo("INLAND"); + for (OldSystem SarStandardsInfo : SarStandardsInfoList) { + String yi = ""; + String yuan = ""; + OldSystem old = new OldSystem(); + if (StringUtils.isNotBlank(SarStandardsInfo.getBuildId())) { + if(SarStandardsInfo.getBuildId().contains(",")){ + String[] buildIdArr = SarStandardsInfo.getBuildId().split(","); + List buildIdList = Arrays.asList(buildIdArr); + if(!buildIdList.isEmpty()){ + for (String bid: buildIdList){ + List OldSystem1 = sarStandardsInfoDao.selectOldSystemInfoByBuidId(bid); + if(!OldSystem1.isEmpty()){ + OldSystem oldSystem =OldSystem1.get(0); + if (oldSystem.getLoreDocId().equals(bid)) { + //通过,号分割文件,通过id去查询文件 获取文件名称 + if (StringUtils.isNotBlank(SarStandardsInfo.getFileId())) { + if(SarStandardsInfo.getFileId().contains(",")) { + String[] fileIdArr = SarStandardsInfo.getFileId().split(","); + List asList = Arrays.asList(fileIdArr); + if (asList.size() > 0) { + // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走 + Set attFileEOS = newFileNameRepetition(asList); + if (attFileEOS.isEmpty()) { + for (String fileId : asList) { + //循环调用每一个 文件 获取文件名称 + String id = fileId; + AttFileEO byId = attFileEOService.getFileInfo(id); + if(byId!=null){ + String theSame = isTheSame(byId.getOldFileName(),bid); + if (theSame.equals("1")) { + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if(sortSign != null) { + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = yi+"," + fileId; + } else { + yi = fileId; + } + } else { + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan+"," + fileId; + } else { + yuan = fileId; + } + } + } + + } + } + } + } else { + int numberCount = 0; + //只允许2个文件名称相同 + for (AttFileEO data : attFileEOS) { + numberCount = 0; + for (AttFileEO file : attFileEOS) { + if (data.getOldFileName().equals(file.getOldFileName())) { + numberCount = numberCount+1; + } + } + } + if(numberCount==2){ + //1:文件名称重复的情况下 判断文件的大小 大的为中文 小的为英文,一样大则存入 + List attFileEOS1 = newFileNameRepetitionInfo(asList); + // 不相等的数据 notRepeatedFile 重复的文件 attFileEOS + List notRepeatedFile = duplicateFiles(attFileEOS1, attFileEOS); + if(!notRepeatedFile.isEmpty()){ + //不重复数据在老库中是否存在 selectOldSystemFileBuildId + for (AttFileEO file: notRepeatedFile){ + String theSame = isTheSame(file.getOldFileName(), bid); + //1 有相同 -1 无相同 + if(theSame.equals("1")){ + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if(sortSign != null) { + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = yi+"," + file.getId(); + } else { + yi = file.getId(); + } + } else { + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan+"," + file.getId(); + } else { + yuan = file.getId(); + } + } + } + } + } + + } else { + //相同文件处理 + List arrayList = new ArrayList<>(); + for (AttFileEO data : attFileEOS) { + arrayList.add(data); + } + String theSame = isTheSame(arrayList.get(0).getOldFileName(), bid); + if (theSame.equals("1")) { + File file1 = new File("E:/data/slrs/file/" + arrayList.get(0).getFilePath() + arrayList.get(0).getFileName()); + File file2 = new File("E:/data/slrs/file/" + arrayList.get(1).getFilePath() + arrayList.get(1).getFileName()); + //判断两个文件大小 //相等 则不做处理 + long length1 = file1.length(); + long length2 = file2.length(); + if (length1 > length2) { + //1 中文 2英文 + if (StringUtils.isNotBlank(yi)) { + yi = yi + "," + arrayList.get(1).getId(); + } else { + yi = arrayList.get(1).getId(); + } + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan + "," + arrayList.get(0).getId(); + } else { + yuan = arrayList.get(0).getId(); + } + } + if (length1 < length2) { + if (StringUtils.isNotBlank(yi)) { + yi = yi + "," + arrayList.get(0).getId(); + } else { + yi = arrayList.get(0).getId(); + } + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan + "," + arrayList.get(1).getId(); + } else { + yuan = arrayList.get(1).getId(); + } + } + } + } + }else { + //记录所有疑问的数据 + OldSystemVo oldSystemVo = new OldSystemVo(); + oldSystemVo.setId(SarStandardsInfo.getStandId()); + oldSystemVo.setStandNumber(SarStandardsInfo.getStandNumber()); + oldSystemVo.setOriginalFileId(SarStandardsInfo.getFileId()); + cannotModifyStandNumberFileList.add(oldSystemVo); + } + + } + } + }else { + String id = SarStandardsInfo.getFileId(); + AttFileEO byId = attFileEOService.getFileInfo(id); + if(byId!=null){ + String theSame = isTheSame(byId.getOldFileName(), bid); + if (theSame.equals("1")) { + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if(sortSign != null) { + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = yi+"," + SarStandardsInfo.getFileId(); + } else { + yi = SarStandardsInfo.getFileId(); + } + } else { + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan+"," + SarStandardsInfo.getFileId(); + } else { + yuan = SarStandardsInfo.getFileId(); + } + } + } + } + } + } + } + } + } + } + } + }else { + List OldSystem1 = sarStandardsInfoDao.selectOldSystemInfoByBuidId(SarStandardsInfo.getBuildId()); + if(!OldSystem1.isEmpty()){ + OldSystem oldSystem =OldSystem1.get(0); + if (oldSystem.getLoreDocId().equals(SarStandardsInfo.getBuildId())) { + //通过,号分割文件,通过id去查询文件 获取文件名称 + if (StringUtils.isNotBlank(SarStandardsInfo.getFileId())) { + if(SarStandardsInfo.getFileId().contains(",")) { + String[] fileIdArr = SarStandardsInfo.getFileId().split(","); + List asList = Arrays.asList(fileIdArr); + if (asList.size() > 0) { + // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走 + Set attFileEOS = newFileNameRepetition(asList); + if (attFileEOS.isEmpty()) { + for (String fileId : asList) { + //循环调用每一个 文件 获取文件名称 + String id = fileId; + AttFileEO byId = attFileEOService.getFileInfo(id); + if(byId!=null){ + String theSame = isTheSame(byId.getOldFileName(), SarStandardsInfo.getBuildId()); + if (theSame.equals("1")) { + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if(sortSign != null) { + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = yi+"," + fileId; + } else { + yi = fileId; + } + } else { + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan+"," + fileId; + } else { + yuan = fileId; + } + + } + } + } + } + } + } else { + int numberCount = 0; + //只允许2个文件名称相同 + for (AttFileEO data : attFileEOS) { + numberCount = 0; + for (AttFileEO file : attFileEOS) { + if (data.getOldFileName().equals(file.getOldFileName())) { + numberCount = numberCount+1; + } + } + } + if(numberCount==2){ + //1:文件名称重复的情况下 判断文件的大小 大的为中文 小的为英文,一样大则存入 + List attFileEOS1 = newFileNameRepetitionInfo(asList); + // 不相等的数据 notRepeatedFile 重复的文件 attFileEOS + List notRepeatedFile = duplicateFiles(attFileEOS1, attFileEOS); + if(!notRepeatedFile.isEmpty()){ + //不重复数据在老库中是否存在 selectOldSystemFileBuildId + for (AttFileEO file: notRepeatedFile){ + String theSame = isTheSame(file.getOldFileName(), SarStandardsInfo.getBuildId()); + //1 有相同 -1 无相同 + if(theSame.equals("1")){ + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if(sortSign != null) { + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = yi+"," + file.getId(); + } else { + yi = file.getId(); + } + } else { + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan+"," + file.getId(); + } else { + yuan = file.getId(); + } + } + } + } + } + + }else { + //相同文件处理 + List arrayList = new ArrayList<>(); + for (AttFileEO data : attFileEOS) { + arrayList.add(data); + } + String theSame = isTheSame(arrayList.get(0).getOldFileName(), SarStandardsInfo.getBuildId()); + if (theSame.equals("1")) { + File file1 = new File( "E:/data/slrs/file/" + arrayList.get(0).getFilePath() + arrayList.get(0).getFileName()); + File file2 = new File( "E:/data/slrs/file/" + arrayList.get(1).getFilePath() + arrayList.get(1).getFileName()); + //判断两个文件大小 //相等 则不做处理 + long length1 = file1.length(); + long length2 = file2.length(); + if (length1 > length2) { + //1 中文 2英文 + if (StringUtils.isNotBlank(yi)) { + yi = yi + "," + arrayList.get(1).getId(); + } else { + yi = arrayList.get(1).getId(); + } + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan + "," + arrayList.get(0).getId(); + } else { + yuan = arrayList.get(0).getId(); + } + } + if (length1 < length2) { + if (StringUtils.isNotBlank(yi)) { + yi = yi + "," + arrayList.get(0).getId(); + } else { + yi = arrayList.get(0).getId(); + } + if (StringUtils.isNotBlank(yuan)) { + yuan = yuan + "," + arrayList.get(1).getId(); + } else { + yuan = arrayList.get(1).getId(); + } + } + } + } + }else { + //记录所有疑问的数据 + OldSystemVo oldSystemVo = new OldSystemVo(); + oldSystemVo.setId(SarStandardsInfo.getStandId()); + oldSystemVo.setStandNumber(SarStandardsInfo.getStandNumber()); + oldSystemVo.setOriginalFileId(SarStandardsInfo.getFileId()); + cannotModifyStandNumberFileList.add(oldSystemVo); + } + + } + } + }else { + //循环调用每一个 文件 获取文件名称 + String id = SarStandardsInfo.getFileId(); + AttFileEO byId = attFileEOService.getFileInfo(id); + if(byId!=null){ + String theSame = isTheSame(byId.getOldFileName(), SarStandardsInfo.getBuildId()); + if (theSame.equals("1")) { + //证明找到文件名称一致的了 + OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); + //原文译文 进行判断 + if(sortSign != null) { + if (sortSign.getSortSign().contains("译")) { + if (StringUtils.isNotBlank(yi)) { + yi = yi+"," + SarStandardsInfo.getFileId(); + } else { + yi = SarStandardsInfo.getFileId(); + } + } else { + if (StringUtils.isNotBlank(yuan)) { + 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)) { + old.setStandId(SarStandardsInfo.getStandId()); + oldArr.add(old); + //记录所有修改的数据 + OldSystemVo oldSystemVo = new OldSystemVo(); + oldSystemVo.setId(SarStandardsInfo.getStandId()); + oldSystemVo.setStandNumber(SarStandardsInfo.getStandNumber()); + oldSystemVo.setTranslateFileId(yi); + UpdateStandNumberFileList.add(oldSystemVo); + } + } + //国内 + for(OldSystem data : oldArr) { + String id = sarStandAttrInfoEODao.selectInfoStandId(data.getStandId()); + if(StringUtils.isNotBlank(id)) { + sarStandAttrInfoEODao.updateByIdInfo(id,data.getOriginal(),data.getTranslation()); + logger.info("国内修改成功====================================================================================="); + } + } + + } + if(type.equals("企业")) { +// List SarBussionessStandList = sarBussionessStandEODao.selectListInfo(); +// for (OldSystem sarBussionessStand : SarBussionessStandList) { +// String yi = ""; +// String yuan = ""; +// OldSystem old = new OldSystem(); +// if (StringUtils.isNotBlank(sarBussionessStand.getBuildId())) { +// if(sarBussionessStand.getBuildId().contains(",")){ +// String[] buildIdArr = sarBussionessStand.getBuildId().split(","); +// List buildIdList = Arrays.asList(buildIdArr); +// if(!buildIdList.isEmpty()){ +// for (String bid: buildIdList){ +// List OldSystem1 = sarStandardsInfoDao.selectOldSystemInfoByBuidId(bid); +// if(OldSystem1.isEmpty()){ +// OldSystem oldSystem =OldSystem1.get(0); +// if (oldSystem.getLoreDocId().equals(bid)) { +// //通过,号分割文件,通过id去查询文件 获取文件名称 +// if (StringUtils.isNotBlank(sarBussionessStand.getFileId())) { +// if(sarBussionessStand.getFileId().contains(",")) { +// String[] fileIdArr = sarBussionessStand.getFileId().split(","); +// List asList = Arrays.asList(fileIdArr); +// if (asList.size() > 0) { +// // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走 +// Set attFileEOS = newFileNameRepetition(asList); +// if (attFileEOS.isEmpty()) { +// for (String fileId : asList) { +// //循环调用每一个 文件 获取文件名称 +// String id = fileId; +// AttFileEO byId = attFileEOService.getFileInfo(id); +// if(byId!=null){ +// String theSame = isTheSame(byId.getOldFileName(),bid); +// if (theSame.equals("1")) { +// //证明找到文件名称一致的了 +// OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); +// //原文译文 进行判断 +// if(sortSign != null) { +// if (sortSign.getSortSign().contains("译")) { +// if (StringUtils.isNotBlank(yi)) { +// yi = yi+"," + fileId; +// } else { +// yi = fileId; +// } +// } else { +// if (StringUtils.isNotBlank(yuan)) { +// yuan = yuan+"," + fileId; +// } else { +// yuan = fileId; +// } +// } +// } +// +// } +// } +// +// } +// } else { +// int numberCount = 0; +// //只允许2个文件名称相同 +// for (AttFileEO data : attFileEOS) { +// numberCount = 0; +// for (AttFileEO file : attFileEOS) { +// if (data.getOldFileName().equals(file.getOldFileName())) { +// numberCount = numberCount+1; +// } +// } +// } +// if(numberCount==2){ +// //1:文件名称重复的情况下 判断文件的大小 大的为中文 小的为英文,一样大则存入 +// List attFileEOS1 = newFileNameRepetitionInfo(asList); +// // 不相等的数据 notRepeatedFile 重复的文件 attFileEOS +// List notRepeatedFile = duplicateFiles(attFileEOS1, attFileEOS); +// if(!notRepeatedFile.isEmpty()){ +// //不重复数据在老库中是否存在 selectOldSystemFileBuildId +// for (AttFileEO file: notRepeatedFile){ +// String theSame = isTheSame(file.getOldFileName(), bid); +// //1 有相同 -1 无相同 +// if(theSame.equals("1")){ +// //证明找到文件名称一致的了 +// OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); +// //原文译文 进行判断 +// if(sortSign != null) { +// if (sortSign.getSortSign().contains("译")) { +// if (StringUtils.isNotBlank(yi)) { +// yi = yi+"," + file.getId(); +// } else { +// yi = file.getId(); +// } +// } else { +// if (StringUtils.isNotBlank(yuan)) { +// yuan = yuan+"," + file.getId(); +// } else { +// yuan = file.getId(); +// } +// } +// } +// } +// } +// +// } else { +// //相同文件处理 +// List arrayList = new ArrayList<>(); +// for (AttFileEO data : attFileEOS) { +// arrayList.add(data); +// } +// String theSame = isTheSame(arrayList.get(0).getOldFileName(), bid); +// if (theSame.equals("1")) { +// File file1 = new File("E:/data/slrs/file/" + arrayList.get(0).getFilePath() + arrayList.get(0).getFileName()); +// File file2 = new File("E:/data/slrs/file/" + arrayList.get(1).getFilePath() + arrayList.get(1).getFileName()); +// //判断两个文件大小 //相等 则不做处理 +// long length1 = file1.length(); +// long length2 = file2.length(); +// if (length1 > length2) { +// //1 中文 2英文 +// if (StringUtils.isNotBlank(yi)) { +// yi = yi + "," + arrayList.get(1).getId(); +// } else { +// yi = arrayList.get(1).getId(); +// } +// if (StringUtils.isNotBlank(yuan)) { +// yuan = yuan + "," + arrayList.get(0).getId(); +// } else { +// yuan = arrayList.get(0).getId(); +// } +// } +// if (length1 < length2) { +// if (StringUtils.isNotBlank(yi)) { +// yi = yi + "," + arrayList.get(0).getId(); +// } else { +// yi = arrayList.get(0).getId(); +// } +// if (StringUtils.isNotBlank(yuan)) { +// yuan = yuan + "," + arrayList.get(1).getId(); +// } else { +// yuan = arrayList.get(1).getId(); +// } +// } +// } +// } +// }else { +// fileEOArrayList.add(sarBussionessStand.getStandId()); +// } +// +// } +// } +// }else { +// String id = sarBussionessStand.getFileId(); +// AttFileEO byId = attFileEOService.getFileInfo(id); +// if(byId!=null){ +// String theSame = isTheSame(byId.getOldFileName(), bid); +// if (theSame.equals("1")) { +// //证明找到文件名称一致的了 +// OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); +// //原文译文 进行判断 +// if(sortSign != null) { +// if (sortSign.getSortSign().contains("译")) { +// if (StringUtils.isNotBlank(yi)) { +// yi = yi+"," + sarBussionessStand.getFileId(); +// } else { +// yi = sarBussionessStand.getFileId(); +// } +// } else { +// if (StringUtils.isNotBlank(yuan)) { +// yuan = yuan+"," + sarBussionessStand.getFileId(); +// } else { +// yuan = sarBussionessStand.getFileId(); +// } +// } +// } +// } +// } +// } +// } +// } +// } +// } +// } +// }else { +// List OldSystem1 = sarStandardsInfoDao.selectOldSystemInfoByBuidId(sarBussionessStand.getBuildId()); +// if(!OldSystem1.isEmpty()){ +// OldSystem oldSystem =OldSystem1.get(0); +// if (oldSystem.getLoreDocId().equals(sarBussionessStand.getBuildId())) { +// //通过,号分割文件,通过id去查询文件 获取文件名称 +// if (StringUtils.isNotBlank(sarBussionessStand.getFileId())) { +// if(sarBussionessStand.getFileId().contains(",")) { +// String[] fileIdArr = sarBussionessStand.getFileId().split(","); +// List asList = Arrays.asList(fileIdArr); +// if (asList.size() > 0) { +// // 判断 新系统中的文件是否有名称是一样的 如果有 则跳过 进行记录 没有则 往下走 +// Set attFileEOS = newFileNameRepetition(asList); +// if (attFileEOS.isEmpty()) { +// for (String fileId : asList) { +// //循环调用每一个 文件 获取文件名称 +// String id = fileId; +// AttFileEO byId = attFileEOService.getFileInfo(id); +// if(byId!=null){ +// String theSame = isTheSame(byId.getOldFileName(), sarBussionessStand.getBuildId()); +// if (theSame.equals("1")) { +// //证明找到文件名称一致的了 +// OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); +// //原文译文 进行判断 +// if(sortSign != null) { +// if (sortSign.getSortSign().contains("译")) { +// if (StringUtils.isNotBlank(yi)) { +// yi = yi+"," + fileId; +// } else { +// yi = fileId; +// } +// } else { +// if (StringUtils.isNotBlank(yuan)) { +// yuan = yuan+"," + fileId; +// } else { +// yuan = fileId; +// } +// +// } +// } +// } +// } +// +// } +// } else { +// int numberCount = 0; +// //只允许2个文件名称相同 +// for (AttFileEO data : attFileEOS) { +// numberCount = 0; +// for (AttFileEO file : attFileEOS) { +// if (data.getOldFileName().equals(file.getOldFileName())) { +// numberCount = numberCount+1; +// } +// } +// } +// if(numberCount==2){ +// //1:文件名称重复的情况下 判断文件的大小 大的为中文 小的为英文,一样大则存入 +// List attFileEOS1 = newFileNameRepetitionInfo(asList); +// // 不相等的数据 notRepeatedFile 重复的文件 attFileEOS +// List notRepeatedFile = duplicateFiles(attFileEOS1, attFileEOS); +// if(!notRepeatedFile.isEmpty()){ +// //不重复数据在老库中是否存在 selectOldSystemFileBuildId +// for (AttFileEO file: notRepeatedFile){ +// String theSame = isTheSame(file.getOldFileName(), sarBussionessStand.getBuildId()); +// //1 有相同 -1 无相同 +// if(theSame.equals("1")){ +// //证明找到文件名称一致的了 +// OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); +// //原文译文 进行判断 +// if(sortSign != null) { +// if (sortSign.getSortSign().contains("译")) { +// if (StringUtils.isNotBlank(yi)) { +// yi = yi+"," + file.getId(); +// } else { +// yi = file.getId(); +// } +// } else { +// if (StringUtils.isNotBlank(yuan)) { +// yuan = yuan+"," + file.getId(); +// } else { +// yuan = file.getId(); +// } +// } +// } +// } +// } +// +// }else { +// //相同文件处理 +// List arrayList = new ArrayList<>(); +// for (AttFileEO data : attFileEOS) { +// arrayList.add(data); +// } +// String theSame = isTheSame(arrayList.get(0).getOldFileName(), sarBussionessStand.getBuildId()); +// if (theSame.equals("1")) { +// File file1 = new File( "E:/data/slrs/file/" + arrayList.get(0).getFilePath() + arrayList.get(0).getFileName()); +// File file2 = new File( "E:/data/slrs/file/" + arrayList.get(1).getFilePath() + arrayList.get(1).getFileName()); +// //判断两个文件大小 //相等 则不做处理 +// long length1 = file1.length(); +// long length2 = file2.length(); +// if (length1 > length2) { +// //1 中文 2英文 +// if (StringUtils.isNotBlank(yi)) { +// yi = yi + "," + arrayList.get(1).getId(); +// } else { +// yi = arrayList.get(1).getId(); +// } +// if (StringUtils.isNotBlank(yuan)) { +// yuan = yuan + "," + arrayList.get(0).getId(); +// } else { +// yuan = arrayList.get(0).getId(); +// } +// } +// if (length1 < length2) { +// if (StringUtils.isNotBlank(yi)) { +// yi = yi + "," + arrayList.get(0).getId(); +// } else { +// yi = arrayList.get(0).getId(); +// } +// if (StringUtils.isNotBlank(yuan)) { +// yuan = yuan + "," + arrayList.get(1).getId(); +// } else { +// yuan = arrayList.get(1).getId(); +// } +// } +// } +// } +// }else { +// fileEOArrayList.add(sarBussionessStand.getStandId()); +// } +// +// } +// } +// }else { +// //循环调用每一个 文件 获取文件名称 +// String id = sarBussionessStand.getFileId(); +// AttFileEO byId = attFileEOService.getFileInfo(id); +// if(byId!=null){ +// String theSame = isTheSame(byId.getOldFileName(), sarBussionessStand.getBuildId()); +// if (theSame.equals("1")) { +// //证明找到文件名称一致的了 +// OldSystem sortSign = sarStandardsInfoDao.loreDepotSort(oldSystem.getSortId()); +// //原文译文 进行判断 +// if(sortSign != null) { +// if (sortSign.getSortSign().contains("译")) { +// if (StringUtils.isNotBlank(yi)) { +// yi = yi+"," + sarBussionessStand.getFileId(); +// } else { +// yi = sarBussionessStand.getFileId(); +// } +// } else { +// if (StringUtils.isNotBlank(yuan)) { +// 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)) { +// old.setStandId(sarBussionessStand.getStandId()); +// oldArr.add(old); +// } +// } +// // 企业 +// for(OldSystem data : oldArr) { +// String id = sarBussStandAttrInfoEODao.selectInfoStandId(data.getStandId()); +// if(StringUtils.isNotBlank(id)) { +// //sarBussStandAttrInfoEODao.updateByIdInfo(id,sarBussStandAttrInfo.getFbgbuss(),sarBussStandAttrInfo.getTranslation()); +// logger.info("企业修改成功===================================================================================="); +// } +// +// } + logger.info("企业没有译文件"); + } + objectList.add(UpdateStandNumberFileList); + objectList.add(cannotModifyStandNumberFileList); + return Result.success(objectList); + } + + public String isTheSame (String oldFileName,String buildId){ + List loreAttacheList= sarStandardsInfoDao.selectOldSystemFileBuildId(buildId); + if(loreAttacheList.size()>0){ + for (OldSystem src : loreAttacheList) { + if(StringUtils.isNotBlank(src.getFileSign()) && StringUtils.isNotBlank(src.getExt())){ + String s = src.getFileSign()+"."+src.getExt(); + if (s.equals(oldFileName)){ + return "1"; + } + } + } + } + return "-1"; + } + + public Set newFileNameRepetition(List asList){ + List attFileEOS = new ArrayList<>(); + Set attFileEOArrayList = new HashSet<>(); + if(asList.size()>0) { + for (String fileId : asList) { + AttFileEO byId = attFileEOService.getFileInfo(fileId); + if(byId!=null){ + attFileEOS.add(byId); + } + } + } + if(attFileEOS.size()>0 && !attFileEOS.isEmpty()) { + for (AttFileEO data : attFileEOS) { + for (AttFileEO file : attFileEOS) { + if(data !=null && file !=null) { + if (!data.getId().equals(file.getId())) { + if (data.getOldFileName().equals(file.getOldFileName())) { + attFileEOArrayList.add(data); + } + } + } + } + } + } + return attFileEOArrayList; + } + + public List newFileNameRepetitionInfo(List asList){ + List attFileEOS = new ArrayList<>(); + if(asList.size()>0) { + for (String fileId : asList) { + AttFileEO byId = attFileEOService.getFileInfo(fileId); + attFileEOS.add(byId); + } + } + return attFileEOS; + } + + public List duplicateFiles(List attFileEOList,Set chongfu){ + //非重复的文件处理 + List attFileEOArrayList = new ArrayList<>(); + for (AttFileEO data : attFileEOList){ + attFileEOArrayList.add(data); + } + + for (AttFileEO data : attFileEOList){ + for (AttFileEO file : chongfu){ + if(data.getId().equals(file.getId())){ + if(!attFileEOArrayList.isEmpty()) { + attFileEOArrayList.remove(data); + } + } + } + } + return attFileEOArrayList; + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrInfo/dao/SarStandAttrInfoDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrInfo/dao/SarStandAttrInfoDao.java index 5eb588a9..fddfcb8b 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrInfo/dao/SarStandAttrInfoDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandAttrInfo/dao/SarStandAttrInfoDao.java @@ -41,4 +41,9 @@ public interface SarStandAttrInfoDao extends BaseMapper { String selectFieldValByStandId(@Param("field") String field, @Param("standId") String standId); List selectFieldValByContainsVal(@Param("field") String field, @Param("value") String value, @Param("standIds") List standIds); + + void updateByIdInfo(@Param("id")String id,@Param("fbgbjbd") String fbgbuss,@Param("fbgywbd") String fbgywbd); + + String selectInfoStandId(@Param("standId")String standId); } + diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/dao/SarStandardsInfoDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/dao/SarStandardsInfoDao.java index dfc26280..b23f5825 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/dao/SarStandardsInfoDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarStandardsInfo/dao/SarStandardsInfoDao.java @@ -1,5 +1,6 @@ package com.adc.da.slrs.sarStandardsInfo.dao; +import com.adc.da.slrs.sarBussionessStand.entity.OldSystem; import com.adc.da.slrs.sarStandardsInfo.entity.DSarStandardDTO; import com.adc.da.slrs.sarStandardsInfo.entity.RecommendVO; import com.adc.da.slrs.sarStandardsInfo.entity.SarStandardsInfo; @@ -99,4 +100,16 @@ public interface SarStandardsInfoDao extends BaseMapper { List dealWithDS(@Param("type") String standType, @Param("status")List strings); + List selectListInfo(@Param("type") String type); + + List OldSystemFile(@Param("loreDocId") String loreDocId); + + List selectOldSystemFile(); + + List selectOldSystemFileBuildId(@Param("buildId") String buildId); + + OldSystem loreDepotSort(@Param("sortId") String sortId); + + List selectOldSystemInfoByBuidId(@Param("buildId") String buildId); } + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/SarStandAttrInfo/SarStandAttrInfoMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/SarStandAttrInfo/SarStandAttrInfoMapper.xml index 17105f6a..9c45affa 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/SarStandAttrInfo/SarStandAttrInfoMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/SarStandAttrInfo/SarStandAttrInfoMapper.xml @@ -241,4 +241,16 @@ + + update SAR_STAND_ATTR_INFO ss set ss.FBGBJBD = #{fbgbjbd}, ss.FBGYWBD = #{fbgywbd} + where id = #{id} + + + + + diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml index 620dbeb5..e2abcc96 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarStandardsInfo/SarStandardsInfoMapper.xml @@ -998,15 +998,15 @@ ) - + ) and stand_name like concat(concat('%',#{page.standName}),'%') - - - + + + and stand_en_name like concat(concat('%',#{page.standEnName}),'%') @@ -1075,7 +1075,7 @@ and SAR_STANDARDS_INFO.STAND_YEAR = #{page.standYear} - + and DATE_FORMAT(SAR_STANDARDS_INFO.ISSUE_TIME ,'%Y-%m-%d') = #{page.issueTime} @@ -1555,34 +1555,34 @@ - - - - and ( - (trim(replace(concat(SAR_STANDARDS_INFO.STAND_SORT,' ',SAR_STANDARDS_INFO.STAND_NUMBER,'-', - SAR_STANDARDS_INFO.STAND_YEAR),' ','')) like trim(replace(concat(concat('%',#{standNumber}),'%'),' ','')) and SAR_STANDARDS_INFO.STAND_YEAR != '') - or (trim(replace(concat(SAR_STANDARDS_INFO.STAND_SORT,' ',SAR_STANDARDS_INFO.STAND_NUMBER),' ','')) like trim(replace(concat(concat('%',#{standNumber}),'%'),' ','')) - ) - - or (stand_name like concat(concat('%',#{standNumber}),'%')) - ) - - - and ( - SAR_STANDARDS_INFO.STAND_SORT = #{standSort} and SAR_STANDARDS_INFO.STAND_NUMBER = #{standNumber} and SAR_STANDARDS_INFO.STAND_YEAR = #{standYear} + + + + and ( + (trim(replace(concat(SAR_STANDARDS_INFO.STAND_SORT,' ',SAR_STANDARDS_INFO.STAND_NUMBER,'-', + SAR_STANDARDS_INFO.STAND_YEAR),' ','')) like trim(replace(concat(concat('%',#{standNumber}),'%'),' ','')) and SAR_STANDARDS_INFO.STAND_YEAR != '') + or (trim(replace(concat(SAR_STANDARDS_INFO.STAND_SORT,' ',SAR_STANDARDS_INFO.STAND_NUMBER),' ','')) like trim(replace(concat(concat('%',#{standNumber}),'%'),' ','')) + ) + + or (stand_name like concat(concat('%',#{standNumber}),'%')) + ) + + + and ( + SAR_STANDARDS_INFO.STAND_SORT = #{standSort} and SAR_STANDARDS_INFO.STAND_NUMBER = #{standNumber} and SAR_STANDARDS_INFO.STAND_YEAR = #{standYear} + ) + and ( SAR_STANDARDS_INFO.STAND_SORT = #{standSort} and SAR_STANDARDS_INFO.STAND_NUMBER = #{standNumber} @@ -1676,10 +1676,10 @@ + + + + + + + + + + + + + From 8a8097de89441ccf34685d925198328a6c649009 Mon Sep 17 00:00:00 2001 From: SUNJIABIN Date: Thu, 23 Mar 2023 09:36:41 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E5=8E=9F=E6=96=87=E8=AF=91=E6=96=87?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0logger=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SarBussionessStandServiceImpl.java | 2 ++ 1 file changed, 2 insertions(+) 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 ff3e11d0..da91b9f4 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 @@ -2565,6 +2565,7 @@ public class SarBussionessStandServiceImpl extends ServiceImpl Date: Thu, 23 Mar 2023 13:38:18 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E5=8E=9F=E6=96=87=E8=AF=91=E6=96=87?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0logger=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SarBussionessStandServiceImpl.java | 2 ++ 1 file changed, 2 insertions(+) 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 da91b9f4..a5604dd0 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 @@ -3317,6 +3317,8 @@ public class SarBussionessStandServiceImpl extends ServiceImpl Date: Thu, 23 Mar 2023 13:54:18 +0800 Subject: [PATCH 5/5] =?UTF-8?q?OA=E5=BC=BA=E5=88=B6=E5=88=A0=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/adc/da/FeignClient/workFlowFeignClient.java | 2 ++ .../com/adc/da/FeignClientImpl/workFlowFeignClientImpl.java | 4 ++++ .../com/adc/da/workFlow/controller/WorkFlowController.java | 5 +++++ 3 files changed, 11 insertions(+) diff --git a/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java b/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java index 19d0f7f5..fb45a655 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java +++ b/adc-da-activiti/src/main/java/com/adc/da/FeignClient/workFlowFeignClient.java @@ -473,4 +473,6 @@ public interface workFlowFeignClient { void setRelation(@RequestParam("esPlanId")String esPlanId,@RequestParam("prcId") String prcId, @RequestParam("finish") String finish); @RequestMapping(value = "/bat-wkflow/esTechRelation/getEsByWk",method = RequestMethod.GET) String getEsByWk(@RequestParam("prcId")String prcId); + @RequestMapping(value = "/bat-wkflow/deleteOAByMandatory",method = RequestMethod.GET) + String deleteOAByMandatory(@RequestParam("todoId") String todoId,@RequestParam("assignee") String assignee); } diff --git a/adc-da-activiti/src/main/java/com/adc/da/FeignClientImpl/workFlowFeignClientImpl.java b/adc-da-activiti/src/main/java/com/adc/da/FeignClientImpl/workFlowFeignClientImpl.java index fa997022..3ade5857 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/FeignClientImpl/workFlowFeignClientImpl.java +++ b/adc-da-activiti/src/main/java/com/adc/da/FeignClientImpl/workFlowFeignClientImpl.java @@ -418,4 +418,8 @@ public class workFlowFeignClientImpl { public String getEsByWk(@RequestParam("prcId")String prcId) { return workFlowFeignClient.getEsByWk(prcId); } + + public String deleteOAByMandatory(@RequestParam("todoId") String todoId,@RequestParam("assignee") String assignee) { + return workFlowFeignClient.deleteOAByMandatory(todoId,assignee); + } } diff --git a/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java b/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java index 3c6c4c82..04445785 100644 --- a/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java +++ b/adc-da-activiti/src/main/java/com/adc/da/workFlow/controller/WorkFlowController.java @@ -953,4 +953,9 @@ public class WorkFlowController { return workFlowFeignClient.getEsByWk(prcId); } + @ApiOperation(value = "OA待办强制删除") + @GetMapping("/deleteOAByMandatory") + public String deleteOAByMandatory(@RequestParam("todoId") String todoId,@RequestParam("assignee") String assignee) { + return workFlowFeignClient.deleteOAByMandatory(todoId,assignee); + } }