فهرست منبع

feat:邮件解析-邮件解析记录规模表增加是否入库,异常情况字段

mozuwen 7 ماه پیش
والد
کامیت
c0bcc661b0

+ 10 - 0
service-base/src/main/java/com/simuwang/base/pojo/dos/EmailFundAssetDO.java

@@ -57,6 +57,16 @@ public class EmailFundAssetDO {
     @TableField(value = "asset_net")
     private BigDecimal assetNet;
     /**
+     * 是否入库 0-没有,1-有
+     */
+    @TableField(value = "is_stored")
+    private Integer isStored;
+    /**
+     * 异常情况:1-无异常,2-资产净值<=0
+     */
+    @TableField(value = "exception_status")
+    private Integer exceptionStatus;
+    /**
      * 记录的有效性;1-有效;0-无效
      */
     @TableField(value = "isvalid")

+ 4 - 2
service-base/src/main/resources/mapper/EmailFundAssetMapper.xml

@@ -10,6 +10,8 @@
         <result column="price_date" property="priceDate"/>
         <result column="asset_net" property="assetNet"/>
         <result column="asset_share" property="assetShare"/>
+        <result column="is_stored" property="isStored"/>
+        <result column="exception_status" property="exceptionStatus"/>
         <result column="isvalid" property="isvalid"/>
         <result column="creatorid" property="creatorId"/>
         <result column="createtime" property="createTime"/>
@@ -18,11 +20,11 @@
     </resultMap>
 
     <insert id="batchInsert" parameterType="com.simuwang.base.pojo.dos.EmailFundAssetDO">
-        insert into PPW_EMAIL.email_fund_asset(file_id, fund_id, fund_name,register_number,price_date,asset_net,asset_share,
+        insert into PPW_EMAIL.email_fund_asset(file_id, fund_id, fund_name,register_number,price_date,asset_net,asset_share,is_stored,exception_status,
                                               isvalid, creatorid, createtime, updaterid, updatetime)
         values
         <foreach collection="itemDoList" item="itemDo" index="index" separator=",">
-            (#{itemDo.fileId},#{itemDo.fundId},#{itemDo.fundName},#{itemDo.registerNumber},#{itemDo.priceDate},#{itemDo.assetNet},#{itemDo.assetShare},
+            (#{itemDo.fileId},#{itemDo.fundId},#{itemDo.fundName},#{itemDo.registerNumber},#{itemDo.priceDate},#{itemDo.assetNet},#{itemDo.assetShare},#{itemDo.isStored},#{itemDo.exceptionStatus},
             #{itemDo.isvalid}, #{itemDo.creatorId}, #{itemDo.createTime}, #{itemDo.updaterId}, #{itemDo.updateTime})
         </foreach>
 

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

@@ -230,6 +230,8 @@ public class EmailParseService {
         if (assetNet == null) {
             return fundAssetDOList;
         }
+        Integer isStored = fundNavDTO.getParseStatus() != null
+                && (fundNavDTO.getParseStatus().equals(NavParseStatusConst.ASSET_NET_NEGATIVE) || fundNavDTO.getParseStatus().equals(NavParseStatusConst.SUCCESS)) ? 1 : 0;
         Date priceDate = DateUtil.parse(fundNavDTO.getPriceDate(), DateConst.YYYY_MM_DD);
         if (CollUtil.isNotEmpty(fundNavDTO.getFundIdList())) {
             for (String fundId : fundNavDTO.getFundIdList()) {
@@ -241,6 +243,8 @@ public class EmailParseService {
                 emailFundAssetDO.setRegisterNumber(fundNavDTO.getRegisterNumber());
                 emailFundAssetDO.setAssetNet(assetNet);
                 emailFundAssetDO.setAssetShare(assetShare);
+                emailFundAssetDO.setIsStored(isStored);
+                emailFundAssetDO.setExceptionStatus(fundNavDTO.getParseStatus());
                 emailFundAssetDO.setIsvalid(1);
                 emailFundAssetDO.setCreatorId(0);
                 emailFundAssetDO.setCreateTime(parseDate);
@@ -256,6 +260,8 @@ public class EmailParseService {
             emailFundAssetDO.setRegisterNumber(fundNavDTO.getRegisterNumber());
             emailFundAssetDO.setAssetNet(assetNet);
             emailFundAssetDO.setAssetShare(assetShare);
+            emailFundAssetDO.setIsStored(isStored);
+            emailFundAssetDO.setExceptionStatus(fundNavDTO.getParseStatus());
             emailFundAssetDO.setIsvalid(1);
             emailFundAssetDO.setCreatorId(0);
             emailFundAssetDO.setCreateTime(parseDate);