Explorar el Código

feat:文件名不带"/:*?\"<>"

mozuwen hace 5 meses
padre
commit
06c8670388

+ 1 - 1
service-base/src/main/java/com/simuwang/base/common/util/EmailUtil.java

@@ -50,7 +50,7 @@ public class EmailUtil {
      */
     public static List<EmailContentInfoDTO> collectMimeMultipart(Message message, String emailAddress, String path) throws Exception {
         List<EmailContentInfoDTO> emailContentInfoDTOList = CollUtil.newArrayList();
-        String emailTitle = message.getSubject();
+        String emailTitle = StrUtil.isNotBlank(message.getSubject())?message.getSubject().replaceAll("[/:*?\\\"<>|]", "") :null;
         String emailDate = DateUtil.format(message.getSentDate(), DateConst.YYYYMMDDHHMMSS24);
         String emailDateStr = DateUtil.format(message.getSentDate(), DateConst.YYYYMMDD);
         String filePath = path + "/" + emailAddress + "/" + emailDateStr + "/";

+ 2 - 0
service-base/src/main/java/com/simuwang/base/pojo/dto/EmailContentInfoDTO.java

@@ -1,10 +1,12 @@
 package com.simuwang.base.pojo.dto;
 
 import lombok.Data;
+import lombok.ToString;
 
 import java.io.Serializable;
 
 @Data
+@ToString
 public class EmailContentInfoDTO implements Serializable {
 
     private static final long serialVersionUID = 202104140906313753L;

+ 8 - 2
service-daq/src/main/java/com/simuwang/daq/service/EmailParseService.java

@@ -163,8 +163,14 @@ public class EmailParseService {
                     log.error("堆栈信息:{}", ExceptionUtil.stacktraceToString(e));
                 }
             }
-            // 保存相关信息 -> 邮件信息表,邮件文件表,邮件净值表,邮件规模表,基金净值表
-            saveRelatedTable(mailboxInfoDTO.getAccount(), emailContentInfoDTOList, fileNameNavMap);
+
+            try {
+                // 保存相关信息 -> 邮件信息表,邮件文件表,邮件净值表,邮件规模表,基金净值表
+                saveRelatedTable(mailboxInfoDTO.getAccount(), emailContentInfoDTOList, fileNameNavMap);
+            }catch (Exception exception){
+                log.error("邮件信息:{},堆栈信息:{}", emailContentInfoDTOList,ExceptionUtil.stacktraceToString(exception));
+            }
+
             log.info("结束邮件解析 -> 邮箱信息:{},开始时间:{},结束时间:{}", mailboxInfoDTO, DateUtil.format(startDate, DateConst.YYYY_MM_DD_HH_MM_SS), DateUtil.format(endDate, DateConst.YYYY_MM_DD_HH_MM_SS));
         }
     }