新增待办信息

This commit is contained in:
2025-12-22 22:04:01 +08:00
parent e4f0dab2a8
commit dac75e453c
38 changed files with 52 additions and 147 deletions

View File

@@ -530,14 +530,12 @@ public class MailReceiveUtils {
String originalFileName = part.getFileName();
String fileNameForLog = originalFileName == null ? "未知文件名" : decodeMimeText(originalFileName);
logger.info("开始下载附件[" + fileNameForLog + "],开始时间:" + new Date(attachDownloadStartTime));
// 2. 修复:文件名解码(解决乱码)
if (originalFileName != null) {
originalFileName = decodeMimeText(originalFileName);
} else {
originalFileName = "unknown_" + System.currentTimeMillis();
}
// 3. 修复附件FileType优先从文件扩展名识别解决ContentType错误
String fileExt = getFileExtension(originalFileName);
String fileType = MIME_TYPE_MAP.getContentType(originalFileName);
@@ -584,12 +582,10 @@ public class MailReceiveUtils {
long costTime = attachDownloadEndTime - attachDownloadStartTime;
logger.info("完成下载附件[" + originalFileName + "],结束时间:" + new Date(attachDownloadEndTime) +
",耗时:" + costTime + "ms文件路径" + finalFile.getAbsolutePath());
// 6. 封装附件信息修复FileType增加下载时间字段
attachment.setStoragePath(finalFile.getAbsolutePath());
attachment.setFileSize(finalFile.length());
attachment.setCreateTime(new Date());
attachment.setTid(System.currentTimeMillis());
attachment.setMailId(System.currentTimeMillis());
attachment.setMessageId(messageId);
attachment.setFileName(originalFileName);
@@ -602,6 +598,7 @@ public class MailReceiveUtils {
attachment.setDownloadStartTime(new Date(attachDownloadStartTime)); // 附件下载开始时间
attachment.setDownloadEndTime(new Date(attachDownloadEndTime)); // 附件下载结束时间
attachment.setDownloadCostTime(costTime); // 附件下载耗时(毫秒)
attachment.setSvgIcon(MyFileUtils.getIcon(fileExt));
return attachment;
}

View File

@@ -95,18 +95,20 @@ public class MyFileUtils {
public static String getIcon(String ext) {
switch (ext) {
case "wps":
return "icons/file-wps.png";
case "doc", "docx":
return "icons/file-word-line.svg";
return "icons/file-docx.png";
case "xls", "xlsx":
return "icons/file-excel-line.svg";
return "icons/file-xlsx.png";
case "ppt", "pptx":
return "icons/file-ppt-line.svg";
return "icons/file-pptx.png";
case "pdf":
return "icons/file-pdf-line.svg";
return "icons/file-pdf.png";
case "zip", "gz":
return "icons/folder-zip-line.svg";
return "icons/file-zip.png";
default:
return "icons/file-text-line.svg";
return "icons/file.png";
}
}
}