From 853307d05e56ea3830d7e19824f7634e2f5ecba9 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 01 八月 2025 16:31:24 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/QianYunTong --- UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/pdf/TripSheetGenerator.java | 7 +------ UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java | 12 +++++++++--- UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java | 11 ++++++++--- 3 files changed, 18 insertions(+), 12 deletions(-) diff --git a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java index 75bd9e1..494fe50 100644 --- a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java +++ b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java @@ -54,6 +54,8 @@ import java.io.Serializable; import java.lang.reflect.InvocationTargetException; import java.text.SimpleDateFormat; +import java.time.LocalDate; +import java.time.format.DateTimeFormatter; import java.util.*; /** @@ -2382,12 +2384,15 @@ List<TripOrderVo> tripOrderVos = processTripOrderVos(orderList); String filePath = tripSheetGenerator.generatePdf(tripOrderVos); File attachment = new File(filePath); - emailUtil.sendEmailWithAttachment(tripSheet.getRecipientEmail(), "行程单", "请查收您的行程单", attachment); + String displayFileName = "贵人家园行程单.pdf"; + emailUtil.sendEmailWithAttachment(tripSheet.getRecipientEmail(), "行程单", "请查收您的行程单", attachment,displayFileName); attachment.delete(); // 发送成功后删除临时文件 - return ResultUtil.success("邮件发送成功"); + Map<String, Object> result = new HashMap<>(); + result.put("orderNum", orderList.size()); + return ResultUtil.success(result); } catch (Exception e) { e.printStackTrace(); - return ResultUtil.error("邮件发送失败"); + return ResultUtil.error("邮件发送失败"+e.getMessage()); } } /** diff --git a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/pdf/TripSheetGenerator.java b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/pdf/TripSheetGenerator.java index 23c7f29..9e2e2f8 100644 --- a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/pdf/TripSheetGenerator.java +++ b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/pdf/TripSheetGenerator.java @@ -43,7 +43,7 @@ throw new IllegalArgumentException("订单列表不能为空"); } - String fileName = "行程单_" + UUID.randomUUID() + ".pdf"; + String fileName = "贵人家园行程单_" + UUID.randomUUID() + ".pdf"; String filePath = pdfDir + fileName; File file = new File(filePath); FileUtils.forceMkdirParent(file); @@ -303,11 +303,6 @@ table.addCell(cell); } - private void addTableCell(PdfPTable table, String text, Font font) { - PdfPCell cell = new PdfPCell(new Paragraph(text != null ? text : "", font)); - cell.setPadding(5); - table.addCell(cell); - } /** * 获取中文字体,优先自定义字体,fallback到 CJK 内置 diff --git a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java index e09f2dd..0e436a9 100644 --- a/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java +++ b/UserQYTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/EmailUtil.java @@ -9,7 +9,9 @@ import org.springframework.stereotype.Service; import javax.mail.MessagingException; import javax.mail.internet.MimeMessage; +import javax.mail.internet.MimeUtility; import java.io.File; +import java.io.UnsupportedEncodingException; @Component public class EmailUtil { @@ -24,7 +26,7 @@ this.javaMailSender = javaMailSender; } - public void sendEmailWithAttachment(String to, String subject, String text, File attachment) throws MessagingException { + public void sendEmailWithAttachment(String to, String subject, String text, File attachment,String displayFileName) throws MessagingException, UnsupportedEncodingException { MimeMessage message = javaMailSender.createMimeMessage(); MimeMessageHelper helper = new MimeMessageHelper(message, true); @@ -35,8 +37,12 @@ // 设置邮件主题和内容 helper.setSubject(subject); helper.setText(text); - // 添加附件 - helper.addAttachment(attachment.getName(), attachment); + // 使用显示文件名而非原文件名 + helper.addAttachment( + MimeUtility.encodeWord(displayFileName), // 编码避免中文乱码 + attachment + ); + // 发送邮件 javaMailSender.send(message); -- Gitblit v1.7.1