diff --git a/src/main/java/io/v/nutz/proposal/controller/export/proposalExportNotCaseController.java b/src/main/java/io/v/nutz/proposal/controller/export/proposalExportNotCaseController.java index ef931c9..880af6c 100644 --- a/src/main/java/io/v/nutz/proposal/controller/export/proposalExportNotCaseController.java +++ b/src/main/java/io/v/nutz/proposal/controller/export/proposalExportNotCaseController.java @@ -387,9 +387,13 @@ public class proposalExportNotCaseController { InputStream inputStream = Thread.currentThread().getContextClassLoader().getResourceAsStream("docTemplate/proposal/proposalSH.docx"); - String docxName = info.getString("proposalCode") + "-" + info.getString("proposalName") + ".docx"; - - Path docFile = Files.createFile(proposalSHPath.resolve(docxName)); + String docxBaseName = (info.getString("proposalCode") + "-" + info.getString("proposalName")) + .replaceAll("[/\\\\:*?\"<>|]", "_"); + Path docFile = proposalSHPath.resolve(docxBaseName + ".docx"); + if (Files.exists(docFile)) { + docFile = proposalSHPath.resolve(docxBaseName + "-" + info.getString("id") + ".docx"); + } + Files.createFile(docFile); XWPFTemplate.compile(inputStream, config).render(info).writeToFile(docFile.toString()); }