|
|
@@ -19,11 +19,9 @@ import java.util.List;
|
|
|
import java.util.Objects;
|
|
|
|
|
|
import static com.ydtech.modules.order.entity.api.dajia.constants.CFuelType.*;
|
|
|
-import static com.ydtech.modules.order.entity.api.dajia.constants.CInspectRec.INSREC1;
|
|
|
|
|
|
|
|
|
/**
|
|
|
- * @version
|
|
|
* @description: ODR1008 车辆和客户信息确认 请求参数
|
|
|
* @author: wenks
|
|
|
* @date: 2023/11/14 16:51
|
|
|
@@ -62,7 +60,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
|
|
|
@NoArgsConstructor
|
|
|
@Data
|
|
|
- public static class ApplicantInfoDTO implements Serializable{
|
|
|
+ public static class ApplicantInfoDTO implements Serializable {
|
|
|
private static final long serialVersionUID = 2368014689374178222L;
|
|
|
@JsonProperty("applicantCBusiness")
|
|
|
private Integer applicantCBusiness;
|
|
|
@@ -148,7 +146,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
|
|
|
@NoArgsConstructor
|
|
|
@Data
|
|
|
- public static class BusinessInfoDTO implements Serializable{
|
|
|
+ public static class BusinessInfoDTO implements Serializable {
|
|
|
private static final long serialVersionUID = 2058043103906170015L;
|
|
|
@JsonProperty("busiAgentNme")
|
|
|
private String busiAgentNme;
|
|
|
@@ -204,7 +202,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
|
|
|
@NoArgsConstructor
|
|
|
@Data
|
|
|
- public static class InsuredInfoDTO implements Serializable{
|
|
|
+ public static class InsuredInfoDTO implements Serializable {
|
|
|
private static final long serialVersionUID = 1471113087138506721L;
|
|
|
@JsonProperty("insuredBusiness")
|
|
|
private Integer insuredBusiness;
|
|
|
@@ -274,7 +272,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
|
|
|
@NoArgsConstructor
|
|
|
@Data
|
|
|
- public static class VehicleInfoDTO implements Serializable{
|
|
|
+ public static class VehicleInfoDTO implements Serializable {
|
|
|
private static final long serialVersionUID = 8099502440213359843L;
|
|
|
@JsonProperty("vehicleAnswer")
|
|
|
private String vehicleAnswer;
|
|
|
@@ -375,7 +373,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
|
|
|
@NoArgsConstructor
|
|
|
@Data
|
|
|
- public static class VehicleOwnerInfoDTO implements Serializable{
|
|
|
+ public static class VehicleOwnerInfoDTO implements Serializable {
|
|
|
private static final long serialVersionUID = 3725955472263478330L;
|
|
|
@JsonProperty("vehicleOwnerCCertfCde")
|
|
|
private String vehicleOwnerCCertfCde;
|
|
|
@@ -420,23 +418,24 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- public ODR1008Request(String orderNo, String busiId, BaseQuoteInfoVo quoteInfoVo, DaJiaConfigureParameters daJiaConfigureParameters, ODR2009Response odr2009Response, PersonAreaVo policyHolderPersonArea,PersonAreaVo insuredPersonArea,PersonAreaVo ownerPersonArea){
|
|
|
+ public ODR1008Request(String orderNo, String busiId, BaseQuoteInfoVo quoteInfoVo, DaJiaConfigureParameters daJiaConfigureParameters,
|
|
|
+ ODR2009Response odr2009Response, PersonAreaVo policyHolderPersonArea, PersonAreaVo insuredPersonArea,
|
|
|
+ PersonAreaVo ownerPersonArea) {
|
|
|
super(daJiaConfigureParameters.getChannelCode(), ServiceCode.ODR1008.getCode());
|
|
|
- if(Objects.isNull(body))
|
|
|
- {
|
|
|
+ if (Objects.isNull(body)) {
|
|
|
this.body = new BodyDTO();
|
|
|
}
|
|
|
this.body.setOrderNo(orderNo);
|
|
|
//设置车主信息
|
|
|
- setVehicleOwnerInfo(quoteInfoVo,ownerPersonArea);
|
|
|
+ setVehicleOwnerInfo(quoteInfoVo, ownerPersonArea);
|
|
|
//设置投保人信息
|
|
|
- setApplicantInfo(quoteInfoVo,policyHolderPersonArea);
|
|
|
+ setApplicantInfo(quoteInfoVo, policyHolderPersonArea);
|
|
|
//设置被保人信息
|
|
|
- setInsuredInfo(quoteInfoVo,insuredPersonArea);
|
|
|
+ setInsuredInfo(quoteInfoVo, insuredPersonArea);
|
|
|
//设置车辆信息
|
|
|
- setVehicleInfo(quoteInfoVo,odr2009Response);
|
|
|
+ setVehicleInfo(quoteInfoVo, odr2009Response);
|
|
|
//设置业务归属信息
|
|
|
- setBusinessInfo(daJiaConfigureParameters,busiId);
|
|
|
+ setBusinessInfo(daJiaConfigureParameters, busiId);
|
|
|
}
|
|
|
|
|
|
//根据身份证获取生日
|
|
|
@@ -460,7 +459,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
}
|
|
|
|
|
|
//设置车主信息
|
|
|
- public void setVehicleOwnerInfo(BaseQuoteInfoVo quoteInfoVo,PersonAreaVo OwnerPersonArea){
|
|
|
+ public void setVehicleOwnerInfo(BaseQuoteInfoVo quoteInfoVo, PersonAreaVo OwnerPersonArea) {
|
|
|
BodyDTO.VehicleOwnerInfoDTO vehicleOwnerInfoDTO = new BodyDTO.VehicleOwnerInfoDTO();
|
|
|
//设置证件号码
|
|
|
vehicleOwnerInfoDTO.setVehicleOwnerCCertfCde(quoteInfoVo.getOwnerInfo().getIdentifyNumber());
|
|
|
@@ -506,20 +505,20 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
vehicleOwnerInfoDTO.setVehicleOwnerCity(OwnerPersonArea.getCityCode());
|
|
|
vehicleOwnerInfoDTO.setVehicleOwnerCounty(OwnerPersonArea.getCountyCode());
|
|
|
int index = -1;
|
|
|
- if(OwnerPersonArea.getCountyName() != null){
|
|
|
+ if (OwnerPersonArea.getCountyName() != null) {
|
|
|
index = quoteInfoVo.getOwnerInfo().getAddr().indexOf(OwnerPersonArea.getCountyName());
|
|
|
}
|
|
|
|
|
|
- if(index > -1){
|
|
|
+ if (index > -1) {
|
|
|
vehicleOwnerInfoDTO.setVehicleOwnerSuffixAddr(quoteInfoVo.getOwnerInfo().getAddr().substring(index + OwnerPersonArea.getCountyName().length()));
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
vehicleOwnerInfoDTO.setVehicleOwnerSuffixAddr(quoteInfoVo.getOwnerInfo().getAddr());
|
|
|
}
|
|
|
this.body.setVehicleOwnerInfo(vehicleOwnerInfoDTO);
|
|
|
}
|
|
|
|
|
|
//设置投保人信息
|
|
|
- public void setApplicantInfo(BaseQuoteInfoVo quoteInfoVo,PersonAreaVo policyHolderPersonArea){
|
|
|
+ public void setApplicantInfo(BaseQuoteInfoVo quoteInfoVo, PersonAreaVo policyHolderPersonArea) {
|
|
|
BodyDTO.ApplicantInfoDTO applicantInfoDTO = new BodyDTO.ApplicantInfoDTO();
|
|
|
//设置证件号码
|
|
|
applicantInfoDTO.setApplicantCCertfCde(quoteInfoVo.getPolicyHolderInfo().getIdentifyNumber());
|
|
|
@@ -557,12 +556,12 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
applicantInfoDTO.setApplicantCity(policyHolderPersonArea.getCityCode());
|
|
|
applicantInfoDTO.setApplicantCounty(policyHolderPersonArea.getCountyCode());
|
|
|
int index = -1;
|
|
|
- if(policyHolderPersonArea.getCountyName() != null){
|
|
|
+ if (policyHolderPersonArea.getCountyName() != null) {
|
|
|
index = quoteInfoVo.getOwnerInfo().getAddr().indexOf(policyHolderPersonArea.getCountyName());
|
|
|
}
|
|
|
- if(index > -1){
|
|
|
+ if (index > -1) {
|
|
|
applicantInfoDTO.setApplicantSuffixAddr(quoteInfoVo.getOwnerInfo().getAddr().substring(index + policyHolderPersonArea.getCountyName().length()));
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
applicantInfoDTO.setApplicantSuffixAddr(quoteInfoVo.getOwnerInfo().getAddr());
|
|
|
}
|
|
|
// applicantInfoDTO.setApplicantZipCde("030024");
|
|
|
@@ -570,7 +569,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
}
|
|
|
|
|
|
//设置被保人信息
|
|
|
- public void setInsuredInfo(BaseQuoteInfoVo quoteInfoVo,PersonAreaVo insuredPersonArea){
|
|
|
+ public void setInsuredInfo(BaseQuoteInfoVo quoteInfoVo, PersonAreaVo insuredPersonArea) {
|
|
|
BodyDTO.InsuredInfoDTO insuredInfoDTO = new BodyDTO.InsuredInfoDTO();
|
|
|
//设置证件号码
|
|
|
insuredInfoDTO.setInsuredCertfCde(quoteInfoVo.getInsuredPersonInfo().getIdentifyNumber());
|
|
|
@@ -607,12 +606,12 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
insuredInfoDTO.setInsuredCounty(insuredPersonArea.getCountyCode());
|
|
|
insuredInfoDTO.setInsuredSuffixAddr(quoteInfoVo.getInsuredPersonInfo().getAddr());
|
|
|
int index = -1;
|
|
|
- if(insuredPersonArea.getCountyName() != null){
|
|
|
+ if (insuredPersonArea.getCountyName() != null) {
|
|
|
index = quoteInfoVo.getOwnerInfo().getAddr().indexOf(insuredPersonArea.getCountyName());
|
|
|
}
|
|
|
- if(index > -1){
|
|
|
+ if (index > -1) {
|
|
|
insuredInfoDTO.setInsuredSuffixAddr(quoteInfoVo.getOwnerInfo().getAddr().substring(index + insuredPersonArea.getCountyName().length()));
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
insuredInfoDTO.setInsuredSuffixAddr(quoteInfoVo.getOwnerInfo().getAddr());
|
|
|
}
|
|
|
//邮编
|
|
|
@@ -621,21 +620,21 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
}
|
|
|
|
|
|
//设置车辆信息
|
|
|
- public void setVehicleInfo(BaseQuoteInfoVo quoteInfoVo,ODR2009Response odr2009Response){
|
|
|
+ public void setVehicleInfo(BaseQuoteInfoVo quoteInfoVo, ODR2009Response odr2009Response) {
|
|
|
BodyDTO.VehicleInfoDTO vehicleInfoDTO = new BodyDTO.VehicleInfoDTO();
|
|
|
//设置发动机号
|
|
|
vehicleInfoDTO.setVehicleEngNo(quoteInfoVo.getCarInfo().getEngineNo());
|
|
|
//设置车架号
|
|
|
vehicleInfoDTO.setVehicleFrmNo(quoteInfoVo.getCarInfo().getFrameNo());
|
|
|
//是否是过户车
|
|
|
- if(quoteInfoVo.getCarInfo().isTransferFlag()){
|
|
|
+ if (quoteInfoVo.getCarInfo().isTransferFlag()) {
|
|
|
//过户
|
|
|
vehicleInfoDTO.setVehicleTfiSpecialMrk(1);
|
|
|
vehicleInfoDTO.setVehicleTransferTm(quoteInfoVo.getCarInfo().getTransferDate());
|
|
|
//商业过户标志
|
|
|
vehicleInfoDTO.setVehicleChgOwnerFlag(1);
|
|
|
vehicleInfoDTO.setVehicleTTransferDate(quoteInfoVo.getCarInfo().getTransferDate());
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
//没有过户
|
|
|
vehicleInfoDTO.setVehicleTfiSpecialMrk(0);
|
|
|
//商业过户标志
|
|
|
@@ -645,13 +644,13 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
vehicleInfoDTO.setVehicleFstRegYmBar(quoteInfoVo.getCarInfo().getRegisterDate());
|
|
|
//能源类型
|
|
|
String EnergyType = "0";
|
|
|
- if(FUEL1.getCode().equals(quoteInfoVo.getCarInfo().getEnergyType())){
|
|
|
- EnergyType="1"; //纯电动
|
|
|
+ if (FUEL1.getCode().equals(quoteInfoVo.getCarInfo().getEnergyType())) {
|
|
|
+ EnergyType = "1"; //纯电动
|
|
|
vehicleInfoDTO.setVehicleModelEnergyType(EnergyType);
|
|
|
- }else if(FUEL2.getCode().equals(quoteInfoVo.getCarInfo().getEnergyType())){
|
|
|
- EnergyType="2"; //燃料电池
|
|
|
- }else if(FUEL3.getCode().equals(quoteInfoVo.getCarInfo().getEnergyType())){
|
|
|
- EnergyType="3"; //插电式混合动力
|
|
|
+ } else if (FUEL2.getCode().equals(quoteInfoVo.getCarInfo().getEnergyType())) {
|
|
|
+ EnergyType = "2"; //燃料电池
|
|
|
+ } else if (FUEL3.getCode().equals(quoteInfoVo.getCarInfo().getEnergyType())) {
|
|
|
+ EnergyType = "3"; //插电式混合动力
|
|
|
}
|
|
|
vehicleInfoDTO.setVehicleFuelType(EnergyType);
|
|
|
//行驶证车辆类型
|
|
|
@@ -664,11 +663,11 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
String vehicleUse = quoteInfoVo.getCarInfo().getVehicleUse();
|
|
|
//运营性质
|
|
|
TypeVehicleMapping typeVehicleMapping = Enum.valueOf(TypeVehicleMapping.class, "TM_" + vehicleUse);
|
|
|
- if(riskList.size() > 1){
|
|
|
+ if (riskList.size() > 1) {
|
|
|
//交商联合
|
|
|
vehicleInfoDTO.setVehicleUsageCde(typeVehicleMapping.getCUsageCdeSy());
|
|
|
vehicleInfoDTO.setVehicleTraUsageCde(Integer.valueOf(typeVehicleMapping.getCUsageCdeSy()));
|
|
|
- }else if(riskList.size() == 1) {
|
|
|
+ } else if (riskList.size() == 1) {
|
|
|
if (riskList.get(0).getRiskCode().equals(InsuranceRisk.BUSINESS_CODE)) {
|
|
|
//单商业
|
|
|
vehicleInfoDTO.setVehicleUsageCde(typeVehicleMapping.getCUsageCdeJq());
|
|
|
@@ -683,7 +682,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
//特殊风险标识
|
|
|
|
|
|
//是否上牌
|
|
|
- if(!quoteInfoVo.getCarInfo().isNoLicenseFlag()) {
|
|
|
+ if (!quoteInfoVo.getCarInfo().isNoLicenseFlag()) {
|
|
|
//上牌车
|
|
|
vehicleInfoDTO.setVehicleNewPlate(0);
|
|
|
vehicleInfoDTO.setVehicleNewMrk(0);
|
|
|
@@ -701,8 +700,8 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
vehicleInfoDTO.setVehiclePlateTyp("02");
|
|
|
|
|
|
//是否为外地车
|
|
|
- vehicleInfoDTO.setVehicleEcdemicMrk(quoteInfoVo.getCarInfo().getLicenseNo().contains("晋") ?"0":"1");
|
|
|
- }else{
|
|
|
+ vehicleInfoDTO.setVehicleEcdemicMrk(quoteInfoVo.getCarInfo().getLicenseNo().contains("晋") ? "0" : "1");
|
|
|
+ } else {
|
|
|
//新车
|
|
|
vehicleInfoDTO.setVehicleNewPlate(1);
|
|
|
vehicleInfoDTO.setVehicleNewMrk(1);
|
|
|
@@ -710,14 +709,14 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
|
|
|
boolean consistentPrice = false;
|
|
|
ODR2009Response.ResultDTO resultDTO = new ODR2009Response.ResultDTO();
|
|
|
- for(ODR2009Response.ResultDTO item : odr2009Response.getResult()){
|
|
|
- if(item.getVehiclePrice().equals(quoteInfoVo.getCarInfo().getPurchasePrice())){
|
|
|
+ for (ODR2009Response.ResultDTO item : odr2009Response.getResult()) {
|
|
|
+ if (item.getVehiclePrice().equals(quoteInfoVo.getCarInfo().getPurchasePrice())) {
|
|
|
consistentPrice = true;
|
|
|
resultDTO = item;
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
- if(!consistentPrice){
|
|
|
+ if (!consistentPrice) {
|
|
|
resultDTO = odr2009Response.getResult().get(0);
|
|
|
}
|
|
|
//厂牌车型码
|
|
|
@@ -727,11 +726,10 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
//车型名称
|
|
|
vehicleInfoDTO.setVehicleModelNme(resultDTO.getVehicleName());
|
|
|
//排气量
|
|
|
- if("0".equals(resultDTO.getVehicleExhaust()) && "0".equals(resultDTO.getCfuelType()))
|
|
|
- {
|
|
|
+ if ("0".equals(resultDTO.getVehicleExhaust()) && "0".equals(resultDTO.getCfuelType())) {
|
|
|
//如果排量为空,则默认为1.0
|
|
|
vehicleInfoDTO.setVehicleNDisplacement("1.0");
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
vehicleInfoDTO.setVehicleNDisplacement(resultDTO.getVehicleExhaust());
|
|
|
}
|
|
|
|
|
|
@@ -741,23 +739,23 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
//座位数
|
|
|
vehicleInfoDTO.setVehicleNSeatNum(quoteInfoVo.getCarInfo().getSeatCount());
|
|
|
//车辆种类
|
|
|
- if(VehicleType.VT_A0.getCode().equals(quoteInfoVo.getCarInfo().getCimodelclass())) {
|
|
|
+ if (VehicleType.VT_A0.getCode().equals(quoteInfoVo.getCarInfo().getCimodelclass())) {
|
|
|
//客车
|
|
|
- if(Integer.parseInt(resultDTO.getVehicleSeat()) < 6){
|
|
|
+ if (Integer.parseInt(resultDTO.getVehicleSeat()) < 6) {
|
|
|
vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T01.getCode().toString());
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T02.getCode().toString());
|
|
|
}
|
|
|
- }else if(VehicleType.VT_A1.getCode().equals(quoteInfoVo.getCarInfo().getCimodelclass())){
|
|
|
+ } else if (VehicleType.VT_A1.getCode().equals(quoteInfoVo.getCarInfo().getCimodelclass())) {
|
|
|
//货车
|
|
|
float limitLoad = Float.parseFloat(quoteInfoVo.getCarInfo().getLimitLoad()) / 1000;
|
|
|
- if(limitLoad < 2){
|
|
|
+ if (limitLoad < 2) {
|
|
|
vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T06.getCode().toString());
|
|
|
- }else if(limitLoad >= 2 && limitLoad < 5) {
|
|
|
+ } else if (limitLoad >= 2 && limitLoad < 5) {
|
|
|
vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T07.getCode().toString());
|
|
|
- }else if(limitLoad >= 5 && limitLoad < 10) {
|
|
|
+ } else if (limitLoad >= 5 && limitLoad < 10) {
|
|
|
vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T08.getCode().toString());
|
|
|
- }else if(limitLoad >= 10) {
|
|
|
+ } else if (limitLoad >= 10) {
|
|
|
vehicleInfoDTO.setVehicleVhlTyp(CVhlTyp.T09.getCode().toString());
|
|
|
}
|
|
|
}
|
|
|
@@ -767,9 +765,9 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
//整备质量
|
|
|
vehicleInfoDTO.setVehicleNCurbWt(Float.parseFloat(quoteInfoVo.getCarInfo().getCompleteKerbMass()) / 1000);
|
|
|
//货车传递吨位
|
|
|
- if(VehicleType.VT_A1.getCode().equals(quoteInfoVo.getCarInfo().getCimodelclass())) {
|
|
|
+ if (VehicleType.VT_A1.getCode().equals(quoteInfoVo.getCarInfo().getCimodelclass())) {
|
|
|
//核定载质量
|
|
|
- vehicleInfoDTO.setVehicleNTonage(Double.parseDouble(quoteInfoVo.getCarInfo().getLimitLoad())/1000);
|
|
|
+ vehicleInfoDTO.setVehicleNTonage(Double.parseDouble(quoteInfoVo.getCarInfo().getLimitLoad()) / 1000);
|
|
|
}
|
|
|
|
|
|
//验车情况
|
|
|
@@ -780,7 +778,7 @@ public class ODR1008Request extends DaJiaBaseRequest {
|
|
|
}
|
|
|
|
|
|
//设置业务归属信息
|
|
|
- public void setBusinessInfo(DaJiaConfigureParameters daJiaConfigureParameters,String busiId){
|
|
|
+ public void setBusinessInfo(DaJiaConfigureParameters daJiaConfigureParameters, String busiId) {
|
|
|
BodyDTO.BusinessInfoDTO businessInfoDTO = new BodyDTO.BusinessInfoDTO();
|
|
|
//设置id
|
|
|
businessInfoDTO.setBusiId(busiId);
|