|
|
@@ -1,6 +1,8 @@
|
|
|
package com.ydtech.modules.order.entity.api.chengtai.request;
|
|
|
|
|
|
import cn.hutool.core.util.ArrayUtil;
|
|
|
+import cn.hutool.json.JSON;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlElementWrapper;
|
|
|
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlProperty;
|
|
|
import com.fasterxml.jackson.dataformat.xml.annotation.JacksonXmlRootElement;
|
|
|
@@ -9,6 +11,7 @@ import com.ydtech.modules.admin.service.SysAreaService;
|
|
|
import com.ydtech.modules.ins.model.vo.*;
|
|
|
import com.ydtech.modules.order.constants.InsuranceTypeCorrespondence;
|
|
|
import com.ydtech.modules.order.entity.InsAreaCompany;
|
|
|
+import com.ydtech.modules.order.entity.InsAreaCompanyInfo;
|
|
|
import com.ydtech.modules.order.entity.InsOrders;
|
|
|
import com.ydtech.modules.order.entity.api.chengtai.XmlDateTimeFormatter;
|
|
|
import com.ydtech.modules.order.entity.api.chengtai.constants.CtKindCodeEnum;
|
|
|
@@ -23,6 +26,7 @@ import lombok.Data;
|
|
|
import lombok.NoArgsConstructor;
|
|
|
|
|
|
import java.math.BigDecimal;
|
|
|
+import java.math.BigInteger;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
|
|
|
|
@@ -94,11 +98,11 @@ public class SubmitRequest {
|
|
|
// @JacksonXmlProperty(localName = "RiskSpecialClausesList")
|
|
|
// private List<RiskSpecialClauses> RiskSpecialClausesList;
|
|
|
|
|
|
- public SubmitRequest(InsOrders insOrders, BigDecimal actualValue, CarModelQueryResponse.vehicle vehicle,
|
|
|
+ public SubmitRequest(InsOrders insOrders, InsAreaCompanyInfo insAreaCompanyInfo, BigDecimal actualValue, CarModelQueryResponse.vehicle vehicle,
|
|
|
ChengTaiConfigureParameters parameters, InsAreaCompany insAreaCompany,CustomerInfoVo policyHolderInfo,CustomerInfoVo insuredPersonInfo) {
|
|
|
this.Head = new head(parameters);
|
|
|
this.BasePart = new basePart(insOrders,insAreaCompany);
|
|
|
- this.ItemMotor = new itemMotor(insOrders,actualValue,vehicle);
|
|
|
+ this.ItemMotor = new itemMotor(insOrders,insAreaCompanyInfo,actualValue,vehicle);
|
|
|
this.riskListWrapper = new RiskListWrapper();
|
|
|
this.riskListWrapper.setRisks(Risk.buildRiskList(insOrders,insAreaCompany));
|
|
|
this.kindListWrapper = new KindListWrapper();
|
|
|
@@ -556,8 +560,8 @@ public class SubmitRequest {
|
|
|
@JacksonXmlProperty(localName = "runMiles")
|
|
|
private Integer runMiles;
|
|
|
|
|
|
- public itemMotor(InsOrders insOrders, BigDecimal actualValue,CarModelQueryResponse.vehicle vehicle) {
|
|
|
- CarInfoVo carInfoVo = insOrders.getCarinfo().toJavaObject(CarInfoVo.class);
|
|
|
+ public itemMotor(InsOrders insOrders, InsAreaCompanyInfo insAreaCompanyInfo, BigDecimal actualValue, CarModelQueryResponse.vehicle vehicle) {
|
|
|
+ CarInfoVo carInfoVo = JSONObject.parseObject(insAreaCompanyInfo.getCarInfo()).toJavaObject(CarInfoVo.class);
|
|
|
CustomerInfoVo customerInfoVo = insOrders.getOwnerinfo().toJavaObject(CustomerInfoVo.class);
|
|
|
this.carOwner = customerInfoVo.getName();
|
|
|
this.licenseNo = carInfoVo.getLicenseNo();
|
|
|
@@ -1232,6 +1236,7 @@ public class SubmitRequest {
|
|
|
kind.quantity = Integer.valueOf(kindInfoVo.getDeductibleRate());
|
|
|
} else if (ArrayUtil.indexOf(InsuranceTypeCorrespondence.getSpecialContractClause(), kindCode) >= 0) {
|
|
|
kind.quantity = kindInfoVo.getServiceTimes();
|
|
|
+ kind.sumInsured = new BigDecimal(BigInteger.ZERO);
|
|
|
} else if (CtKindCodeEnum.A.getCode().equals(kindCode)) {
|
|
|
kind.sumInsured = actualValue;
|
|
|
} else {
|