From 51945f28c071ce1f33ded2cfa5db2b1c6e77b3e6 Mon Sep 17 00:00:00 2001 From: wangzhijiang <12345678> Date: Fri, 3 Feb 2023 15:28:48 +0800 Subject: [PATCH] =?UTF-8?q?=EF=BC=88=E6=8E=A7=E4=BB=B6=E6=A0=A1=E9=AA=8C?= =?UTF-8?q?=EF=BC=89=E4=B8=8A=E6=8A=A5=E5=BA=93=E7=AE=A1=E7=90=86-?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E6=9F=A5=E7=9C=8B-=E5=B8=B8=E8=A7=84?= =?UTF-8?q?=E5=AF=BC=E5=87=BA=E4=BF=AE=E6=94=B9=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ParamsReportConfigDataEOServiceImpl.java | 1 + .../impl/ParamsReportDetailEOServiceImpl.java | 148 +++++++++--------- 2 files changed, 76 insertions(+), 73 deletions(-) diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportConfigDataEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportConfigDataEOServiceImpl.java index 5f4e4e796..7168c6649 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportConfigDataEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportConfigDataEOServiceImpl.java @@ -47,6 +47,7 @@ public class ParamsReportConfigDataEOServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(ParamsReportConfigDataEO::getParamsConfigId, paramsConfigId); queryWrapper.eq(ParamsReportConfigDataEO::getParamsCollectManifestId, paramsCollectManifestId); + queryWrapper.orderByDesc(ParamsReportConfigDataEO::getOrderNum); return this.list(queryWrapper); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java index 8f3f5b766..933c0e462 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/cert/report/service/impl/ParamsReportDetailEOServiceImpl.java @@ -1311,42 +1311,57 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl ossFileList = ossFileService.getFileInfosByConnectId(paramsConfigDataEO.getFileConnectId()); - if (CollectionUtil.isNotEmpty(ossFileList)) { - // 不合并导出时 验证文件名是否相同,相同进一步验证文件内容是否相同,不同时重命名文件 - String fileName = ossFileList.get(0).getFileName(); - String newFileName = isRepeat(fileListAll, ossFileList.get(0)); - if (!"".equals(newFileName) && !"old".equals(newFileName)) { // 文件名称重复 且文件内容不同 - configDataBuilder.append(newFileName).append("#"); - ossFileList.get(0).setFileName(newFileName); - fileList.addAll(ossFileList); - fileListAll.addAll(ossFileList); - } else if ("old".equals(newFileName)) { // 文件名称重复 且文件内容相同 - configDataBuilder.append(fileName).append("#"); - fileList.addAll(ossFileList); - }else { - configDataBuilder.append(fileName).append("#"); - fileList.addAll(ossFileList); - fileListAll.addAll(ossFileList); + String paramsConfigId = paramsConfigEO.getId(); + List paramsConfigDataEOList = this.paramsReportConfigDataEOService.queryListByConfigIdAndCollectManifestId(paramsConfigId, paramsCollectManifestId); // 参数配置数据 + StringBuilder configDataBuilder = new StringBuilder(); // 重新组合配置数据 + if(CollectionUtils.isNotEmpty(paramsConfigDataEOList)){ + for (ParamsReportConfigDataEO paramsConfigDataEO : paramsConfigDataEOList) { + + StringBuilder configDataBuilderTemp = new StringBuilder(); // 重新组合配置数据 + + if (StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + configDataBuilderTemp.append(paramsConfigDataEO.getPullData()).append("#"); + } + if (StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { + configDataBuilderTemp.append(paramsConfigDataEO.getTextData()).append("#"); + } + if (StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { + List ossFileList = ossFileService.getFileInfosByConnectId(paramsConfigDataEO.getFileConnectId()); + if (CollectionUtil.isNotEmpty(ossFileList)) { + // 不合并导出时 验证文件名是否相同,相同进一步验证文件内容是否相同,不同时重命名文件 + String fileName = ossFileList.get(0).getFileName(); + String newFileName = isRepeat(fileListAll, ossFileList.get(0)); + if (!"".equals(newFileName) && !"old".equals(newFileName)) { // 文件名称重复 且文件内容不同 + configDataBuilderTemp.append(newFileName).append("#"); + ossFileList.get(0).setFileName(newFileName); + fileList.addAll(ossFileList); + fileListAll.addAll(ossFileList); + + } else if ("old".equals(newFileName)) { // 文件名称重复 且文件内容相同 + configDataBuilderTemp.append(fileName).append("#"); + fileList.addAll(ossFileList); + } else { + configDataBuilderTemp.append(fileName).append("#"); + fileList.addAll(ossFileList); + fileListAll.addAll(ossFileList); + } + } } + String configData = configDataBuilderTemp.toString(); + if (configData.contains("#")) { + configData = configData.substring(0, configData.lastIndexOf("#")); + } + + configDataBuilder.append(configData).append(paramsReportDetailVO.getSeparator()); } } + String configData = configDataBuilder.toString(); - if (configData.contains("#")) { - configData = configData.substring(0, configData.lastIndexOf("#")); + if (configData.contains(paramsReportDetailVO.getSeparator())) { + configData = configData.substring(0, configData.lastIndexOf(paramsReportDetailVO.getSeparator())); } record1.put(paramsConfigEO.getId(), configData); @@ -1360,66 +1375,53 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl paramsReportConfigDataEOS = paramsReportConfigDataEOService.queryByConfigIdListAndCollectManifestId(configIdList, paramsCollectManifestId); - String textDatas = paramsReportConfigDataEOS.stream().filter(e -> StringUtils.isNotEmpty(e.getTextData())) - .map(ParamsReportConfigDataEO::getTextData).distinct().collect(Collectors.joining(paramsReportDetailVO.getSeparator())); + StringBuilder configDataBuilder = new StringBuilder(); // 重新组合配置数据 - String pullDatas = paramsReportConfigDataEOS.stream().filter(e -> StringUtils.isNotEmpty(e.getPullData())) - .map(ParamsReportConfigDataEO::getPullData).distinct().collect(Collectors.joining(paramsReportDetailVO.getSeparator())); + for (ParamsReportConfigDataEO paramsConfigDataEO : paramsReportConfigDataEOS) { + StringBuilder configDataBuilderTemp = new StringBuilder(); // 重新组合配置数据 - List fileNameList = new ArrayList<>(); - for(ParamsReportConfigDataEO paramsReportConfigDataEO : paramsReportConfigDataEOS) { - if (StringUtils.isNotEmpty(paramsReportConfigDataEO.getFileConnectId())) { - List ossFileList = ossFileService.getFileInfosByConnectId(paramsReportConfigDataEO.getFileConnectId()); + if (StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) { + configDataBuilderTemp.append(paramsConfigDataEO.getPullData()).append("#"); + } + if (StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) { + configDataBuilderTemp.append(paramsConfigDataEO.getTextData()).append("#"); + } + if (StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) { + List ossFileList = ossFileService.getFileInfosByConnectId(paramsConfigDataEO.getFileConnectId()); if (CollectionUtil.isNotEmpty(ossFileList)) { - // 合并导出时 验证文件名是否相同,相同进一步验证文件内容是否形同,不同时重命名文件 + // 不合并导出时 验证文件名是否相同,相同进一步验证文件内容是否相同,不同时重命名文件 String fileName = ossFileList.get(0).getFileName(); String newFileName = isRepeat(fileListAll, ossFileList.get(0)); if (!"".equals(newFileName) && !"old".equals(newFileName)) { // 文件名称重复 且文件内容不同 - // 判断 新文件名是不是当前参数下 配置间的 重复 - int count = (int) fileList.stream().filter(e->newFileName.equals(e.getFileName())).count(); - if (count <= 0) { // 不是 (如果是,不做任何操作) - fileNameList.add(newFileName); - ossFileList.get(0).setFileName(newFileName); - fileList.addAll(ossFileList); - fileListAll.addAll(ossFileList); - } + configDataBuilderTemp.append(newFileName).append("#"); + ossFileList.get(0).setFileName(newFileName); + fileList.addAll(ossFileList); + fileListAll.addAll(ossFileList); } else if ("old".equals(newFileName)) { // 文件名称重复 且文件内容相同 - - // 判断这种重复是不是当前参数下 配置间的 - int count = (int) fileList.stream().filter(e->fileName.equals(e.getFileName())).count(); - if (count <= 0) { // 不是 (如果是,不做任何操作) - fileNameList.add(fileName); - fileList.addAll(ossFileList); - fileListAll.addAll(ossFileList); - } - - }else { // 文件名称不重复 - fileNameList.add(fileName); + configDataBuilderTemp.append(fileName).append("#"); + fileList.addAll(ossFileList); + } else { + configDataBuilderTemp.append(fileName).append("#"); fileList.addAll(ossFileList); fileListAll.addAll(ossFileList); } - } } + + configData = configDataBuilderTemp.toString(); + if (configData.contains("#")) { + configData = configData.substring(0, configData.lastIndexOf("#")); + } + + configDataBuilder.append(configData).append(paramsReportDetailVO.getSeparator()); } - StringBuilder configDataBuilder = new StringBuilder(); // 重新组合配置数据 - if (StringUtils.isNotEmpty(pullDatas)) { - configDataBuilder.append(pullDatas).append("#"); + String configDataStr = configDataBuilder.toString(); + if (configDataStr.contains(paramsReportDetailVO.getSeparator())) { + configDataStr = configDataStr.substring(0, configDataStr.lastIndexOf(paramsReportDetailVO.getSeparator())); } - if (StringUtils.isNotEmpty(textDatas)) { - configDataBuilder.append(textDatas).append("#"); - } - if (CollectionUtil.isNotEmpty(fileNameList)) { -// fileNameList = fileNameList.stream().distinct().collect(Collectors.toList()); - configDataBuilder.append(StringUtils.join(fileNameList, paramsReportDetailVO.getSeparator())).append("#"); - } - configData = configDataBuilder.toString(); - if (configData.contains("#")) { - configData = configData.substring(0, configData.lastIndexOf("#")); - } - record1.put("params_value", configData); + record1.put("params_value", configDataStr); } }