Sfoglia il codice sorgente

Merge remote-tracking branch 'origin/test' into test

dongxin 1 anno fa
parent
commit
e68f032131

+ 3 - 0
src/main/java/com/ydtech/modules/ins/model/vo/QuoteRespVo.java

@@ -128,6 +128,9 @@ public class QuoteRespVo {
     @ApiModelProperty("商业赔付率")
     private double syLossRation;
 
+    @ApiModelProperty("阳光 交商含增值服务合并经营成本率")
+    private double margeCostRate;
+
     @ApiModelProperty("核心返回车型")
     private CoreModelsVo coreModels;
 

+ 7 - 0
src/main/java/com/ydtech/modules/order/entity/InsAreaCompany.java

@@ -570,6 +570,12 @@ public class InsAreaCompany implements Serializable {
     @TableField(value = "ci_message")
     private String ciMessage;
 
+    /**
+     * 交商含增值服务合并经营成本率 阳光使用
+     */
+    @TableField(value = "merge_cost_rate")
+    private Double mergeCostRate;
+
     //入口总金额
     @TableField(exist = false)
     private BigDecimal entranceAllFee;
@@ -622,6 +628,7 @@ public class InsAreaCompany implements Serializable {
         this.lossRation = quoteRespVo.getLossRation();
         this.jqLossRation = quoteRespVo.getJqLossRation();
         this.syLossRation = quoteRespVo.getSyLossRation();
+        this.mergeCostRate = quoteRespVo.getMargeCostRate();
         // 保单号
         this.jqapplyno = quoteRespVo.getJqApplyNo();
         this.syapplyno = quoteRespVo.getSyApplyNo();

+ 11 - 3
src/main/java/com/ydtech/modules/order/entity/api/yangguang/request/YangGuangAccuracyCalculateRequest.java

@@ -14,6 +14,7 @@ import com.ydtech.modules.order.entity.api.yangguang.response.YangGuangQueryVehi
 import com.ydtech.modules.order.entity.api.yangguang.constants.YgUseNatureCode;
 import com.ydtech.modules.order.entity.config.YangGuangConfigureParameters;
 import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
+import com.ydtech.modules.order.entity.vo.BaseQuoteVo;
 import com.ydtech.modules.order.entity.vo.VehicleAndVesselTax;
 import com.ydtech.modules.order.entity.vo.yangguang.YgQuoteAccidentVo;
 import lombok.*;
@@ -55,6 +56,12 @@ public class YangGuangAccuracyCalculateRequest extends YangGuangBaseRequest{
     @JSONField(name = "InfotransNo")
     private String InfotransNo;
 
+    /**
+     * 自主系数
+     */
+    @JSONField(name = "UnderWritingRate")
+    private String UnderWritingRate;
+
     /**
      * 车辆信息ID号
      */
@@ -216,9 +223,10 @@ public class YangGuangAccuracyCalculateRequest extends YangGuangBaseRequest{
                                              YangGuangQueryVehicleModelResponse.carmodellist carmodellist,
                                              RiskInfoVo riskInfoVo, String startDate,
                                              YangGuangConfigureParameters ygConfigureParameters,
-                                             List<YgQuoteAccidentVo> accidentVo) {
+                                             BaseQuoteVo<List<YgQuoteAccidentVo>> quoteVo) {
     DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
     this.RequestNo = "accuracyCalculate";
+    this.UnderWritingRate = quoteVo.getCoefficient();
     this.ComCode = ygConfigureParameters.getComCode();
     this.HandlerCode = ygConfigureParameters.getHandlerCode();
     this.TongxinNo = ygConfigureParameters.getTongxinNo() == null ? "" : ygConfigureParameters.getTongxinNo();
@@ -274,8 +282,8 @@ public class YangGuangAccuracyCalculateRequest extends YangGuangBaseRequest{
     this.itemcar = new ItemCarInfoDTO(quoteInfoVo.getCarInfo(),carmodellist);
     this.kindList = ItemKindListDTO.toItemKindListDTOList(actualValue, quoteInfoVo.getKindList(),
                 Integer.parseInt(quoteInfoVo.getCarInfo().getSeatCount()) - 1, quoteInfoVo.getCarInfo().isNewEnergy());
-    if (ArrayUtil.isNotEmpty(accidentVo) && accidentVo.size() > 0) {
-        this.NonVehicleProductInformationList = accidentVo.stream().map(NonVehicleProductInformationListDTO::new).collect(Collectors.toList());
+    if (ArrayUtil.isNotEmpty(quoteVo.getAccidentalDrivingVo()) && quoteVo.getAccidentalDrivingVo().size() > 0) {
+        this.NonVehicleProductInformationList = quoteVo.getAccidentalDrivingVo().stream().map(NonVehicleProductInformationListDTO::new).collect(Collectors.toList());
         this.CasualtyFlag = "1";
     }
     this.carshipyTaxInfo = new CarshipyTaxInfoDTO(quoteInfoVo.getVehicleAndVesselTax(),riskInfoVo);

+ 7 - 0
src/main/java/com/ydtech/modules/order/entity/api/yangguang/response/YangGuangAccuracyCalculateResponse.java

@@ -140,6 +140,13 @@ public class YangGuangAccuracyCalculateResponse extends YangGuangBaseResponse{
     @JSONField(name = "DeviceValue")
     private String DeviceValue;
 
+
+    /**
+     *  合并经营成本率
+     */
+    @JSONField(name = "vascostmarginbc")
+    private String vascostmarginbc;
+
     /**
      *  商业险重复投保提示
      */

+ 6 - 6
src/main/java/com/ydtech/modules/order/service/impl/YangGuangOrderApiServiceImpl.java

@@ -127,14 +127,14 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
         //报价
         InsOrders insOrders = insOrdersService.getById(quoteInfoVo.getOrderNo());
 
-        YangGuangAccuracyCalculateRequest yangGuangAccuracyCalculateRequest = new YangGuangAccuracyCalculateRequest(quoteInfoVo, purchasePrice, carModelList1, riskList.get(0),startDate,ygConfigureParameters,quoteVo.getAccidentalDrivingVo());
+        YangGuangAccuracyCalculateRequest yangGuangAccuracyCalculateRequest = new YangGuangAccuracyCalculateRequest(quoteInfoVo, purchasePrice, carModelList1, riskList.get(0),startDate,ygConfigureParameters,quoteVo);
         yangGuangAccuracyCalculateRequest.setInfotransNo(yangGuangQueryVehicleModelResponse.getInfotransNo());
         YangGuangAccuracyCalculateResponse yangGuangAccuracyCalculateResponse = yangGuangRequestApiComponents.accuracyCalculaye(yangGuangAccuracyCalculateRequest);
         if (insOrders.getProductid().equals("034001") || insOrders.getProductid().equals("0330034001") || insOrders.getProductid().equals("0330034002")) {
             if (yangGuangAccuracyCalculateResponse.getErrorCode().equals("0")) {
                 YangGuangAccuracyCalculateResponse.itemcar itemcar = yangGuangAccuracyCalculateResponse.getItemcar();
                 String actualValue = itemcar.getActualValue();
-                YangGuangAccuracyCalculateRequest yangGuangAccuracyCalculateRequest1 = new YangGuangAccuracyCalculateRequest(quoteInfoVo, actualValue, carModelList1, riskList.get(0),startDate,ygConfigureParameters,quoteVo.getAccidentalDrivingVo());
+                YangGuangAccuracyCalculateRequest yangGuangAccuracyCalculateRequest1 = new YangGuangAccuracyCalculateRequest(quoteInfoVo, actualValue, carModelList1, riskList.get(0),startDate,ygConfigureParameters,quoteVo);
                 yangGuangAccuracyCalculateRequest1.setInfotransNo(yangGuangQueryVehicleModelResponse.getInfotransNo());
                 YangGuangAccuracyCalculateResponse yangGuangAccuracyCalculateResponse1 = yangGuangRequestApiComponents.accuracyCalculaye(yangGuangAccuracyCalculateRequest1);
                 boolean isEnergy = carInfo.isNewEnergy();
@@ -655,12 +655,11 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
         }
         YangGuangAccuracyCalculateResponse.discount discount = yangGuangAccuracyCalculateResponse.getDiscount();
         if (discount != null) {
-            quoteRespVo.setILogPreUdwMess(discount.getFinalmarkingnobc() != null ? discount.getFinalmarkingnobc() : "");
+            quoteRespVo.setLossRation(Double.parseDouble(discount.getFinalmarkingnobc() != null ? discount.getFinalmarkingnobc() : "0.00"));
             quoteRespVo.setJqScore(discount.getMarkingnobcCI() != null ? discount.getMarkingnobcCI() : "");
             quoteRespVo.setSyScore(discount.getMarkingnobcBI() != null ? discount.getMarkingnobcBI() : "");
-            quoteRespVo.setSyClaims(discount.getClaimTimes() != null ? discount.getClaimTimes() : "");
-            //自主定价系数
-            quoteRespVo.setPricingCoefficient(discount.getActualautoundwrtfactor() != null ? discount.getActualautoundwrtfactor() : "");
+            quoteRespVo.setJqLossRation(Double.parseDouble(discount.getFinalmarkingnoCi() != null ? discount.getFinalmarkingnoCi() : "0.00"));
+            quoteRespVo.setSyLossRation(Double.parseDouble(discount.getFinalmarkingnoBi() != null ? discount.getFinalmarkingnoBi() : "0.00"));
         }
 
         List<QuoteKindRespVo> kindList1 = new ArrayList<>();
@@ -731,6 +730,7 @@ public class YangGuangOrderApiServiceImpl implements YangGuangOrderApiService {
         insAreaCompany.setReptxt(JSON.parseObject(JSON.toJSONString(yangGuangAccuracyCalculateResponse)));
         insAreaCompany.setOrderstatus(InsOrderStatusEnum.QUOTE_ING.getCode());
         insAreaCompany.setInsOrderNo(yangGuangAccuracyCalculateResponse.getInfotransNo());
+        insAreaCompany.setMergeCostRate(Double.parseDouble(yangGuangAccuracyCalculateResponse.getVascostmarginbc()));
         InsOrders insOrders = insOrdersService.getById(orderId);
         //车船税
         if (!insOrders.getProductid().equals("034001") && !insOrders.getProductid().equals("034002")) {