|
@@ -2,11 +2,18 @@ package com.ydtech.modules.order.entity.api.dajia.request;
|
|
|
|
|
|
|
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
|
|
import com.ydtech.modules.order.entity.api.dajia.DaJiaBaseRequest;
|
|
import com.ydtech.modules.order.entity.api.dajia.DaJiaBaseRequest;
|
|
|
|
|
+import com.ydtech.modules.order.entity.api.dajia.DaJiaConfigureParameters;
|
|
|
|
|
+import com.ydtech.modules.order.entity.api.dajia.constants.*;
|
|
|
|
|
+import com.ydtech.modules.order.entity.api.dajia.response.ODR2009Response;
|
|
|
|
|
+import com.ydtech.modules.order.entity.vo.BaseQuoteInfoVo;
|
|
|
import lombok.Data;
|
|
import lombok.Data;
|
|
|
import lombok.EqualsAndHashCode;
|
|
import lombok.EqualsAndHashCode;
|
|
|
import lombok.NoArgsConstructor;
|
|
import lombok.NoArgsConstructor;
|
|
|
|
|
|
|
|
import java.io.Serializable;
|
|
import java.io.Serializable;
|
|
|
|
|
+import java.util.Objects;
|
|
|
|
|
+
|
|
|
|
|
+import static com.ydtech.modules.order.entity.api.dajia.constants.CInspectRec.INSREC1;
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -16,7 +23,7 @@ import java.io.Serializable;
|
|
|
* @date: 2023/11/14 16:51
|
|
* @date: 2023/11/14 16:51
|
|
|
**/
|
|
**/
|
|
|
@EqualsAndHashCode(callSuper = true)
|
|
@EqualsAndHashCode(callSuper = true)
|
|
|
-@NoArgsConstructor
|
|
|
|
|
|
|
+//@NoArgsConstructor
|
|
|
@Data
|
|
@Data
|
|
|
public class ODR1008Request extends DaJiaBaseRequest {
|
|
public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
|
|
|
|
@@ -54,7 +61,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
@JsonProperty("applicantCBusiness")
|
|
@JsonProperty("applicantCBusiness")
|
|
|
private Integer applicantCBusiness;
|
|
private Integer applicantCBusiness;
|
|
|
@JsonProperty("applicantCCertfCde")
|
|
@JsonProperty("applicantCCertfCde")
|
|
|
- private Long applicantCCertfCde;
|
|
|
|
|
|
|
+ private String applicantCCertfCde;
|
|
|
@JsonProperty("applicantCCertfCls")
|
|
@JsonProperty("applicantCCertfCls")
|
|
|
private String applicantCCertfCls;
|
|
private String applicantCCertfCls;
|
|
|
@JsonProperty("applicantCCountry")
|
|
@JsonProperty("applicantCCountry")
|
|
@@ -91,6 +98,8 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
private Integer applicantCounty;
|
|
private Integer applicantCounty;
|
|
|
@JsonProperty("applicantEmPower")
|
|
@JsonProperty("applicantEmPower")
|
|
|
private Integer applicantEmPower;
|
|
private Integer applicantEmPower;
|
|
|
|
|
+ @JsonProperty("applicantSuffixAddr")
|
|
|
|
|
+ private String applicantSuffixAddr;
|
|
|
@JsonProperty("applicantEmail")
|
|
@JsonProperty("applicantEmail")
|
|
|
private String applicantEmail;
|
|
private String applicantEmail;
|
|
|
@JsonProperty("applicantEthnicity")
|
|
@JsonProperty("applicantEthnicity")
|
|
@@ -100,7 +109,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
@JsonProperty("applicantIssueOrg")
|
|
@JsonProperty("applicantIssueOrg")
|
|
|
private String applicantIssueOrg;
|
|
private String applicantIssueOrg;
|
|
|
@JsonProperty("applicantMobile")
|
|
@JsonProperty("applicantMobile")
|
|
|
- private Long applicantMobile;
|
|
|
|
|
|
|
+ private String applicantMobile;
|
|
|
@JsonProperty("applicantNme")
|
|
@JsonProperty("applicantNme")
|
|
|
private String applicantNme;
|
|
private String applicantNme;
|
|
|
@JsonProperty("applicantNote")
|
|
@JsonProperty("applicantNote")
|
|
@@ -128,7 +137,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
@JsonProperty("applicantWorkDpt")
|
|
@JsonProperty("applicantWorkDpt")
|
|
|
private Integer applicantWorkDpt;
|
|
private Integer applicantWorkDpt;
|
|
|
@JsonProperty("applicantZipCde")
|
|
@JsonProperty("applicantZipCde")
|
|
|
- private Integer applicantZipCde;
|
|
|
|
|
|
|
+ private String applicantZipCde;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@NoArgsConstructor
|
|
@NoArgsConstructor
|
|
@@ -140,7 +149,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
@JsonProperty("busiBrkrCde")
|
|
@JsonProperty("busiBrkrCde")
|
|
|
private String busiBrkrCde;
|
|
private String busiBrkrCde;
|
|
|
@JsonProperty("busiBsnsTyp")
|
|
@JsonProperty("busiBsnsTyp")
|
|
|
- private Integer busiBsnsTyp;
|
|
|
|
|
|
|
+ private String busiBsnsTyp;
|
|
|
@JsonProperty("busiChaSalesId")
|
|
@JsonProperty("busiChaSalesId")
|
|
|
private Integer busiChaSalesId;
|
|
private Integer busiChaSalesId;
|
|
|
@JsonProperty("busiChannelSrc")
|
|
@JsonProperty("busiChannelSrc")
|
|
@@ -152,7 +161,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
@JsonProperty("busiDataFlag")
|
|
@JsonProperty("busiDataFlag")
|
|
|
private String busiDataFlag;
|
|
private String busiDataFlag;
|
|
|
@JsonProperty("busiDataSrc")
|
|
@JsonProperty("busiDataSrc")
|
|
|
- private Integer busiDataSrc;
|
|
|
|
|
|
|
+ private String busiDataSrc;
|
|
|
@JsonProperty("busiDptCde")
|
|
@JsonProperty("busiDptCde")
|
|
|
private String busiDptCde;
|
|
private String busiDptCde;
|
|
|
@JsonProperty("busiGarageCode")
|
|
@JsonProperty("busiGarageCode")
|
|
@@ -164,7 +173,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
@JsonProperty("busiGrantDptNme")
|
|
@JsonProperty("busiGrantDptNme")
|
|
|
private String busiGrantDptNme;
|
|
private String busiGrantDptNme;
|
|
|
@JsonProperty("busiId")
|
|
@JsonProperty("busiId")
|
|
|
- private Long busiId;
|
|
|
|
|
|
|
+ private String busiId;
|
|
|
@JsonProperty("busiOpdpt")
|
|
@JsonProperty("busiOpdpt")
|
|
|
private String busiOpdpt;
|
|
private String busiOpdpt;
|
|
|
@JsonProperty("busiOprCde")
|
|
@JsonProperty("busiOprCde")
|
|
@@ -180,7 +189,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
@JsonProperty("busiServiceCode")
|
|
@JsonProperty("busiServiceCode")
|
|
|
private String busiServiceCode;
|
|
private String busiServiceCode;
|
|
|
@JsonProperty("busiSlsCde")
|
|
@JsonProperty("busiSlsCde")
|
|
|
- private Integer busiSlsCde;
|
|
|
|
|
|
|
+ private String busiSlsCde;
|
|
|
@JsonProperty("busiSlsId")
|
|
@JsonProperty("busiSlsId")
|
|
|
private Long busiSlsId;
|
|
private Long busiSlsId;
|
|
|
@JsonProperty("busiSlsNme")
|
|
@JsonProperty("busiSlsNme")
|
|
@@ -209,6 +218,8 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
private Integer insuredCountry;
|
|
private Integer insuredCountry;
|
|
|
@JsonProperty("insuredCounty")
|
|
@JsonProperty("insuredCounty")
|
|
|
private Integer insuredCounty;
|
|
private Integer insuredCounty;
|
|
|
|
|
+ @JsonProperty("insuredSuffixAddr")
|
|
|
|
|
+ private String insuredSuffixAddr;
|
|
|
@JsonProperty("insuredCusRiskLvl")
|
|
@JsonProperty("insuredCusRiskLvl")
|
|
|
private Integer insuredCusRiskLvl;
|
|
private Integer insuredCusRiskLvl;
|
|
|
@JsonProperty("insuredEmail")
|
|
@JsonProperty("insuredEmail")
|
|
@@ -220,7 +231,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
@JsonProperty("insuredIssueOrg")
|
|
@JsonProperty("insuredIssueOrg")
|
|
|
private String insuredIssueOrg;
|
|
private String insuredIssueOrg;
|
|
|
@JsonProperty("insuredMobile")
|
|
@JsonProperty("insuredMobile")
|
|
|
- private Long insuredMobile;
|
|
|
|
|
|
|
+ private String insuredMobile;
|
|
|
@JsonProperty("insuredNation")
|
|
@JsonProperty("insuredNation")
|
|
|
private Integer insuredNation;
|
|
private Integer insuredNation;
|
|
|
@JsonProperty("insuredNme")
|
|
@JsonProperty("insuredNme")
|
|
@@ -252,7 +263,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
@JsonProperty("insuredWorkDpt")
|
|
@JsonProperty("insuredWorkDpt")
|
|
|
private Integer insuredWorkDpt;
|
|
private Integer insuredWorkDpt;
|
|
|
@JsonProperty("insuredZipCde")
|
|
@JsonProperty("insuredZipCde")
|
|
|
- private Integer insuredZipCde;
|
|
|
|
|
|
|
+ private String insuredZipCde;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@NoArgsConstructor
|
|
@NoArgsConstructor
|
|
@@ -270,13 +281,13 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
@JsonProperty("vehicleEcdemicMrk")
|
|
@JsonProperty("vehicleEcdemicMrk")
|
|
|
private Integer vehicleEcdemicMrk;
|
|
private Integer vehicleEcdemicMrk;
|
|
|
@JsonProperty("vehicleEngNo")
|
|
@JsonProperty("vehicleEngNo")
|
|
|
- private Integer vehicleEngNo;
|
|
|
|
|
|
|
+ private String vehicleEngNo;
|
|
|
@JsonProperty("vehicleFrmNo")
|
|
@JsonProperty("vehicleFrmNo")
|
|
|
private String vehicleFrmNo;
|
|
private String vehicleFrmNo;
|
|
|
@JsonProperty("vehicleFstRegYmBar")
|
|
@JsonProperty("vehicleFstRegYmBar")
|
|
|
private String vehicleFstRegYmBar;
|
|
private String vehicleFstRegYmBar;
|
|
|
@JsonProperty("vehicleFuelType")
|
|
@JsonProperty("vehicleFuelType")
|
|
|
- private Integer vehicleFuelType;
|
|
|
|
|
|
|
+ private String vehicleFuelType;
|
|
|
@JsonProperty("vehicleIs4SShop")
|
|
@JsonProperty("vehicleIs4SShop")
|
|
|
private Integer vehicleIs4SShop;
|
|
private Integer vehicleIs4SShop;
|
|
|
@JsonProperty("vehicleIsQuery")
|
|
@JsonProperty("vehicleIsQuery")
|
|
@@ -290,21 +301,21 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
@JsonProperty("vehicleModelNme")
|
|
@JsonProperty("vehicleModelNme")
|
|
|
private String vehicleModelNme;
|
|
private String vehicleModelNme;
|
|
|
@JsonProperty("vehicleNConsultPurchaseValue")
|
|
@JsonProperty("vehicleNConsultPurchaseValue")
|
|
|
- private Integer vehicleNConsultPurchaseValue;
|
|
|
|
|
|
|
+ private Double vehicleNConsultPurchaseValue;
|
|
|
@JsonProperty("vehicleNCurbWt")
|
|
@JsonProperty("vehicleNCurbWt")
|
|
|
private Integer vehicleNCurbWt;
|
|
private Integer vehicleNCurbWt;
|
|
|
@JsonProperty("vehicleNDisplacement")
|
|
@JsonProperty("vehicleNDisplacement")
|
|
|
- private Integer vehicleNDisplacement;
|
|
|
|
|
|
|
+ private String vehicleNDisplacement;
|
|
|
@JsonProperty("vehicleNNewPurchaseValue")
|
|
@JsonProperty("vehicleNNewPurchaseValue")
|
|
|
- private Integer vehicleNNewPurchaseValue;
|
|
|
|
|
|
|
+ private String vehicleNNewPurchaseValue;
|
|
|
@JsonProperty("vehicleNPower")
|
|
@JsonProperty("vehicleNPower")
|
|
|
private Double vehicleNPower;
|
|
private Double vehicleNPower;
|
|
|
@JsonProperty("vehicleNPureRange")
|
|
@JsonProperty("vehicleNPureRange")
|
|
|
private Integer vehicleNPureRange;
|
|
private Integer vehicleNPureRange;
|
|
|
@JsonProperty("vehicleNSeatNum")
|
|
@JsonProperty("vehicleNSeatNum")
|
|
|
- private Integer vehicleNSeatNum;
|
|
|
|
|
|
|
+ private String vehicleNSeatNum;
|
|
|
@JsonProperty("vehicleNTonage")
|
|
@JsonProperty("vehicleNTonage")
|
|
|
- private Integer vehicleNTonage;
|
|
|
|
|
|
|
+ private Double vehicleNTonage;
|
|
|
@JsonProperty("vehicleNewMrk")
|
|
@JsonProperty("vehicleNewMrk")
|
|
|
private Integer vehicleNewMrk;
|
|
private Integer vehicleNewMrk;
|
|
|
@JsonProperty("vehicleNewPlate")
|
|
@JsonProperty("vehicleNewPlate")
|
|
@@ -332,13 +343,24 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
@JsonProperty("vehicleTraUsageCde")
|
|
@JsonProperty("vehicleTraUsageCde")
|
|
|
private Integer vehicleTraUsageCde;
|
|
private Integer vehicleTraUsageCde;
|
|
|
@JsonProperty("vehicleUsageCde")
|
|
@JsonProperty("vehicleUsageCde")
|
|
|
- private Integer vehicleUsageCde;
|
|
|
|
|
|
|
+ private String vehicleUsageCde;
|
|
|
@JsonProperty("vehicleVhlCertNo")
|
|
@JsonProperty("vehicleVhlCertNo")
|
|
|
private Long vehicleVhlCertNo;
|
|
private Long vehicleVhlCertNo;
|
|
|
@JsonProperty("vehicleVhlCertType")
|
|
@JsonProperty("vehicleVhlCertType")
|
|
|
private String vehicleVhlCertType;
|
|
private String vehicleVhlCertType;
|
|
|
@JsonProperty("vehicleVhlTyp")
|
|
@JsonProperty("vehicleVhlTyp")
|
|
|
- private Integer vehicleVhlTyp;
|
|
|
|
|
|
|
+ private String vehicleVhlTyp;
|
|
|
|
|
+ @JsonProperty("vehicleInspectionCde")
|
|
|
|
|
+ private String vehicleInspectionCde;
|
|
|
|
|
+ @JsonProperty("vehicleInspectTm")
|
|
|
|
|
+ private String vehicleInspectTm;
|
|
|
|
|
+ @JsonProperty("vehicleInspectorNme")
|
|
|
|
|
+ private String vehicleInspectorNme;
|
|
|
|
|
+ @JsonProperty("vehicleInspectRec")
|
|
|
|
|
+ private String vehicleInspectRec;
|
|
|
|
|
+ @JsonProperty("vehicleResvTxt1")
|
|
|
|
|
+ private String vehicleResvTxt1;
|
|
|
|
|
+
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@NoArgsConstructor
|
|
@NoArgsConstructor
|
|
@@ -346,19 +368,19 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
public static class VehicleOwnerInfoDTO implements Serializable{
|
|
public static class VehicleOwnerInfoDTO implements Serializable{
|
|
|
private static final long serialVersionUID = 3725955472263478330L;
|
|
private static final long serialVersionUID = 3725955472263478330L;
|
|
|
@JsonProperty("vehicleOwnerCCertfCde")
|
|
@JsonProperty("vehicleOwnerCCertfCde")
|
|
|
- private Long vehicleOwnerCCertfCde;
|
|
|
|
|
|
|
+ private String vehicleOwnerCCertfCde;
|
|
|
@JsonProperty("vehicleOwnerCCertfCls")
|
|
@JsonProperty("vehicleOwnerCCertfCls")
|
|
|
private String vehicleOwnerCCertfCls;
|
|
private String vehicleOwnerCCertfCls;
|
|
|
@JsonProperty("vehicleOwnerCClntAddr")
|
|
@JsonProperty("vehicleOwnerCClntAddr")
|
|
|
private String vehicleOwnerCClntAddr;
|
|
private String vehicleOwnerCClntAddr;
|
|
|
@JsonProperty("vehicleOwnerCContactTel")
|
|
@JsonProperty("vehicleOwnerCContactTel")
|
|
|
- private Long vehicleOwnerCContactTel;
|
|
|
|
|
|
|
+ private String vehicleOwnerCContactTel;
|
|
|
@JsonProperty("vehicleOwnerCCountry")
|
|
@JsonProperty("vehicleOwnerCCountry")
|
|
|
private Integer vehicleOwnerCCountry;
|
|
private Integer vehicleOwnerCCountry;
|
|
|
@JsonProperty("vehicleOwnerCEmail")
|
|
@JsonProperty("vehicleOwnerCEmail")
|
|
|
private String vehicleOwnerCEmail;
|
|
private String vehicleOwnerCEmail;
|
|
|
@JsonProperty("vehicleOwnerCMobile")
|
|
@JsonProperty("vehicleOwnerCMobile")
|
|
|
- private Long vehicleOwnerCMobile;
|
|
|
|
|
|
|
+ private String vehicleOwnerCMobile;
|
|
|
@JsonProperty("vehicleOwnerCNation")
|
|
@JsonProperty("vehicleOwnerCNation")
|
|
|
private Integer vehicleOwnerCNation;
|
|
private Integer vehicleOwnerCNation;
|
|
|
@JsonProperty("vehicleOwnerCOwnerCls")
|
|
@JsonProperty("vehicleOwnerCOwnerCls")
|
|
@@ -370,11 +392,289 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
@JsonProperty("vehicleOwnerCWorkdptKind")
|
|
@JsonProperty("vehicleOwnerCWorkdptKind")
|
|
|
private Integer vehicleOwnerCWorkdptKind;
|
|
private Integer vehicleOwnerCWorkdptKind;
|
|
|
@JsonProperty("vehicleOwnerCZipCde")
|
|
@JsonProperty("vehicleOwnerCZipCde")
|
|
|
- private Integer vehicleOwnerCZipCde;
|
|
|
|
|
|
|
+ private String vehicleOwnerCZipCde;
|
|
|
@JsonProperty("vehicleOwnerTBirthday")
|
|
@JsonProperty("vehicleOwnerTBirthday")
|
|
|
private String vehicleOwnerTBirthday;
|
|
private String vehicleOwnerTBirthday;
|
|
|
@JsonProperty("vehicleOwnerTExpiredDate")
|
|
@JsonProperty("vehicleOwnerTExpiredDate")
|
|
|
private String vehicleOwnerTExpiredDate;
|
|
private String vehicleOwnerTExpiredDate;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ public ODR1008Request(String orderNo,String busiId, BaseQuoteInfoVo quoteInfoVo, DaJiaConfigureParameters daJiaConfigureParameters,ODR2009Response odr2009Response){
|
|
|
|
|
+ super("TQBD", ServiceCode.ODR1008.getCode());
|
|
|
|
|
+ if(Objects.isNull(body))
|
|
|
|
|
+ {
|
|
|
|
|
+ this.body = new BodyDTO();
|
|
|
|
|
+ }
|
|
|
|
|
+ this.body.setOrderNo(orderNo);
|
|
|
|
|
+ //设置车主信息
|
|
|
|
|
+ setVehicleOwnerInfo(quoteInfoVo);
|
|
|
|
|
+ //设置投保人信息
|
|
|
|
|
+ setApplicantInfo(quoteInfoVo);
|
|
|
|
|
+ //设置被保人信息
|
|
|
|
|
+ setInsuredInfo(quoteInfoVo);
|
|
|
|
|
+ //设置车辆信息
|
|
|
|
|
+ setVehicleInfo(quoteInfoVo,odr2009Response);
|
|
|
|
|
+ //设置业务归属信息
|
|
|
|
|
+ setBusinessInfo(daJiaConfigureParameters,busiId);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //根据身份证获取生日
|
|
|
|
|
+ public String getBirthdateFromIDCardNumber(String idCardNumber) {
|
|
|
|
|
+ int year = Integer.parseInt(idCardNumber.substring(6, 10));
|
|
|
|
|
+ int month = Integer.parseInt(idCardNumber.substring(10, 12));
|
|
|
|
|
+ int day = Integer.parseInt(idCardNumber.substring(12, 14));
|
|
|
|
|
+ return year + "-" + month + "-" + day;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //根据身份证获取性别
|
|
|
|
|
+ public String getSexFromIdCardNumber(String idCardNumber) {
|
|
|
|
|
+ String genderBit = idCardNumber.substring(16, 17);
|
|
|
|
|
+ int genderBitNumber = Integer.parseInt(genderBit);
|
|
|
|
|
+ boolean isOdd = genderBitNumber % 2 != 0;
|
|
|
|
|
+ if (isOdd) {
|
|
|
|
|
+ return CResvSex.MAN.getCode();
|
|
|
|
|
+ } else {
|
|
|
|
|
+ return CResvSex.WOMAN.getCode();
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //设置车主信息
|
|
|
|
|
+ public void setVehicleOwnerInfo(BaseQuoteInfoVo quoteInfoVo){
|
|
|
|
|
+ BodyDTO.VehicleOwnerInfoDTO vehicleOwnerInfoDTO = new BodyDTO.VehicleOwnerInfoDTO();
|
|
|
|
|
+ //设置证件号码
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerCCertfCde(quoteInfoVo.getOwnerInfo().getIdentifyNumber());
|
|
|
|
|
+ //设置证件类型
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerCCertfCls("01");
|
|
|
|
|
+ //通讯地址
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerCClntAddr(quoteInfoVo.getOwnerInfo().getAddr());
|
|
|
|
|
+ //手机号
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerCContactTel(quoteInfoVo.getOwnerInfo().getMobile());
|
|
|
|
|
+ //邮箱号
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerCEmail(quoteInfoVo.getOwnerInfo().getEmail());
|
|
|
|
|
+ //手机号
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerCMobile(quoteInfoVo.getOwnerInfo().getMobile());
|
|
|
|
|
+ //车主姓名
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerCOwnerNme(quoteInfoVo.getOwnerInfo().getName());
|
|
|
|
|
+ //车主类型
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerCOwnerCls(1);
|
|
|
|
|
+ //邮编
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerCZipCde("030024");
|
|
|
|
|
+ //车主出生日期
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerTBirthday(getBirthdateFromIDCardNumber(quoteInfoVo.getOwnerInfo().getIdentifyNumber()));
|
|
|
|
|
+ //车主性别
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerCSex(getSexFromIdCardNumber(quoteInfoVo.getOwnerInfo().getIdentifyNumber()));
|
|
|
|
|
+ //身份证号获取出生日期
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerTBirthday(getBirthdateFromIDCardNumber(quoteInfoVo.getOwnerInfo().getIdentifyNumber()));
|
|
|
|
|
+// //证件有效日期
|
|
|
|
|
+// vehicleOwnerInfoDTO.setVehicleOwnerTEffectiveDate(quoteInfoVo.getOwnerInfo().getIdentifyValidDate());
|
|
|
|
|
+ //证件失效日期
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerTExpiredDate(quoteInfoVo.getOwnerInfo().getIdentifyValidEndDate());
|
|
|
|
|
+ //国家
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerCNation(1);
|
|
|
|
|
+ //国籍
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerCCountry(1);
|
|
|
|
|
+ //单位性质 默认为9 其他
|
|
|
|
|
+ vehicleOwnerInfoDTO.setVehicleOwnerCWorkdptKind(9);
|
|
|
|
|
+ this.body.setVehicleOwnerInfo(vehicleOwnerInfoDTO);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //设置投保人信息
|
|
|
|
|
+ public void setApplicantInfo(BaseQuoteInfoVo quoteInfoVo){
|
|
|
|
|
+ BodyDTO.ApplicantInfoDTO applicantInfoDTO = new BodyDTO.ApplicantInfoDTO();
|
|
|
|
|
+ //设置证件号码
|
|
|
|
|
+ applicantInfoDTO.setApplicantCCertfCde(quoteInfoVo.getPolicyHolderInfo().getIdentifyNumber());
|
|
|
|
|
+ //设置证件类型
|
|
|
|
|
+ applicantInfoDTO.setApplicantCCertfCls("01");
|
|
|
|
|
+ //客户类型
|
|
|
|
|
+ applicantInfoDTO.setApplicantClntMrk(1);
|
|
|
|
|
+ //通讯地址
|
|
|
|
|
+ applicantInfoDTO.setApplicantClntAddr(quoteInfoVo.getPolicyHolderInfo().getAddr());
|
|
|
|
|
+ //手机号
|
|
|
|
|
+ applicantInfoDTO.setApplicantMobile(quoteInfoVo.getPolicyHolderInfo().getMobile());
|
|
|
|
|
+ //邮箱号
|
|
|
|
|
+ applicantInfoDTO.setApplicantEmail(quoteInfoVo.getPolicyHolderInfo().getEmail());
|
|
|
|
|
+ //投保人姓名
|
|
|
|
|
+ applicantInfoDTO.setApplicantNme(quoteInfoVo.getPolicyHolderInfo().getName());
|
|
|
|
|
+ //投保人出生日期
|
|
|
|
|
+ applicantInfoDTO.setApplicantTBirthday(getBirthdateFromIDCardNumber(quoteInfoVo.getPolicyHolderInfo().getIdentifyNumber()));
|
|
|
|
|
+ //邮编
|
|
|
|
|
+// vehicleOwnerInfoDTO.setVehicleOwnerCZipCde(quoteInfoVo.getOwnerInfo().get)
|
|
|
|
|
+ //投保人性别
|
|
|
|
|
+ applicantInfoDTO.setApplicantSex(getSexFromIdCardNumber(quoteInfoVo.getPolicyHolderInfo().getIdentifyNumber()));
|
|
|
|
|
+ //证件生效日期
|
|
|
|
|
+ applicantInfoDTO.setApplicantTEffectiveDate(quoteInfoVo.getPolicyHolderInfo().getIdentifyValidDate());
|
|
|
|
|
+ //证件失效日期
|
|
|
|
|
+ applicantInfoDTO.setApplicantTExpiredDate(quoteInfoVo.getOwnerInfo().getIdentifyValidEndDate());
|
|
|
|
|
+ //证件上地址
|
|
|
|
|
+ applicantInfoDTO.setApplicantHomeAddr(quoteInfoVo.getPolicyHolderInfo().getAddr());
|
|
|
|
|
+ //国籍
|
|
|
|
|
+// applicantInfoDTO.set(1);
|
|
|
|
|
+ //省市县
|
|
|
|
|
+ applicantInfoDTO.setApplicantProvince(140000);
|
|
|
|
|
+ applicantInfoDTO.setApplicantCity(140100);
|
|
|
|
|
+ applicantInfoDTO.setApplicantCounty(140109);
|
|
|
|
|
+ applicantInfoDTO.setApplicantSuffixAddr("前锋街道");
|
|
|
|
|
+ applicantInfoDTO.setApplicantZipCde("030024");
|
|
|
|
|
+ this.body.setApplicantInfo(applicantInfoDTO);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //设置被保人信息
|
|
|
|
|
+ public void setInsuredInfo(BaseQuoteInfoVo quoteInfoVo){
|
|
|
|
|
+ BodyDTO.InsuredInfoDTO insuredInfoDTO = new BodyDTO.InsuredInfoDTO();
|
|
|
|
|
+ //设置证件号码
|
|
|
|
|
+ insuredInfoDTO.setInsuredCertfCde(quoteInfoVo.getInsuredPersonInfo().getIdentifyNumber());
|
|
|
|
|
+ //设置证件类型
|
|
|
|
|
+ insuredInfoDTO.setInsuredCertfCls("01");
|
|
|
|
|
+ //客户类型
|
|
|
|
|
+ insuredInfoDTO.setInsuredClntMrk(1);
|
|
|
|
|
+ //通讯地址
|
|
|
|
|
+ insuredInfoDTO.setInsuredClntAddr(quoteInfoVo.getInsuredPersonInfo().getAddr());
|
|
|
|
|
+ //证件上地址
|
|
|
|
|
+ insuredInfoDTO.setInsuredHomeAddr(quoteInfoVo.getInsuredPersonInfo().getAddr());
|
|
|
|
|
+ //居住地址
|
|
|
|
|
+ insuredInfoDTO.setInsuredResidAddr(quoteInfoVo.getInsuredPersonInfo().getAddr());
|
|
|
|
|
+ //手机号
|
|
|
|
|
+ insuredInfoDTO.setInsuredMobile(quoteInfoVo.getInsuredPersonInfo().getMobile());
|
|
|
|
|
+ //邮箱号
|
|
|
|
|
+ insuredInfoDTO.setInsuredEmail(quoteInfoVo.getInsuredPersonInfo().getEmail());
|
|
|
|
|
+ //被保人姓名
|
|
|
|
|
+ insuredInfoDTO.setInsuredNme(quoteInfoVo.getInsuredPersonInfo().getName());
|
|
|
|
|
+ //被保人出生日期
|
|
|
|
|
+ insuredInfoDTO.setInsuredTBirthday(getBirthdateFromIDCardNumber(quoteInfoVo.getInsuredPersonInfo().getIdentifyNumber()));
|
|
|
|
|
+ //被保人性别
|
|
|
|
|
+ insuredInfoDTO.setInsuredSex(getSexFromIdCardNumber(quoteInfoVo.getInsuredPersonInfo().getIdentifyNumber()));
|
|
|
|
|
+ //身份证生效日期
|
|
|
|
|
+ insuredInfoDTO.setInsuredTEffectiveDate(quoteInfoVo.getInsuredPersonInfo().getIdentifyValidDate());
|
|
|
|
|
+ //身份证失效日期
|
|
|
|
|
+ insuredInfoDTO.setInsuredTExpiredDate(quoteInfoVo.getInsuredPersonInfo().getIdentifyValidEndDate());
|
|
|
|
|
+ //省市县
|
|
|
|
|
+ insuredInfoDTO.setInsuredProvince(140000);
|
|
|
|
|
+ insuredInfoDTO.setInsuredCity(140100);
|
|
|
|
|
+ insuredInfoDTO.setInsuredCounty(140109);
|
|
|
|
|
+ insuredInfoDTO.setInsuredSuffixAddr("千峰街道");
|
|
|
|
|
+ //邮编
|
|
|
|
|
+ insuredInfoDTO.setInsuredZipCde("030024");
|
|
|
|
|
+ this.body.setInsuredInfo(insuredInfoDTO);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //设置车辆信息
|
|
|
|
|
+ public void setVehicleInfo(BaseQuoteInfoVo quoteInfoVo,ODR2009Response odr2009Response){
|
|
|
|
|
+ BodyDTO.VehicleInfoDTO vehicleInfoDTO = new BodyDTO.VehicleInfoDTO();
|
|
|
|
|
+ //设置发动机号
|
|
|
|
|
+ vehicleInfoDTO.setVehicleEngNo(quoteInfoVo.getCarInfo().getEngineNo());
|
|
|
|
|
+ //设置车架号
|
|
|
|
|
+ vehicleInfoDTO.setVehicleFrmNo(quoteInfoVo.getCarInfo().getFrameNo());
|
|
|
|
|
+ //是否是过户车
|
|
|
|
|
+ vehicleInfoDTO.setVehicleChgOwnerFlag(0);
|
|
|
|
|
+ //初登日期
|
|
|
|
|
+ vehicleInfoDTO.setVehicleFstRegYmBar(quoteInfoVo.getCarInfo().getRegisterDate());
|
|
|
|
|
+ //能源类型
|
|
|
|
|
+ vehicleInfoDTO.setVehicleFuelType(quoteInfoVo.getCarInfo().getEnergyType());
|
|
|
|
|
+ //行驶证车辆类型
|
|
|
|
|
+ vehicleInfoDTO.setVehicleRegVhlTyp(quoteInfoVo.getCarInfo().getCartype());
|
|
|
|
|
+ //交强险特殊车标志
|
|
|
|
|
+
|
|
|
|
|
+ //使用性质
|
|
|
|
|
+ if(quoteInfoVo.getCarInfo().getCarnature().equals("01")) {
|
|
|
|
|
+ vehicleInfoDTO.setVehicleUsageCde(CUsageCde.U07.getCode().toString());
|
|
|
|
|
+ vehicleInfoDTO.setVehicleTraUsageCde(CUsageCde.U07.getCode());
|
|
|
|
|
+ }else{
|
|
|
|
|
+ vehicleInfoDTO.setVehicleUsageCde(CUsageCde.U01.getCode().toString());
|
|
|
|
|
+ vehicleInfoDTO.setVehicleTraUsageCde(CUsageCde.U01.getCode());
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //特殊风险标识
|
|
|
|
|
+
|
|
|
|
|
+ //是否上牌
|
|
|
|
|
+ if(quoteInfoVo.getCarInfo().isNoLicenseFlag()) {
|
|
|
|
|
+ //是否是新车
|
|
|
|
|
+ vehicleInfoDTO.setVehicleNewPlate(0);
|
|
|
|
|
+ vehicleInfoDTO.setVehicleNewMrk(0);
|
|
|
|
|
+ //车牌号
|
|
|
|
|
+ vehicleInfoDTO.setVehiclePlateNo(quoteInfoVo.getCarInfo().getLicenseNo());
|
|
|
|
|
+ //车牌种类
|
|
|
|
|
+ vehicleInfoDTO.setVehiclePlateTyp("02");
|
|
|
|
|
+ }else{
|
|
|
|
|
+ //是否是新车
|
|
|
|
|
+ vehicleInfoDTO.setVehicleNewPlate(1);
|
|
|
|
|
+ vehicleInfoDTO.setVehicleNewMrk(1);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ boolean consistentPrice = false;
|
|
|
|
|
+ ODR2009Response.ResultDTO resultDTO = new ODR2009Response.ResultDTO();
|
|
|
|
|
+ for(ODR2009Response.ResultDTO item : odr2009Response.getResult()){
|
|
|
|
|
+ if(item.getVehiclePriceTax().equals(quoteInfoVo.getCarInfo().getPurchasePrice())){
|
|
|
|
|
+ consistentPrice = true;
|
|
|
|
|
+ resultDTO = item;
|
|
|
|
|
+ break;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ if(!consistentPrice){
|
|
|
|
|
+ resultDTO = odr2009Response.getResult().get(0);
|
|
|
|
|
+ }
|
|
|
|
|
+ //厂牌车型码
|
|
|
|
|
+ vehicleInfoDTO.setVehicleModelCde(resultDTO.getVehicleId());
|
|
|
|
|
+ //新车购置价
|
|
|
|
|
+ vehicleInfoDTO.setVehicleNNewPurchaseValue(resultDTO.getVehiclePriceTax());
|
|
|
|
|
+ //车型名称
|
|
|
|
|
+ vehicleInfoDTO.setVehicleModelNme(resultDTO.getVehicleName());
|
|
|
|
|
+ //排气量
|
|
|
|
|
+ vehicleInfoDTO.setVehicleNDisplacement(resultDTO.getVehicleExhaust());
|
|
|
|
|
+ //功率
|
|
|
|
|
+ vehicleInfoDTO.setVehicleNPower(Double.parseDouble(resultDTO.getPower()));
|
|
|
|
|
+ //座位数
|
|
|
|
|
+ vehicleInfoDTO.setVehicleNSeatNum(resultDTO.getVehicleSeat());
|
|
|
|
|
+ //车辆种类
|
|
|
|
|
+ if(Integer.parseInt(resultDTO.getVehicleSeat()) < 6){
|
|
|
|
|
+ vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T01.getCode().toString());
|
|
|
|
|
+ }else{
|
|
|
|
|
+ vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T02.getCode().toString());
|
|
|
|
|
+ }
|
|
|
|
|
+ //车辆品牌
|
|
|
|
|
+ vehicleInfoDTO.setVehicleBrandId(resultDTO.getBrandId());
|
|
|
|
|
+ //整备质量
|
|
|
|
|
+ vehicleInfoDTO.setVehicleNCurbWt(0);
|
|
|
|
|
+ vehicleInfoDTO.setVehicleNTonage(0.0);
|
|
|
|
|
+
|
|
|
|
|
+ //验车情况
|
|
|
|
|
+ vehicleInfoDTO.setVehicleInspectionCde(CInspectionCde.INS3.getCode().toString());
|
|
|
|
|
+ //免验原因
|
|
|
|
|
+ vehicleInfoDTO.setVehicleResvTxt1(CResvTxt.RESC1.getCode().toString());
|
|
|
|
|
+ this.body.setVehicleInfo(vehicleInfoDTO);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //设置业务归属信息
|
|
|
|
|
+ public void setBusinessInfo(DaJiaConfigureParameters daJiaConfigureParameters,String busiId){
|
|
|
|
|
+ BodyDTO.BusinessInfoDTO businessInfoDTO = new BodyDTO.BusinessInfoDTO();
|
|
|
|
|
+ //设置id
|
|
|
|
|
+ businessInfoDTO.setBusiId(busiId);
|
|
|
|
|
+ //设置登录机构
|
|
|
|
|
+ businessInfoDTO.setBusiOpdpt(daJiaConfigureParameters.getLoginInstitution());
|
|
|
|
|
+ //设置出单口
|
|
|
|
|
+ businessInfoDTO.setBusiDptCde(daJiaConfigureParameters.getIssuingInstitution());
|
|
|
|
|
+ //设置代理人编码
|
|
|
|
|
+ businessInfoDTO.setBusiBrkrCde(daJiaConfigureParameters.getAgentCode());
|
|
|
|
|
+ //设置操作员代码
|
|
|
|
|
+ businessInfoDTO.setBusiOprCde(daJiaConfigureParameters.getOperatorCode());
|
|
|
|
|
+ //设置操作员姓名
|
|
|
|
|
+ businessInfoDTO.setBusiOprNme(daJiaConfigureParameters.getOperatorName());
|
|
|
|
|
+ //设置业务来源
|
|
|
|
|
+ businessInfoDTO.setBusiBsnsTyp(daJiaConfigureParameters.getBusinessSource());
|
|
|
|
|
+ //设置业务员代码
|
|
|
|
|
+ businessInfoDTO.setBusiSlsCde(daJiaConfigureParameters.getSalespersonCode());
|
|
|
|
|
+ //设置推荐人代码
|
|
|
|
|
+ businessInfoDTO.setBusiRecommendCde(daJiaConfigureParameters.getOperatorCode());
|
|
|
|
|
+ //设置推荐人渠道
|
|
|
|
|
+ businessInfoDTO.setBusiRecSubChannel(daJiaConfigureParameters.getRecommendedSubChannels());
|
|
|
|
|
+ //设置渠道
|
|
|
|
|
+ businessInfoDTO.setBusiChannelSrc("10");
|
|
|
|
|
+ //设置一级来源
|
|
|
|
|
+ businessInfoDTO.setBusiDataSrc("G");
|
|
|
|
|
+ //设置二级来源
|
|
|
|
|
+ businessInfoDTO.setBusiDataFlag("TQDL");
|
|
|
|
|
+
|
|
|
|
|
+ this.body.setBusinessInfo(businessInfoDTO);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
}
|
|
}
|