Pārlūkot izejas kodu

fix: 主页解析异常原因概述优化

chenjianhua 4 mēneši atpakaļ
vecāks
revīzija
0f54abfb25

+ 11 - 1
service-base/src/main/java/com/simuwang/base/common/conts/NavParseStatusConst.java

@@ -127,7 +127,7 @@ public class NavParseStatusConst {
     /**
      * 净值日期错误
      */
-    public final static String PRICE_DATE_IS_ERROR_TEXT = "净值日期误";
+    public final static String PRICE_DATE_IS_ERROR_TEXT = "净值日期格式有误";
 
     /**
      * 净值规模数据格式有误
@@ -157,4 +157,14 @@ public class NavParseStatusConst {
      * 单位净值和累计净值和资产净值均缺失
      */
     public final static String NAV_ASSET_IS_NULL_TEXT = "单位净值和累计净值和资产净值均缺失";
+
+    /**
+     * 模板不支持
+     */
+    public final static String TEMPLATE_NOT_SUPPORTED_TEXT = "模板不支持";
+
+    /**
+     * 模板不支持
+     */
+    public final static String NO_DATA_FROM_PDF_TEXT = "无法从PDF文件中获取到数据";
 }

+ 5 - 5
service-base/src/main/java/com/simuwang/base/common/util/NavDataUtil.java

@@ -45,19 +45,19 @@ public class NavDataUtil {
         // 净值日期格式校验
         if (StrUtil.isBlank(fundNavDTO.getPriceDate())) {
             fundNavDTO.setParseStatus(NavParseStatusConst.PRICE_DATE_IS_NULL);
-            return "缺少净值日期";
+            return NavParseStatusConst.PRICE_DATE_IS_NULL_TEXT;
         }
         if (StrUtil.isBlank(DateUtils.stringToDate(fundNavDTO.getPriceDate()))) {
             fundNavDTO.setParseStatus(NavParseStatusConst.PRICE_DATE_IS_ERROR);
-            return "净值日期格式有误";
+            return NavParseStatusConst.PRICE_DATE_IS_ERROR_TEXT;
         }
         if (StrUtil.isBlank(fundNavDTO.getFundName()) && StrUtil.isBlank(fundNavDTO.getRegisterNumber())) {
             fundNavDTO.setParseStatus(NavParseStatusConst.FUND_NAME_REGISTER_IS_NULL);
-            return "基金名称和备案编码均缺失";
+            return NavParseStatusConst.FUND_NAME_REGISTER_IS_NULL_TEXT;
         }
         if(StrUtil.isBlank(fundNavDTO.getNav()) && StrUtil.isBlank(fundNavDTO.getCumulativeNavWithdrawal()) && StrUtil.isBlank(fundNavDTO.getAssetNet())){
             fundNavDTO.setParseStatus(NavParseStatusConst.NAV_ASSET_IS_NULL);
-            return "单位净值和累计净值和资产净值均缺失";
+            return NavParseStatusConst.NAV_ASSET_IS_NULL_TEXT;
         }
         // 单位净值,累计单位净值,资产净值,资产份额数字格式校验
         boolean isvalidNumericFormat = (StrUtil.isBlank(fundNavDTO.getNav()) || StringUtil.isNumeric(fundNavDTO.getNav()))
@@ -66,7 +66,7 @@ public class NavDataUtil {
                 && (StrUtil.isBlank(fundNavDTO.getAssetShare()) || StringUtil.isNumeric(fundNavDTO.getAssetShare()));
         if (!isvalidNumericFormat) {
             fundNavDTO.setParseStatus(NavParseStatusConst.NAV_ASSET_IS_ERROR);
-            return "单位净值或累计净值或资产净值或资产份额格式不正确";
+            return NavParseStatusConst.NAV_ASSET_IS_ERROR_TEXT;
         }
         return null;
     }

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

@@ -235,9 +235,9 @@ public class EmailParseService {
             // 邮件解析失败时 -> 保存失败原因
             int hasPdfFile = emailContentInfoDTOList.stream().map(EmailContentInfoDTO::getFilePath).anyMatch(ExcelUtil::isPdf) ? 1 : 0;
             List<EmailFundNavDTO> navDTOList = fileNameNavMap.values().stream().flatMap(List::stream).toList();
-            failReason = hasPdfFile == 1 && CollUtil.isEmpty(navDTOList) ? "无法从PDF文件中获取到数据" : navDTOList.stream().map(EmailFundNavDTO::getFailReason).distinct().collect(Collectors.joining("/"));
+            failReason = hasPdfFile == 1 && CollUtil.isEmpty(navDTOList) ? NavParseStatusConst.NO_DATA_FROM_PDF_TEXT : navDTOList.stream().map(EmailFundNavDTO::getFailReason).distinct().collect(Collectors.joining("/"));
             if (StrUtil.isBlank(failReason)) {
-                failReason = "模板不支持";
+                failReason = NavParseStatusConst.TEMPLATE_NOT_SUPPORTED_TEXT;
             }
         }
         // 报告邮件有一条失败就表示整个邮件解析失败