|
|
@@ -3,10 +3,11 @@ package com.jzg.quotation.huanong.crawler.entity.request;
|
|
|
import cn.hutool.core.codec.Base64;
|
|
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
|
|
import com.jzg.commons.entity.quote.vo.*;
|
|
|
+import com.jzg.quotation.commons.utils.TimeProcessing;
|
|
|
import com.jzg.quotation.huanong.crawler.entity.HuaNongCrawlerConfigureParameters;
|
|
|
import com.jzg.quotation.huanong.crawler.entity.response.HuaNongCrawlerBaseCodeResponse;
|
|
|
import com.jzg.quotation.huanong.crawler.entity.response.HuaNongCrawlerComInfoQueryResponse;
|
|
|
-import com.jzg.quotation.huanong.crawler.entity.response.HuaNongCrawlerModelsQueryResponse;
|
|
|
+import com.jzg.quotation.huanong.crawler.entity.response.HuaNongCrawlerPrecisionServiceSearchResponse;
|
|
|
import com.jzg.quotation.huanong.crawler.entity.response.HuaNongCrawlerUserTypeAndProxyInfoQueryResponse;
|
|
|
import lombok.AllArgsConstructor;
|
|
|
import lombok.Data;
|
|
|
@@ -16,6 +17,7 @@ import java.io.Serial;
|
|
|
import java.util.ArrayList;
|
|
|
import java.util.Collections;
|
|
|
import java.util.List;
|
|
|
+import java.util.Optional;
|
|
|
|
|
|
|
|
|
/**
|
|
|
@@ -54,7 +56,7 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
String loginComCode,
|
|
|
String actualValue,
|
|
|
HuaNongCrawlerConfigureParameters parameters,
|
|
|
- HuaNongCrawlerModelsQueryResponse.CarModelDTO carModelDTO,
|
|
|
+ HuaNongCrawlerPrecisionServiceSearchResponse.CarModelDTO carModelDTO,
|
|
|
HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.SaleInfoDTO saleInfoDTO) {
|
|
|
this.head = new HuaNongCrawlerRequestBaseHead(token);
|
|
|
this.loginCom = loginComCode;
|
|
|
@@ -148,7 +150,8 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
private List<Object> glassInfo;
|
|
|
|
|
|
|
|
|
- public BusinessDataDTO(QuoteVo quoteVo, HuaNongCrawlerModelsQueryResponse.CarModelDTO carModelDTO, String loginCom, String loginComName, String actualValue, HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.SaleInfoDTO saleInfoDTO) {
|
|
|
+ public BusinessDataDTO(QuoteVo quoteVo, HuaNongCrawlerPrecisionServiceSearchResponse.CarModelDTO carModelDTO, String loginCom, String loginComName, String actualValue,
|
|
|
+ HuaNongCrawlerQuotedPriceRequestRequest.BusinessDataDTO.SaleInfoDTO saleInfoDTO) {
|
|
|
this.saleInfo = saleInfoDTO;
|
|
|
this.businessMain = new BusinessMainDTO(loginCom, loginComName);
|
|
|
this.insuredObject = new InsuredObjectDTO(carModelDTO, quoteVo.getCarInfoVo(), quoteVo.getOwnersInfo(), actualValue);
|
|
|
@@ -170,66 +173,33 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
this.centerFlag = "";
|
|
|
this.centerText = "";
|
|
|
// 险种
|
|
|
- this.contract = ContractDTO.build(quoteVo.getCiRiskInfoVo(), quoteVo.getBiRiskInfoVo(), quoteVo.getKindInfoVo());
|
|
|
+ this.contract = ContractDTO.build(quoteVo.getCiRiskInfoVo(), quoteVo.getBiRiskInfoVo(), quoteVo.getKindInfoVo(), quoteVo.getInsuredPersonInfo());
|
|
|
// 人员
|
|
|
- this.customer = CustomerDTO.build(quoteVo.getPolicyHolderInfo(), quoteVo.getInsuredPersonInfo(), quoteVo.getOwnersInfo());
|
|
|
+ this.customer = CustomerDTO.build(quoteVo.getPolicyHolderInfo(), quoteVo.getInsuredPersonInfo(), quoteVo.getOwnersInfo(), this.saleInfo.agentCode, this.saleInfo.comCode);
|
|
|
}
|
|
|
|
|
|
@NoArgsConstructor
|
|
|
@Data
|
|
|
public static class BusinessMainDTO {
|
|
|
- @JsonProperty("accessSource")
|
|
|
- private String accessSource;
|
|
|
- @JsonProperty("agreementNo")
|
|
|
- private String agreementNo;
|
|
|
+
|
|
|
+ @JsonProperty("baseDiscountFlag")
|
|
|
+ private String baseDiscountFlag;
|
|
|
@JsonProperty("appointAreaCode")
|
|
|
private String appointAreaCode;
|
|
|
@JsonProperty("argueSolution")
|
|
|
private String argueSolution;
|
|
|
@JsonProperty("argueSolutionCom")
|
|
|
private String argueSolutionCom;
|
|
|
- @JsonProperty("beforeFXQStockOnline")
|
|
|
- private Boolean beforeFXQStockOnline;
|
|
|
- @JsonProperty("billAcceptDate")
|
|
|
- private String billAcceptDate;
|
|
|
@JsonProperty("businessType")
|
|
|
private String businessType;
|
|
|
- @JsonProperty("constract5")
|
|
|
- private String constract5;
|
|
|
@JsonProperty("hnscoreGroup")
|
|
|
private String hnscoreGroup;
|
|
|
- @JsonProperty("inputDateTime")
|
|
|
- private String inputDateTime;
|
|
|
- @JsonProperty("isAloneCorrectingNveh")
|
|
|
- private String isAloneCorrectingNveh;
|
|
|
- @JsonProperty("isAsync")
|
|
|
- private Boolean isAsync;
|
|
|
- @JsonProperty("isCorrectGLASS")
|
|
|
- private Boolean isCorrectGLASS;
|
|
|
- @JsonProperty("isCorrectHOME")
|
|
|
- private Boolean isCorrectHOME;
|
|
|
- @JsonProperty("isCorrectNVEH")
|
|
|
- private Boolean isCorrectNVEH;
|
|
|
- @JsonProperty("isElectronicInsuredFlag")
|
|
|
- private Boolean isElectronicInsuredFlag;
|
|
|
- @JsonProperty("isFace")
|
|
|
- private String isFace;
|
|
|
@JsonProperty("makeCom")
|
|
|
private String makeCom;
|
|
|
@JsonProperty("makeComName")
|
|
|
private String makeComName;
|
|
|
@JsonProperty("operateDateTime")
|
|
|
private String operateDateTime;
|
|
|
- @JsonProperty("operatorName")
|
|
|
- private String operatorName;
|
|
|
- @JsonProperty("relateType")
|
|
|
- private String relateType;
|
|
|
- @JsonProperty("underWriteEndDate")
|
|
|
- private String underWriteEndDate;
|
|
|
- @JsonProperty("underwritingReminderFlag")
|
|
|
- private String underwritingReminderFlag;
|
|
|
- @JsonProperty("verificationCode")
|
|
|
- private String verificationCode;
|
|
|
@JsonProperty("reCalculateFlag")
|
|
|
private String reCalculateFlag;
|
|
|
@JsonProperty("suggestedDiscountQuoted")
|
|
|
@@ -252,32 +222,15 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
private Integer isAloneInsureNveh;
|
|
|
|
|
|
public BusinessMainDTO(String makeCom, String makeComName) {
|
|
|
- this.accessSource = "";
|
|
|
- this.agreementNo = "";
|
|
|
this.appointAreaCode = "";
|
|
|
this.argueSolution = "1";
|
|
|
this.argueSolutionCom = "";
|
|
|
- this.beforeFXQStockOnline = false;
|
|
|
- this.billAcceptDate = "";
|
|
|
this.businessType = "2";
|
|
|
- this.constract5 = "";
|
|
|
this.hnscoreGroup = "";
|
|
|
- this.inputDateTime = "";
|
|
|
- this.isAloneCorrectingNveh = "";
|
|
|
- this.isAsync = false;
|
|
|
- this.isCorrectGLASS = false;
|
|
|
- this.isCorrectHOME = false;
|
|
|
- this.isCorrectNVEH = false;
|
|
|
- this.isElectronicInsuredFlag = false;
|
|
|
- this.isFace = "";
|
|
|
this.makeCom = makeCom;
|
|
|
this.makeComName = makeComName;
|
|
|
this.operateDateTime = "";
|
|
|
- this.operatorName = "";
|
|
|
- this.relateType = "";
|
|
|
- this.underWriteEndDate = "";
|
|
|
- this.underwritingReminderFlag = "";
|
|
|
- this.verificationCode = "";
|
|
|
+ this.baseDiscountFlag = "0";
|
|
|
this.reCalculateFlag = "0";
|
|
|
this.suggestedDiscountQuoted = "";
|
|
|
this.priceAdjustType = "1";
|
|
|
@@ -305,11 +258,12 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
@JsonProperty("specializedDevice")
|
|
|
private List<Object> specializedDevice;
|
|
|
|
|
|
- public InsuredObjectDTO(HuaNongCrawlerModelsQueryResponse.CarModelDTO carModelDTO, CarInfoVo carInfoVo, CustomerInfoVo ownersInfo, String actualValue) {
|
|
|
+ public InsuredObjectDTO(HuaNongCrawlerPrecisionServiceSearchResponse.CarModelDTO carModelDTO, CarInfoVo carInfoVo, CustomerInfoVo ownersInfo, String actualValue) {
|
|
|
this.chargingPostInfos = Collections.emptyList();
|
|
|
+ this.specializedDevice = Collections.emptyList();
|
|
|
this.platformCar = new PlatformCarDTO(carModelDTO.getPlatFormCar());
|
|
|
- this.policyCar = new PolicyCarDTO(carInfoVo, ownersInfo, carModelDTO.getFullCarData(), actualValue);
|
|
|
- this.simpleStadarCar = new SimpleStadarCarDTO(carModelDTO.getFullCarData(), carInfoVo.getSeatCount(), carInfoVo.getCompleteKerbMass(), carInfoVo.getLimitLoad());
|
|
|
+ this.policyCar = new PolicyCarDTO(carInfoVo, ownersInfo, carModelDTO.getFullCarData(), carModelDTO.getPlatFormCar(), actualValue);
|
|
|
+ this.simpleStadarCar = new SimpleStadarCarDTO(carModelDTO.getFullCarData(), carModelDTO.getPlatFormCar(), carInfoVo.getSeatCount(), carInfoVo.getCompleteKerbMass(), carInfoVo.completeKerbMassToTonCount());
|
|
|
}
|
|
|
|
|
|
@NoArgsConstructor
|
|
|
@@ -341,9 +295,17 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
private String series;
|
|
|
@JsonProperty("tradeNmae")
|
|
|
private String tradeNmae;
|
|
|
+ @JsonProperty("ineffectualDate")
|
|
|
+ private String ineffectualDate;
|
|
|
+ @JsonProperty("lastCheckDate")
|
|
|
+ private String lastCheckDate;
|
|
|
+ @JsonProperty("rejectDate")
|
|
|
+ private String rejectDate;
|
|
|
+ @JsonProperty("seriesType")
|
|
|
+ private String seriesType;
|
|
|
|
|
|
|
|
|
- public PlatformCarDTO(HuaNongCrawlerModelsQueryResponse.CarModelDTO.PlatFormCarDTO platFormCar) {
|
|
|
+ public PlatformCarDTO(HuaNongCrawlerPrecisionServiceSearchResponse.CarModelDTO.PlatFormCarDTO platFormCar) {
|
|
|
this.basicRateCode = "";
|
|
|
this.brand = "";
|
|
|
this.carName = platFormCar.getCarName();
|
|
|
@@ -354,9 +316,13 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
this.deptName = platFormCar.getDeptName();
|
|
|
this.modelCodeHX = "";
|
|
|
this.modelIdCode = "";
|
|
|
- this.noticeType = "";
|
|
|
+ this.noticeType = platFormCar.getNoticeType();
|
|
|
this.series = "";
|
|
|
this.tradeNmae = "";
|
|
|
+ this.ineffectualDate = "";
|
|
|
+ this.lastCheckDate = "";
|
|
|
+ this.rejectDate = "";
|
|
|
+ this.seriesType = "";
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -423,6 +389,10 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
private String issueDate;
|
|
|
@JsonProperty("lfDate")
|
|
|
private String lfDate;
|
|
|
+ @JsonProperty("deptCode")
|
|
|
+ private String deptCode;
|
|
|
+ @JsonProperty("deptName")
|
|
|
+ private String deptName;
|
|
|
@JsonProperty("lkxcFlag")
|
|
|
private Boolean lkxcFlag;
|
|
|
@JsonProperty("loanStatus")
|
|
|
@@ -499,8 +469,16 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
private Boolean otherCarFlag;
|
|
|
@JsonProperty("certificateDate")
|
|
|
private String certificateDate;
|
|
|
-
|
|
|
- public PolicyCarDTO(CarInfoVo carInfoVo, CustomerInfoVo ownersInfo, HuaNongCrawlerModelsQueryResponse.CarModelDTO.FullCarDataDTO fullCarDataDTO, String actualValue) {
|
|
|
+ @JsonProperty("HKPlateNo")
|
|
|
+ private String HKPlateNo;
|
|
|
+ @JsonProperty("carCheckTime")
|
|
|
+ private String carCheckTime;
|
|
|
+ @JsonProperty("invoiceDate")
|
|
|
+ private String invoiceDate;
|
|
|
+
|
|
|
+ public PolicyCarDTO(CarInfoVo carInfoVo, CustomerInfoVo ownersInfo,
|
|
|
+ HuaNongCrawlerPrecisionServiceSearchResponse.CarModelDTO.FullCarDataDTO fullCarDataDTO,
|
|
|
+ HuaNongCrawlerPrecisionServiceSearchResponse.CarModelDTO.PlatFormCarDTO platFormCar, String actualValue) {
|
|
|
this.actualValue = actualValue;
|
|
|
this.bankCode = "";
|
|
|
this.bankName = "";
|
|
|
@@ -510,6 +488,9 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
this.carChecker = "";
|
|
|
this.carDetails = "";
|
|
|
this.carInjury = "";
|
|
|
+ this.HKPlateNo = "";
|
|
|
+ this.carCheckTime = "";
|
|
|
+ this.invoiceDate = "";
|
|
|
this.carKind = fullCarDataDTO.getCarKind();
|
|
|
this.carRenewalFlagBI = "0";
|
|
|
this.carRenewalFlagCI = "0";
|
|
|
@@ -528,9 +509,11 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
this.hfcode = fullCarDataDTO.getHfcode();
|
|
|
this.hfname = fullCarDataDTO.getHfname();
|
|
|
this.insCarClass = fullCarDataDTO.getInsCarClass();
|
|
|
- this.isNewEnergyFlag = fullCarDataDTO.getDisPlayFlag();
|
|
|
- this.issueDate = carInfoVo.getIssueDate();
|
|
|
+ this.isNewEnergyFlag = carInfoVo.isNewEnergyMark();
|
|
|
+ this.issueDate = TimeProcessing.dateToDateTime(carInfoVo.getIssueDate());
|
|
|
this.lfDate = "";
|
|
|
+ this.deptCode = platFormCar.getDeptCode();
|
|
|
+ this.deptName = platFormCar.getDeptName();
|
|
|
this.lkxcFlag = false;
|
|
|
this.loanStatus = false;
|
|
|
this.loanVehicleFlag = false;
|
|
|
@@ -551,15 +534,20 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
this.pmQueryNo = "";
|
|
|
this.precisionServiceSearch = false;
|
|
|
this.pureRange = 0;
|
|
|
- this.registerDate = carInfoVo.getRegisterDate();
|
|
|
+ this.registerDate = TimeProcessing.dateToDateTime(carInfoVo.getRegisterDate());
|
|
|
this.runArea = "";
|
|
|
this.runMiles = "";
|
|
|
this.siChuanUsageType = "0";
|
|
|
this.specialFlag = false;
|
|
|
this.taxInclued = false;
|
|
|
this.topSpeed = "";
|
|
|
- this.transferDate = carInfoVo.getTransferDate();
|
|
|
+ if (carInfoVo.isTransfer()) {
|
|
|
+ this.transferDate = carInfoVo.getTransferDate();
|
|
|
+ } else {
|
|
|
+ this.transferDate = "";
|
|
|
+ }
|
|
|
this.transferMark = carInfoVo.isTransfer();
|
|
|
+
|
|
|
this.transferMarkBi = carInfoVo.isBiTransfer();
|
|
|
this.useYears = "";
|
|
|
this.useYearsDetail = "";
|
|
|
@@ -587,7 +575,7 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
@JsonProperty("analogyPriceTax")
|
|
|
private Integer analogyPriceTax;
|
|
|
@JsonProperty("approvedLoad")
|
|
|
- private Integer approvedLoad;
|
|
|
+ private String approvedLoad;
|
|
|
@JsonProperty("approvedPassengersCapacity")
|
|
|
private Integer approvedPassengersCapacity;
|
|
|
@JsonProperty("brand")
|
|
|
@@ -669,7 +657,7 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
@JsonProperty("transmissionType")
|
|
|
private String transmissionType;
|
|
|
@JsonProperty("unladenMass")
|
|
|
- private Integer unladenMass;
|
|
|
+ private String unladenMass;
|
|
|
@JsonProperty("vehicleStyleUniqueId")
|
|
|
private String vehicleStyleUniqueId;
|
|
|
@JsonProperty("noticeType")
|
|
|
@@ -679,12 +667,14 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
@JsonProperty("purchasePriceCopy")
|
|
|
private String purchasePriceCopy;
|
|
|
|
|
|
- public SimpleStadarCarDTO(HuaNongCrawlerModelsQueryResponse.CarModelDTO.FullCarDataDTO fullCarDataDTO, String seatCount, String completeKerbMass, String limitLoad) {
|
|
|
+ public SimpleStadarCarDTO(HuaNongCrawlerPrecisionServiceSearchResponse.CarModelDTO.FullCarDataDTO fullCarDataDTO,
|
|
|
+ HuaNongCrawlerPrecisionServiceSearchResponse.CarModelDTO.PlatFormCarDTO platFormCarDTO,
|
|
|
+ String seatCount, String completeKerbMass, String limitLoad) {
|
|
|
this.absFlag = fullCarDataDTO.getAbsFlag();
|
|
|
this.airbagCount = fullCarDataDTO.getAirbagCount();
|
|
|
this.analogyPrice = fullCarDataDTO.getAnalogyPrice();
|
|
|
this.analogyPriceTax = fullCarDataDTO.getAnalogyPriceTax();
|
|
|
- this.approvedLoad = fullCarDataDTO.getApprovedLoad();
|
|
|
+ this.approvedLoad = limitLoad;
|
|
|
this.approvedPassengersCapacity = Integer.valueOf(seatCount);
|
|
|
this.brand = fullCarDataDTO.getBrand();
|
|
|
this.brandCode = fullCarDataDTO.getBrandCode();
|
|
|
@@ -725,10 +715,12 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
this.theftProof = fullCarDataDTO.getTheftProof();
|
|
|
this.tractionMass = fullCarDataDTO.getTractionMass();
|
|
|
this.transmissionType = fullCarDataDTO.getTransmissionType();
|
|
|
- this.unladenMass = fullCarDataDTO.getUnladenMass();
|
|
|
- this.noticeType = fullCarDataDTO.getNoticeType();
|
|
|
- this.brandCopy = fullCarDataDTO.getBrandCopy();
|
|
|
- this.purchasePriceCopy = fullCarDataDTO.getPurchasePriceCopy();
|
|
|
+ this.unladenMass = completeKerbMass;
|
|
|
+ this.noticeType = platFormCarDTO.getNoticeType();
|
|
|
+ this.brandCopy = fullCarDataDTO.getModelName();
|
|
|
+ this.purchasePriceCopy = fullCarDataDTO.getPurchasePrice();
|
|
|
+ this.vehicleStyleUniqueId = platFormCarDTO.getVehicleStyleUniqueId();
|
|
|
+ this.noticeType = platFormCarDTO.getNoticeType();
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -892,7 +884,7 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
this.salesIdentifyNumber = agentInfoListDTO.getSalesIdentifyNumber();
|
|
|
this.salesIdentifyType = agentInfoListDTO.getSalesIdentifyType();
|
|
|
|
|
|
- this.agreementNo = "";
|
|
|
+ this.agreementNo = handlerListDTO.getAgreementNo();
|
|
|
this.comCode = comListDTO.getComCode();
|
|
|
this.comFlag = comListDTO.getFlag();
|
|
|
this.comName = comListDTO.getComName();
|
|
|
@@ -944,6 +936,21 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
@JsonProperty("riskClassType")
|
|
|
private String certificateNo;
|
|
|
|
|
|
+ @JsonProperty("performanceDate")
|
|
|
+ private String performanceDate;
|
|
|
+
|
|
|
+ @JsonProperty("coachCode")
|
|
|
+ private String coachCode;
|
|
|
+
|
|
|
+ @JsonProperty("coachName")
|
|
|
+ private String coachName;
|
|
|
+
|
|
|
+ @JsonProperty("coachComCode")
|
|
|
+ private String coachComCode;
|
|
|
+
|
|
|
+ @JsonProperty("handlerType")
|
|
|
+ private String handlerType;
|
|
|
+
|
|
|
public SalesmanDTO(HuaNongCrawlerUserTypeAndProxyInfoQueryResponse.HandlerListDTO handlerListDTO, String callerName) {
|
|
|
this.callerName = callerName;
|
|
|
this.certificateNo = handlerListDTO.getCertificateNo();
|
|
|
@@ -952,9 +959,14 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
this.handleRate = 100;
|
|
|
this.handlerCode = handlerListDTO.getHandlerCode();
|
|
|
this.handlerName = handlerListDTO.getHandlerName();
|
|
|
- this.handlerIdentifynumber = handlerListDTO.getHandlerCode();
|
|
|
+ this.handlerIdentifynumber = handlerListDTO.getHandlerId();
|
|
|
this.handlerMobile = handlerListDTO.getHandlerMobile();
|
|
|
this.riskClassType = handlerListDTO.getRiskClassType();
|
|
|
+ this.performanceDate = "201705";
|
|
|
+ this.coachCode = "";
|
|
|
+ this.coachName = "";
|
|
|
+ this.coachComCode = "";
|
|
|
+ this.handlerType = "";
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
@@ -1246,27 +1258,44 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
@JsonProperty("coverage")
|
|
|
private List<CoverageDTO> coverage;
|
|
|
|
|
|
- private static ContractDTO getCiContractDTO(RiskInfoVo ciRiskInfoVo) {
|
|
|
+ private static ContractDTO getCiContractDTO(RiskInfoVo ciRiskInfoVo, CustomerInfoVo insuredPersonInfo) {
|
|
|
ContractDTO contractDTO = new ContractDTO();
|
|
|
- contractDTO.setContractMain(new ContractMainDTO());
|
|
|
-
|
|
|
- return new ContractDTO();
|
|
|
+ contractDTO.setContractMain(new ContractMainDTO(ciRiskInfoVo, "0507", "CI"));
|
|
|
+ contractDTO.setTax(new TaxDTO(insuredPersonInfo));
|
|
|
+
|
|
|
+ contractDTO.setViolation(Collections.emptyList());
|
|
|
+ contractDTO.setPlatFormMessage(new PlatFormMessageDTO());
|
|
|
+ contractDTO.setCoverage(List.of(new CoverageDTO(ciRiskInfoVo)));
|
|
|
+ contractDTO.setEngage(Collections.emptyList());
|
|
|
+ return contractDTO;
|
|
|
}
|
|
|
|
|
|
private static ContractDTO getBiContractDTO(RiskInfoVo biRiskInfoVo, List<KindInfoVo> kindInfoVo) {
|
|
|
ContractDTO contractDTO = new ContractDTO();
|
|
|
-
|
|
|
+ contractDTO.setContractMain(new ContractMainDTO(biRiskInfoVo, "0510", "BI"));
|
|
|
List<CoverageDTO> coverageDTOS = kindInfoVo.stream()
|
|
|
.map(kind -> new CoverageDTO(biRiskInfoVo, kind))
|
|
|
.toList();
|
|
|
- contractDTO.setCoverage(coverageDTOS);
|
|
|
+ contractDTO.setTax(new TaxDTO());
|
|
|
|
|
|
- return new ContractDTO();
|
|
|
+ contractDTO.setPlatFormMessage(new PlatFormMessageDTO());
|
|
|
+ contractDTO.setCoverage(coverageDTOS);
|
|
|
+ contractDTO.setEngage(Collections.emptyList());
|
|
|
+ return contractDTO;
|
|
|
}
|
|
|
|
|
|
|
|
|
- private static List<ContractDTO> build(RiskInfoVo ciRiskInfoVo, RiskInfoVo biRiskInfoVo, List<KindInfoVo> kindInfoVo) {
|
|
|
- return List.of(getCiContractDTO(ciRiskInfoVo), getBiContractDTO(biRiskInfoVo, kindInfoVo));
|
|
|
+ private static List<ContractDTO> build(RiskInfoVo ciRiskInfoVo, RiskInfoVo biRiskInfoVo, List<KindInfoVo> kindInfoVo, CustomerInfoVo insuredPersonInfo) {
|
|
|
+ List<ContractDTO> contractDTOList = new ArrayList<>();
|
|
|
+ Optional.ofNullable(ciRiskInfoVo)
|
|
|
+ .ifPresent(x -> {
|
|
|
+ contractDTOList.add(getCiContractDTO(x, insuredPersonInfo));
|
|
|
+ });
|
|
|
+ Optional.ofNullable(biRiskInfoVo)
|
|
|
+ .ifPresent(x -> {
|
|
|
+ contractDTOList.add(getBiContractDTO(x, kindInfoVo));
|
|
|
+ });
|
|
|
+ return contractDTOList;
|
|
|
}
|
|
|
|
|
|
@NoArgsConstructor
|
|
|
@@ -1519,7 +1548,7 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
@JsonProperty("timeEffectFlag")
|
|
|
private Integer timeEffectFlag;
|
|
|
@JsonProperty("totalAdjustRate")
|
|
|
- private String totalAdjustRate;
|
|
|
+ private double totalAdjustRate;
|
|
|
@JsonProperty("totalPremium")
|
|
|
private String totalPremium;
|
|
|
@JsonProperty("totalPremiumRange")
|
|
|
@@ -1544,6 +1573,8 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
private String riskType;
|
|
|
@JsonProperty("BImark")
|
|
|
private Boolean bImark;
|
|
|
+ @JsonProperty("CImark")
|
|
|
+ private Boolean cImark;
|
|
|
@JsonProperty("ilogType")
|
|
|
private String ilogType;
|
|
|
@JsonProperty("peerComparisonFlag")
|
|
|
@@ -1560,6 +1591,96 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
private String htmlSource;
|
|
|
@JsonProperty("reinsInfo")
|
|
|
private String reinsInfo;
|
|
|
+
|
|
|
+ public ContractMainDTO(RiskInfoVo riskInfoVo, String riskCode, String riskType) {
|
|
|
+ this.allTotalpremium = 0.0;
|
|
|
+ this.basicCommissionRate = 0;
|
|
|
+ this.basicExpenseRate = 0;
|
|
|
+ this.basicPerformanceRate = 0;
|
|
|
+ this.biTotalpremium = 0.0;
|
|
|
+ this.bjsRiskId = "";
|
|
|
+ this.bjsSaleId = "";
|
|
|
+ this.ccId = "";
|
|
|
+ this.ccScore = "";
|
|
|
+ this.ciCarshiptaxpremium = 0;
|
|
|
+ this.ciTotalpremium = 0;
|
|
|
+ this.comRateUpperLimit = 0;
|
|
|
+ this.commissionRate = 0;
|
|
|
+ this.commissionRateOri = 0;
|
|
|
+ this.configCommissionRate = 0;
|
|
|
+ this.configExpenseRate = 0;
|
|
|
+ this.configPerformanceRate = 0;
|
|
|
+ this.costType = "";
|
|
|
+ this.disCountType = "";
|
|
|
+ this.discount = 0;
|
|
|
+ this.egflPredbc = 0;
|
|
|
+ this.endorRateUpperLimit = 0;
|
|
|
+ this.expRateExtUpperLimit = 0;
|
|
|
+ this.expRateUpperLimit = 0;
|
|
|
+ this.expandRateExtOri = 0;
|
|
|
+ this.expandRateOri = 0;
|
|
|
+ this.expectCommissionRate = 0;
|
|
|
+ this.expectExpenseRate = 0;
|
|
|
+ this.expectPerformanceRate = 0;
|
|
|
+ this.expenseAmountExt = 0;
|
|
|
+ this.expenseAmountRangeExt = 0;
|
|
|
+ this.expenseBusRate = 0;
|
|
|
+ this.expenseOrgRate = 0;
|
|
|
+ this.expenseRate = 0;
|
|
|
+ this.expenseRateExt = 0;
|
|
|
+ this.expiryDate = riskInfoVo.getEndDate();
|
|
|
+ this.feeRateChg = 0;
|
|
|
+ this.isFullSurrender = false;
|
|
|
+ this.isPersonalAgent = "";
|
|
|
+ this.isSynModifyGlass = false;
|
|
|
+ this.isSynModifyHome = false;
|
|
|
+ this.isSynModifyNveh = false;
|
|
|
+ this.lastPolicyEndDate = "";
|
|
|
+ this.lastPolicyInsurerCode = "";
|
|
|
+ this.lastPolicyIsLocal = "";
|
|
|
+ this.lastPolicyNcd = "";
|
|
|
+ this.lastPolicyStartDate = "";
|
|
|
+ this.lowestDiscount = 0;
|
|
|
+ this.noTaxPremium = 0;
|
|
|
+ this.noTaxPremiumChg = 0;
|
|
|
+ this.nvehPremium = 0;
|
|
|
+ this.nvehReInsureFlag = "";
|
|
|
+ this.nvehStandardPremium = 0;
|
|
|
+ this.nvehTotalpremium = 0;
|
|
|
+ this.perRateUpperLimit = 0;
|
|
|
+ this.performanceRate = 0;
|
|
|
+ this.performanceRateOri = 0;
|
|
|
+ this.policyDiscount = 0;
|
|
|
+ this.premiumCount = 0;
|
|
|
+ this.riskCode = riskCode;
|
|
|
+ this.riskCost = 0.0;
|
|
|
+ this.saleDiscount = "";
|
|
|
+ this.saleSelfPriceAdjust = "";
|
|
|
+ this.saleSelfPriceAdjustOld = 0;
|
|
|
+ this.sucplPredbc = 0;
|
|
|
+ this.sucprPredbc = 0;
|
|
|
+ this.totalAdjustRate = 0;
|
|
|
+ this.totalPremium = "";
|
|
|
+ this.totalPremiumRange = 0;
|
|
|
+ this.totalRiskPremium = "";
|
|
|
+ this.totalStandardPremium = "";
|
|
|
+ this.totalStandardPremiumRange = 0;
|
|
|
+ this.unitPremium = 0;
|
|
|
+ this.validDate = riskInfoVo.getStartDate();
|
|
|
+ this.vat = 0;
|
|
|
+ this.vatChg = 0;
|
|
|
+ this.riskType = riskType;
|
|
|
+ this.argueSolution = "1";
|
|
|
+ this.bImark = false;
|
|
|
+ this.cImark = false;
|
|
|
+ this.renewalSource = "0";
|
|
|
+ this.relatedType = "3";
|
|
|
+ this.printType = "1";
|
|
|
+ this.htmlSource = "35";
|
|
|
+ this.productionDate = TimeProcessing.nowDateTime();
|
|
|
+ this.timeEffectFlag = 0;
|
|
|
+
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@NoArgsConstructor
|
|
|
@@ -1744,6 +1865,50 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
private Integer unit;
|
|
|
@JsonProperty("exceedStartDateExceedEndDate")
|
|
|
private String exceedStartDateExceedEndDate;
|
|
|
+
|
|
|
+ @JsonProperty("calculateMode")
|
|
|
+ private String calculateMode;
|
|
|
+
|
|
|
+ @JsonProperty("taxPayerName")
|
|
|
+ private String taxPayerName;
|
|
|
+
|
|
|
+ @JsonProperty("taxPayerIdentityType")
|
|
|
+ private String taxPayerIdentityType;
|
|
|
+
|
|
|
+ @JsonProperty("taxPayerIdentityNo")
|
|
|
+ private String taxPayerIdentityNo;
|
|
|
+
|
|
|
+ @JsonProperty("taxPayerIdentity")
|
|
|
+ private String taxPayerIdentity;
|
|
|
+
|
|
|
+ @JsonProperty("taxPayerIdentificationCode")
|
|
|
+ private String taxPayerIdentificationCode;
|
|
|
+
|
|
|
+ @JsonProperty("taxConditionCode")
|
|
|
+ private String taxConditionCode;
|
|
|
+
|
|
|
+ public TaxDTO(CustomerInfoVo insuredPersonInfo) {
|
|
|
+ this.annualTaxAmount = 0;
|
|
|
+ this.annualTaxDue = 0;
|
|
|
+ this.chgSumpayTax = 0;
|
|
|
+ this.commission = 0;
|
|
|
+ this.deduction = 0;
|
|
|
+ this.deductionDueProportion = 0;
|
|
|
+ this.exceedDaysCount = 0;
|
|
|
+ this.lastPaidYear = 0;
|
|
|
+ this.sumOverdue = 0;
|
|
|
+ this.sumTax = 0;
|
|
|
+ this.sumTaxDefault = 0;
|
|
|
+ this.unit = 0;
|
|
|
+ this.taxConditionCode = "1";
|
|
|
+ this.exceedStartDateExceedEndDate = "";
|
|
|
+ this.calculateMode = "C1";
|
|
|
+ this.taxPayerName = insuredPersonInfo.getName();
|
|
|
+ this.taxPayerIdentityType = "01";
|
|
|
+ this.taxPayerIdentityNo = insuredPersonInfo.getIdentifyNumber();
|
|
|
+ this.taxPayerIdentity = "2";
|
|
|
+ this.taxPayerIdentificationCode = insuredPersonInfo.getIdentifyNumber();
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
@NoArgsConstructor
|
|
|
@@ -1842,6 +2007,56 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
@JsonProperty("ductibleRate")
|
|
|
private String ductibleRate;
|
|
|
|
|
|
+ private CoverageDTO(RiskInfoVo ciRiskInfoVo) {
|
|
|
+ this.amount = "200000";
|
|
|
+ this.basePremium = 0;
|
|
|
+ this.commission = 0;
|
|
|
+ this.coverageAdjustRate = "";
|
|
|
+ this.coveragePremium = "";
|
|
|
+ this.coveragePremiumRange = "";
|
|
|
+ this.coverageRiskPremium = "";
|
|
|
+ this.coverageStandardPremium = "";
|
|
|
+ this.deductible = 0;
|
|
|
+ this.deductibleRate = 0;
|
|
|
+ this.dutyCode = "";
|
|
|
+ this.dutyName = "";
|
|
|
+ this.eachDamageLimitAmount = 0;
|
|
|
+ this.enndorFormual = "";
|
|
|
+ this.expiryDate = ciRiskInfoVo.getEndDate();
|
|
|
+ this.flag = "";
|
|
|
+ this.kindCode = "BZ";
|
|
|
+ this.kindName = "机动车交通事故责任强制保险";
|
|
|
+ this.kindNo = 0;
|
|
|
+ this.kindType = "";
|
|
|
+ this.modeCode = "";
|
|
|
+ this.modeName = "";
|
|
|
+ this.noTaxPremium = 0;
|
|
|
+ this.noTaxPremiumChg = 0;
|
|
|
+ this.perRate = 0;
|
|
|
+ this.perRateExt = 0;
|
|
|
+ this.profitRate = 0;
|
|
|
+ this.quantity = 0;
|
|
|
+ this.rate = 0;
|
|
|
+ this.returnPremium = 0;
|
|
|
+ this.seatCount = "";
|
|
|
+ this.serviceTimes = "";
|
|
|
+ this.shortRate = 0;
|
|
|
+ this.shortRateType = "";
|
|
|
+ this.surrenderPremium = 0;
|
|
|
+ this.term = "";
|
|
|
+ this.unitAmount = String.valueOf(0.0);
|
|
|
+ this.unitPremium = 0;
|
|
|
+ this.validDate = ciRiskInfoVo.getStartDate();
|
|
|
+ this.vat = 0;
|
|
|
+ this.vatChg = 0;
|
|
|
+ this.calculateFlag1 = "";
|
|
|
+ this.choosed = false;
|
|
|
+ this.notDeductibleFlag = false;
|
|
|
+ this.optNotDeductibleFlag = 0;
|
|
|
+ this.ductibleRate = "";
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
private CoverageDTO(RiskInfoVo biRiskInfoVo, KindInfoVo kind) {
|
|
|
this.amount = kind.getAmount();
|
|
|
this.basePremium = 0;
|
|
|
@@ -2026,23 +2241,69 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
private String role;
|
|
|
@JsonProperty("individualBusinessFlag")
|
|
|
private String individualBusinessFlag;
|
|
|
+ @JsonProperty("isCustomerEqual")
|
|
|
+ private String isCustomerEqual;
|
|
|
+ @JsonProperty("agentCode")
|
|
|
+ private String agentCode;
|
|
|
+ @JsonProperty("comCode")
|
|
|
+ private String comCode;
|
|
|
+
|
|
|
+ @JsonProperty("firstBeneficiary")
|
|
|
+ private String firstBeneficiary;
|
|
|
+
|
|
|
+ @JsonProperty("carInsuredRelation")
|
|
|
+ private String carInsuredRelation;
|
|
|
+
|
|
|
+ @JsonProperty("DriverTypeCode")
|
|
|
+ private String driverTypeCode;
|
|
|
+
|
|
|
+ @JsonProperty("IssueDate")
|
|
|
+ private String issueDate;
|
|
|
+
|
|
|
+ @JsonProperty("IsMajorDriver")
|
|
|
+ private String isMajorDriver;
|
|
|
+
|
|
|
+ @JsonProperty("OrganizationCustomer")
|
|
|
+ private boolean organizationCustomer;
|
|
|
+
|
|
|
+ @JsonProperty("choosedChargeDate")
|
|
|
+ private boolean choosedChargeDate;
|
|
|
+
|
|
|
+ @JsonProperty("choosedOrgDate")
|
|
|
+ private boolean choosedOrgDate;
|
|
|
+
|
|
|
+ @JsonProperty("choosedCorpDate")
|
|
|
+ private boolean choosedCorpDate;
|
|
|
+
|
|
|
+ @JsonProperty("flag")
|
|
|
+ private String flag;
|
|
|
+
|
|
|
|
|
|
- public CustomerDTO(CustomerInfoVo customerInfoVo, String role, String tandBRelationship) {
|
|
|
+ public CustomerDTO(CustomerInfoVo customerInfoVo, String role, String tandBRelationship, String agentCode, String comCode) {
|
|
|
this.age = customerInfoVo.getAge().toString();
|
|
|
this.annualSalary = "";
|
|
|
- this.birthday = customerInfoVo.getBirthday();
|
|
|
- this.cervalidDate = customerInfoVo.getIdentifyValidDate();
|
|
|
+ this.birthday = TimeProcessing.dateToDateTime(customerInfoVo.getBirthday());
|
|
|
+ this.cervalidDate = TimeProcessing.dateToDateTime(customerInfoVo.getIdentifyValidDate());
|
|
|
this.contact = List.of(new ContactDTO(customerInfoVo));
|
|
|
- this.creendDate = customerInfoVo.getIdentifyValidEndDate();
|
|
|
+ this.creendDate = TimeProcessing.dateToDateTimeMax(customerInfoVo.getIdentifyValidEndDate());
|
|
|
this.customerSign = "4";
|
|
|
- String addr = customerInfoVo.getProperty() + customerInfoVo.getCity() + customerInfoVo.getCounty();
|
|
|
- this.detailedAddressInfo = addr + customerInfoVo.getAddr();
|
|
|
- this.email = customerInfoVo.getEmail();
|
|
|
- this.fxqSex = "1";
|
|
|
+ this.detailedAddressInfo = customerInfoVo.getAddr();
|
|
|
+ this.email = Optional.ofNullable(customerInfoVo.getEmail())
|
|
|
+ .orElse(customerInfoVo.getMobile() + "@qq.com");
|
|
|
+ this.fxqSex = customerInfoVo.getGender();
|
|
|
this.householdRegisType = "";
|
|
|
- this.identifyNumber = Base64.encode(customerInfoVo.getIdentifyNumber());
|
|
|
+ this.identifyNumber = Base64.encode(customerInfoVo.getIdentifyNumber()) + "=";
|
|
|
this.identifyType = customerInfoVo.getDocumentsTypeCode();
|
|
|
this.isAuthFlag = "";
|
|
|
+ this.firstBeneficiary = "0";
|
|
|
+ this.carInsuredRelation = "01";
|
|
|
+ this.driverTypeCode = "";
|
|
|
+ this.issueDate = "";
|
|
|
+ this.isMajorDriver = "";
|
|
|
+ this.organizationCustomer = false;
|
|
|
+ this.choosedOrgDate = false;
|
|
|
+ this.choosedCorpDate = false;
|
|
|
+ this.flag = "";
|
|
|
this.isBlackTrade = "0";
|
|
|
this.job = "0201009";
|
|
|
this.jobCode1 = "0201";
|
|
|
@@ -2054,22 +2315,29 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
this.secrecyUnitFlag = false;
|
|
|
this.sex = customerInfoVo.getGender();
|
|
|
this.sysflag = "1";
|
|
|
- this.tandBRelationship = "";
|
|
|
+ this.tandBRelationship = tandBRelationship;
|
|
|
this.type = "1";
|
|
|
this.workUnit = "";
|
|
|
this.status = "I";
|
|
|
this.copypersonObj = new CopypersonObjDTO();
|
|
|
this.copyorgObj = new CopyorgObjDTO();
|
|
|
- this.choosedDate = true;
|
|
|
- this.choosedDateCopy = false;
|
|
|
+ this.choosedDate = false;
|
|
|
+ this.choosedDateCopy = true;
|
|
|
this.numberCopy = customerInfoVo.getIdentifyNumber();
|
|
|
this.personalCustomer = true;
|
|
|
this.role = role;
|
|
|
this.individualBusinessFlag = "";
|
|
|
+ this.agentCode = agentCode;
|
|
|
+ this.comCode = comCode;
|
|
|
+ this.isCustomerEqual = "0";
|
|
|
}
|
|
|
|
|
|
- public static List<CustomerDTO> build(CustomerInfoVo policyHolderInfo, CustomerInfoVo insuredPersonInfo, CustomerInfoVo ownersInfo) {
|
|
|
- return List.of(new CustomerDTO(policyHolderInfo, "1", "99"), new CustomerDTO(insuredPersonInfo, "2", ""), new CustomerDTO(ownersInfo, "3", ""));
|
|
|
+ public static List<CustomerDTO> build(CustomerInfoVo policyHolderInfo, CustomerInfoVo insuredPersonInfo, CustomerInfoVo ownersInfo, String agentCode, String comCode) {
|
|
|
+ return List.of(
|
|
|
+ new CustomerDTO(policyHolderInfo, "1", "99", agentCode, comCode),
|
|
|
+ new CustomerDTO(insuredPersonInfo, "2", "", agentCode, comCode),
|
|
|
+ new CustomerDTO(ownersInfo, "3", "", agentCode, comCode)
|
|
|
+ );
|
|
|
}
|
|
|
|
|
|
|
|
|
@@ -2115,9 +2383,12 @@ public class HuaNongCrawlerQuotedPriceRequestRequest implements HuaNongHeadReque
|
|
|
|
|
|
public ContactDTO(CustomerInfoVo customerInfoVo) {
|
|
|
this.addr = "";
|
|
|
+ this.linkName = "";
|
|
|
+ this.related = "";
|
|
|
+ this.postCode = "";
|
|
|
this.city = customerInfoVo.getCityCode();
|
|
|
this.district = customerInfoVo.getCountyCode();
|
|
|
- this.mobile = Base64.encode(customerInfoVo.getMobile());
|
|
|
+ this.mobile = Base64.encode(customerInfoVo.getMobile()) + "=";
|
|
|
this.province = customerInfoVo.getProvinceCode();
|
|
|
this.provinceValue = customerInfoVo.getProvince();
|
|
|
this.districtValue = customerInfoVo.getCounty();
|