Przeglądaj źródła

驾意险详情数据新增

wanghao 1 miesiąc temu
rodzic
commit
69b20e0d9b

+ 6 - 2
commons/src/main/java/com/jzg/commons/entity/orders/po/InsOrdersAccidentalDriving.java

@@ -1,12 +1,13 @@
 package com.jzg.commons.entity.orders.po;
 
-import com.alibaba.excel.annotation.ExcelIgnore;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.jzg.commons.entity.po.JyxBlame;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 
-import java.math.BigDecimal;
+import java.util.List;
 
 @Data
 @Schema(description = "保险公司驾意险")
@@ -34,4 +35,7 @@ public class InsOrdersAccidentalDriving {
     @Schema(description = "是否删除")
     @TableLogic
     private Integer isDelete;
+
+    @TableField(exist = false)
+    private List<JyxBlame> blameList;
 }

+ 7 - 0
commons/src/main/java/com/jzg/commons/entity/quote/vo/AccidentalDrivingVo.java

@@ -1,5 +1,6 @@
 package com.jzg.commons.entity.quote.vo;
 
+import com.jzg.commons.entity.po.JyxBlame;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.AllArgsConstructor;
 import lombok.Data;
@@ -7,6 +8,7 @@ import lombok.NoArgsConstructor;
 
 import java.io.Serial;
 import java.io.Serializable;
+import java.util.List;
 
 /**
  * @description: 非车险
@@ -85,4 +87,9 @@ public class AccidentalDrivingVo implements Serializable {
     @Schema(description = "保费")
     private String premium;
 
+    /**
+     * 获取订单相关的驾意险详情
+     */
+    private List<JyxBlame> jyxBlames;
+
 }

+ 2 - 0
commons/src/main/java/com/jzg/commons/entity/quote/vo/orders/InsOrdersVo.java

@@ -135,6 +135,8 @@ public class InsOrdersVo extends QuoteVo {
 
     @Schema(description = "方案ID")
     private String schemeId;
+    @Schema(description = "驾意险和详情")
+    private List<InsOrdersAccidentalDriving> insOrdersAccidentalDrivings;
 
     /**
      * 费用比例信息

+ 9 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersServiceImpl.java

@@ -596,7 +596,15 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
                 accidentalDrivingVo.setQuantity(insOrdersAccidentalDriving.getQuantity());
                 accidentalDrivingVo.setSumAmount(insOrdersAccidentalDriving.getAmount());
                 accidentalDrivingVo.setPremium(insOrdersAccidentalDriving.getAmount());
+                // 驾意险详情处理
+                List<InsOrdersAccidentalDriving> accidentalDrivings = insOrdersVo.getInsOrdersAccidentalDrivings();
+                accidentalDrivings.forEach(driving ->{
+                    if(insOrdersAccidentalDriving.getRiskCode().equals(driving.getRiskCode())){
+                        accidentalDrivingVo.setJyxBlames(driving.getBlameList());
+                    }
+                });
                 accidentalDrivingVos.add(accidentalDrivingVo);
+
             }
             insOrdersVo.setAccidentalDrivings(accidentalDrivingVos);
         }
@@ -1496,6 +1504,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         if (esmInsCompanyHttpResult.getCode() == 200) {
             resultVo.setInsCompanyVo(esmInsCompanyHttpResult.getData(),resultVo.getCosts());
         }
+
         // 影像资料
         List<InsTaskImages> imagesList = insTaskImagesService.list(new LambdaQueryWrapper<InsTaskImages>()
                 .eq(InsTaskImages::getQuoteNo, insOrdersVo.getQuoteNo())

+ 18 - 4
tenant/insurance/quotation-summary/src/main/resources/mapper/InsOrdersMapper.xml

@@ -226,6 +226,8 @@
         <collection property="kindInfoVo" column="{orderNo=id}" select="selectKindMap"/>
         <collection property="accidentalDrivings" column="{orderNo=id}"
                     select="selectOrdersAccidentalDrivingByOrderNo"/>
+        <collection property="insOrdersAccidentalDrivings" column="{orderNo=id}"
+                    select="selectOrdersAccidentalDrivingByOrderNo"/>
         <collection property="feeOrdersVo" column="{orderNo=id}"
                     select="selectInsFeeOrderByOrderNo"/>
     </resultMap>
@@ -244,6 +246,15 @@
         <result property="orderNo" column="order_no" jdbcType="VARCHAR"/>
         <result property="riskCode" column="risk_code" jdbcType="VARCHAR"/>
         <result property="riskName" column="risk_name" jdbcType="VARCHAR"/>
+        <collection property="blameList" ofType="com.jzg.commons.entity.po.JyxBlame">
+            <id column="blame_id" property="id"/>
+            <result column="blame" property="blame"/>
+            <result column="blame_code" property="blameCode"/>
+            <result column="blame_coverage" property="blameCoverage"/>
+            <result column="blame_premium" property="blamePremium"/>
+            <result column="blame_system_code" property="systemCode"/>
+            <result column="blame_jyx_config_id" property="jyxConfigId"/>
+        </collection>
     </resultMap>
 
     <resultMap id="InsOrdersExternalPolicyMap" type="com.jzg.commons.entity.orders.po.InsOrdersExternalPolicy">
@@ -332,11 +343,14 @@
     </resultMap>
 
     <select id="selectOrdersAccidentalDrivingByOrderNo" resultMap="InsOrdersAccidentalDrivingMap">
-        select id, order_no, risk_code, risk_name
-        from ins_orders_accidental_driving
+        select ioad.id, ioad.order_no, ioad.risk_code, ioad.risk_name,
+        jb.id as blame_id,jb.blame,jb.blame_code,jb.blame_coverage,jb.blame_premium,jb.system_code as blame_system_code,jb.jyx_config_id as blame_jyx_config_id
+        from ins_orders_accidental_driving ioad
+        left join jyx_config jc on ioad.risk_code = jc.product_code AND jc.is_delete = 0
+        left join jyx_blame jb on jc.id = jb.jyx_config_id AND jb.is_delete = 0
         <where>
-            and is_delete = 0
-            and order_no = #{orderNo}
+            and ioad.is_delete = 0
+            and ioad.order_no = #{orderNo}
         </where>
     </select>