diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessStandardComplianceCheckDetail.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessStandardComplianceCheckDetail.java index e48b7a27..4f77b72a 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessStandardComplianceCheckDetail.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/entity/ProcessStandardComplianceCheckDetail.java @@ -138,6 +138,7 @@ public class ProcessStandardComplianceCheckDetail implements Serializable { /** * 评估日期 */ + @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty(value = "评估日期") private Date valuationTime; diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java index e4da0a30..dff3527d 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/standardComplianceCheck/service/impl/ProcessStandardComplianceCheckServiceImpl.java @@ -516,7 +516,7 @@ public class ProcessStandardComplianceCheckServiceImpl extends ServiceImpl { item.setResult(excelUtils.translateDict("evaluation_result", item.getResult(), listDict)); - item.setMaterial(excelUtils.translateDictValue("id", "file_name", "oss_file", item.getMaterial(), listDict)); + item.setMaterial("佐证材料/" + excelUtils.translateDictValue("id", "file_name", "oss_file", item.getMaterial(), listDict)); }); Workbook workbook = ExcelExportUtil .exportExcel(exportParams, WithoutDistributeExcelTemplate.class, data); diff --git a/laws-modules/src/main/java/com/jero/modules/assessmentLibrary/service/impl/LawsConformityAssessmentLibraryServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/assessmentLibrary/service/impl/LawsConformityAssessmentLibraryServiceImpl.java index f6fa2211..f7bddd5e 100644 --- a/laws-modules/src/main/java/com/jero/modules/assessmentLibrary/service/impl/LawsConformityAssessmentLibraryServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/assessmentLibrary/service/impl/LawsConformityAssessmentLibraryServiceImpl.java @@ -173,7 +173,7 @@ public class LawsConformityAssessmentLibraryServiceImpl extends ServiceImpl String regex = "<[^>]*>"; @@ -191,7 +191,7 @@ public class LawsConformityAssessmentLibraryServiceImpl extends ServiceImpl newRecordsExport = new ArrayList<>(recordsExport); Workbook workbook = ExcelExportUtil.exportExcel(exportParams, LawsConformityAssessmentLibraryExportVO.class, recordsExport); // 生成超链接 - generateHyperlink(newRecordsExport, workbook); + generateHyperlink("佐证材料", newRecordsExport, workbook); // 导出excel workbook.write(fos); // 生成并导出zip @@ -227,7 +227,7 @@ public class LawsConformityAssessmentLibraryServiceImpl extends ServiceImpl vos, Workbook workbook) { + private static void generateHyperlink(String folderName, List vos, Workbook workbook) { Sheet sheet = workbook.getSheetAt(0); // 设置字体颜色、下划线 CellStyle cellStyle = workbook.createCellStyle(); @@ -242,7 +242,9 @@ public class LawsConformityAssessmentLibraryServiceImpl extends ServiceImpl excelVos) throws - IOException { + private void settleDocuments(String url, String folderName, List excelVos) throws IOException { + // 构建完整的文件夹路径 + String directoryPath = url + File.separator + folderName; + + // 检查文件夹是否存在,如果不存在则创建 + File directory = new File(directoryPath); + if (!directory.exists()) { + directory.mkdirs(); // 使用mkdirs()而不是mkdir(),因为mkdirs()会创建所有必需的父目录 + } + for (LawsConformityAssessmentLibraryExportVO vo : excelVos) { // 查询文件 if (StringUtils.isNotBlank(vo.getMaterial())) { @@ -270,8 +280,8 @@ public class LawsConformityAssessmentLibraryServiceImpl extends ServiceImpl lawsEvaluationNotMets = this.queryPage(lawsEvaluationNotMet, 1, Integer.MAX_VALUE, req); List records = lawsEvaluationNotMets.getRecords(); - excelExportUtilPro.settleDocuments(url, records, LawsEvaluationNotMetLibrary::obtainFileIds, LawsEvaluationNotMetLibrary::setFileList); + excelExportUtilPro.settleDocuments(url, "附件", records, LawsEvaluationNotMetLibrary::obtainFileIds, LawsEvaluationNotMetLibrary::setFileList); // 去除文本的

String regex = "<[^>]*>"; @@ -135,7 +135,7 @@ public class LawsEvaluationNotMetLibraryServiceImpl extends ServiceImpl newRecordsExport = new ArrayList<>(records); Workbook workbook = ExcelExportUtil.exportExcel(exportParams, LawsEvaluationNotMetLibrary.class, records); // 生成超链接 - excelExportUtilPro.generateHyperlink(newRecordsExport, workbook, LawsEvaluationNotMetLibrary::getFileList, 12); + excelExportUtilPro.generateHyperlink("附件", newRecordsExport, workbook, LawsEvaluationNotMetLibrary::getFileList, 12); // 导出excel workbook.write(fos); // 生成并导出zip diff --git a/laws-modules/src/main/java/com/jero/modules/laws/utils/ExcelExportUtilPro.java b/laws-modules/src/main/java/com/jero/modules/laws/utils/ExcelExportUtilPro.java index 5bd91c6c..a09f9021 100644 --- a/laws-modules/src/main/java/com/jero/modules/laws/utils/ExcelExportUtilPro.java +++ b/laws-modules/src/main/java/com/jero/modules/laws/utils/ExcelExportUtilPro.java @@ -44,7 +44,7 @@ public class ExcelExportUtilPro { private String fileName; } - public void generateHyperlink(List items, Workbook workbook, + public void generateHyperlink(String folderName, List items, Workbook workbook, Function> fileDetailsProvider, Integer cellNum) { Sheet sheet = workbook.getSheetAt(0); @@ -56,7 +56,9 @@ public class ExcelExportUtilPro { for (FileDetails fileDetails : fileDetailsList) { Row row = sheet.getRow(rowIndex); Cell cell = row.getCell(cellNum); - cell.setCellFormula("HYPERLINK(\"" + fileDetails.getFileName() + "\", \"" + fileDetails.getFileName() + "\")"); + // 构建完整的超链接路径,包括文件夹名称 + String hyperlinkPath = folderName + "/" + fileDetails.getFileName(); + cell.setCellFormula("HYPERLINK(\"" + hyperlinkPath + "\", \"" + fileDetails.getFileName() + "\")"); cell.setCellStyle(cellStyle); rowIndex++; } @@ -76,9 +78,18 @@ public class ExcelExportUtilPro { return cellStyle; } - public void settleDocuments(String url, List items, + public void settleDocuments(String url, String folderName, List items, Function> fileIdProvider, BiConsumer> fileDetailsConsumer) throws IOException { + // 构建完整的文件夹路径 + String directoryPath = url + File.separator + folderName; + + // 检查文件夹是否存在,如果不存在则创建 + File directory = new File(directoryPath); + if (!directory.exists()) { + directory.mkdirs(); // 使用mkdirs()而不是mkdir(),因为mkdirs()会创建所有必需的父目录 + } + for (T item : items) { List fileIdList = fileIdProvider.apply(item); if (fileIdList != null && !fileIdList.isEmpty()) { @@ -91,7 +102,7 @@ public class ExcelExportUtilPro { if (StringUtils.endsWithIgnoreCase(ossFile.getFileName(), ".pdf")) { inputStream = sysWaterMarkUtil.addWatermarkToPdf(inputStream); } - String filePath = url + File.separator + ossFile.getFileName(); + String filePath = url + File.separator + folderName + File.separator + ossFile.getFileName(); writeToLocal(filePath, inputStream); } }