|
|
@@ -0,0 +1,684 @@
|
|
|
+package com.jzg.quotation.guoren.crawler.entity.request;
|
|
|
+
|
|
|
+import com.fasterxml.jackson.annotation.JsonProperty;
|
|
|
+import com.jzg.commons.entity.quote.vo.AccidentalDrivingVo;
|
|
|
+import com.jzg.commons.entity.quote.vo.CarInfoVo;
|
|
|
+import com.jzg.commons.entity.quote.vo.CustomerInfoVo;
|
|
|
+import com.jzg.commons.entity.quote.vo.QuoteVo;
|
|
|
+import com.jzg.quotation.commons.utils.TimeProcessing;
|
|
|
+import com.jzg.quotation.guoren.crawler.entity.dto.GuoRenPrpTinsuredDTO;
|
|
|
+import com.jzg.quotation.guoren.crawler.entity.dto.GuoRenPrpTitemCarDTO;
|
|
|
+import com.jzg.quotation.guoren.crawler.entity.dto.PrpTMainDTO;
|
|
|
+import com.jzg.quotation.guoren.crawler.entity.response.GuoRenCrawlerQueryQuotationData;
|
|
|
+import lombok.AllArgsConstructor;
|
|
|
+import lombok.Data;
|
|
|
+import lombok.NoArgsConstructor;
|
|
|
+
|
|
|
+import java.io.Serial;
|
|
|
+import java.io.Serializable;
|
|
|
+import java.math.BigDecimal;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Collections;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+/**
|
|
|
+ * @description: 【国任财险】 驾意险校验&投保 请求
|
|
|
+ * @date 2026/07/08
|
|
|
+ */
|
|
|
+@Data
|
|
|
+@NoArgsConstructor
|
|
|
+public class GuoRenCrawlerCreateOrderRequest implements Serializable {
|
|
|
+
|
|
|
+ @Serial
|
|
|
+ private static final long serialVersionUID = 2875693012345678901L;
|
|
|
+
|
|
|
+ @JsonProperty("channelCode")
|
|
|
+ private String channelCode;
|
|
|
+
|
|
|
+ @JsonProperty("data")
|
|
|
+ private DataDTO data;
|
|
|
+
|
|
|
+ @JsonProperty("othBusinessNo")
|
|
|
+ private String othBusinessNo;
|
|
|
+
|
|
|
+ @JsonProperty("requestTime")
|
|
|
+ private String requestTime;
|
|
|
+
|
|
|
+ @JsonProperty("orderCode")
|
|
|
+ private String orderCode;
|
|
|
+
|
|
|
+ public GuoRenCrawlerCreateOrderRequest(QuoteVo quoteVo,
|
|
|
+ GuoRenCrawlerCalculationPremiumRequest calculationPremiumRequest,
|
|
|
+ List<GuoRenCrawlerQueryQuotationData.LiabDTO> queryLiabList) {
|
|
|
+ String ordersNo = quoteVo.getOrder().getOrdersNo();
|
|
|
+ AccidentalDrivingVo accidentalDriving = quoteVo.getAccidentalDrivings().get(0);
|
|
|
+ CustomerInfoVo insuredPersonInfo = quoteVo.getInsuredPersonInfo();
|
|
|
+ CustomerInfoVo policyHolderInfo = quoteVo.getPolicyHolderInfo();
|
|
|
+ CarInfoVo carInfoVo = quoteVo.getCarInfoVo();
|
|
|
+
|
|
|
+ PrpTMainDTO prpTMain = calculationPremiumRequest.getBc().getPrpTmain();
|
|
|
+ GuoRenPrpTitemCarDTO prpTitemCar = calculationPremiumRequest.getBc().getPrpTitemCar();
|
|
|
+ GuoRenPrpTinsuredDTO prpTinsured = calculationPremiumRequest.getBc().getPrpTinsured();
|
|
|
+
|
|
|
+ this.channelCode = "RBT";
|
|
|
+ this.othBusinessNo = ordersNo;
|
|
|
+ this.requestTime = TimeProcessing.nowDate();
|
|
|
+
|
|
|
+ // 构建 Data
|
|
|
+ DataDTO dataDTO = new DataDTO();
|
|
|
+
|
|
|
+ // 构建 OrderList
|
|
|
+ OrderListDTO orderListDTO = new OrderListDTO();
|
|
|
+
|
|
|
+ // ----- orderMain -----
|
|
|
+ OrderMainDTO orderMain = new OrderMainDTO();
|
|
|
+ orderMain.setOthOrderNo(ordersNo);
|
|
|
+ // 根据查询结果计算保额和保费(liabAmount/renewalInd相加)
|
|
|
+ orderMain.setAmount(calculateAmountFromLiabList(queryLiabList));
|
|
|
+ orderMain.setPremium(calculatePremiumFromLiabList(queryLiabList));
|
|
|
+ orderMain.setProdCode(accidentalDriving.getProductCode());
|
|
|
+ orderMain.setProdName(accidentalDriving.getProductName());
|
|
|
+ // goodsCode 根据产品编码推导:将 productCode 后3位替换为45001001格式
|
|
|
+ orderMain.setGoodsCode(accidentalDriving.getParentProductCode());
|
|
|
+ orderMain.setGoodsName(accidentalDriving.getParentProductName());
|
|
|
+ orderMain.setRiskCode(Collections.singletonList(accidentalDriving.getRiskCode()));
|
|
|
+ // 使用交强险起止日期
|
|
|
+ orderMain.setStartDate(quoteVo.getCiRiskInfoVo() != null
|
|
|
+ ? TimeProcessing.dateTimeToDate(quoteVo.getCiRiskInfoVo().getStartDate()) + " 00:00:00"
|
|
|
+ : TimeProcessing.nowDate() + " 00:00:00");
|
|
|
+ orderMain.setEndDate(quoteVo.getCiRiskInfoVo() != null
|
|
|
+ ? TimeProcessing.dateTimeToDate(quoteVo.getCiRiskInfoVo().getEndDate()) + " 23:59:59"
|
|
|
+ : TimeProcessing.plusDays(TimeProcessing.nowDate(), 365) + " 23:59:59");
|
|
|
+ orderMain.setAgentCode(prpTMain.getAgentCode());
|
|
|
+ orderMain.setOperatorCode(prpTMain.getOperatorCode());
|
|
|
+ orderMain.setCompanyCode(prpTMain.getComCode());
|
|
|
+ orderMain.setIssueCompany(prpTMain.getComCode());
|
|
|
+ orderMain.setClassifyCode("A");
|
|
|
+ orderMain.setBusinessMode("6");
|
|
|
+ orderMain.setBusinessSource("2");
|
|
|
+ orderMain.setUwCount(1);
|
|
|
+ orderMain.setRenewalInd(0);
|
|
|
+ orderMain.setChannelTip(" ");
|
|
|
+ orderMain.setRenewalPolicyNo("");
|
|
|
+ orderMain.setTestFlag("");
|
|
|
+ orderMain.setObjAddressListFlag(Collections.emptyMap());
|
|
|
+ orderMain.setOtherFields(Collections.emptyMap());
|
|
|
+ // ----- liabList(从驾意险查询结果构建) -----
|
|
|
+ List<OrderMainDTO.LiabListDTO> liabList = buildLiabList(queryLiabList);
|
|
|
+ orderMain.setLiabList(liabList);
|
|
|
+
|
|
|
+ // ----- insuredList -----
|
|
|
+ InsuredListDTO insuredListDTO = new InsuredListDTO();
|
|
|
+ insuredListDTO.setInsuredName(insuredPersonInfo.getName());
|
|
|
+ insuredListDTO.setCertfType(insuredPersonInfo.getDocumentsTypeCode() != null
|
|
|
+ ? insuredPersonInfo.getDocumentsTypeCode() : "01");
|
|
|
+ insuredListDTO.setCertfNo(insuredPersonInfo.getIdentifyNumber());
|
|
|
+ insuredListDTO.setBirthDate(insuredPersonInfo.getBirthday());
|
|
|
+ insuredListDTO.setAge(insuredPersonInfo.getAge() != null
|
|
|
+ ? String.valueOf(insuredPersonInfo.getAge()) : "");
|
|
|
+ insuredListDTO.setSex(insuredPersonInfo.getGender());
|
|
|
+ insuredListDTO.setPhoneNo(insuredPersonInfo.getMobile());
|
|
|
+ insuredListDTO.setContactName(insuredPersonInfo.getName());
|
|
|
+ insuredListDTO.setContactMobile(null);
|
|
|
+ insuredListDTO.setInsuredType("1");
|
|
|
+ insuredListDTO.setCertiStartDate(insuredPersonInfo.getIdentifyValidDate());
|
|
|
+ insuredListDTO.setCertiEndDate("");
|
|
|
+ insuredListDTO.setCertiValidity("4");
|
|
|
+ insuredListDTO.setCountryCode("156");
|
|
|
+ insuredListDTO.setCountryName("中国");
|
|
|
+ insuredListDTO.setCustomerRelations("01");
|
|
|
+ insuredListDTO.setAddrProvince(insuredPersonInfo.getProvince());
|
|
|
+ insuredListDTO.setAddrCity(insuredPersonInfo.getCity());
|
|
|
+ insuredListDTO.setAddrCounty(insuredPersonInfo.getCounty() != null
|
|
|
+ ? insuredPersonInfo.getCounty() : "");
|
|
|
+ insuredListDTO.setAddrStreet("");
|
|
|
+ insuredListDTO.setFullAddr(insuredPersonInfo.getAddr());
|
|
|
+ insuredListDTO.setPostCode(insuredPersonInfo.getPostCode() != null
|
|
|
+ ? insuredPersonInfo.getPostCode() : "");
|
|
|
+ insuredListDTO.setPlanNo("1");
|
|
|
+ insuredListDTO.setOccupationGrade("");
|
|
|
+ insuredListDTO.setEducation("");
|
|
|
+ insuredListDTO.setCompanyNature("");
|
|
|
+ insuredListDTO.setShareholdingRatio("");
|
|
|
+ insuredListDTO.setSocialSecInd("");
|
|
|
+ insuredListDTO.setSocialSecNo("");
|
|
|
+
|
|
|
+ // ----- objCarList -----
|
|
|
+ ObjCarListDTO objCarListDTO = new ObjCarListDTO();
|
|
|
+ objCarListDTO.setLicenseNo(prpTitemCar.getLicenseNo());
|
|
|
+ objCarListDTO.setCarCode(prpTitemCar.getLicenseNo());
|
|
|
+ objCarListDTO.setFrameNo(prpTitemCar.getFrameNo());
|
|
|
+ objCarListDTO.setEngineNo(prpTitemCar.getEngineNo());
|
|
|
+ objCarListDTO.setCarModels(prpTitemCar.getModelName());
|
|
|
+ objCarListDTO.setSeatNum(prpTitemCar.getSeatCount());
|
|
|
+ objCarListDTO.setPurchasePrice(prpTitemCar.getPurchasePrice() != null
|
|
|
+ ? prpTitemCar.getPurchasePrice() : "0");
|
|
|
+ objCarListDTO.setCarType(carInfoVo.getCarTypeCode());
|
|
|
+ objCarListDTO.setCarTypeCode("8A");
|
|
|
+ objCarListDTO.setCarTypeName("家庭自用");
|
|
|
+ objCarListDTO.setCarColor(prpTitemCar.getColorCode() != null
|
|
|
+ ? prpTitemCar.getColorCode() : "");
|
|
|
+ objCarListDTO.setDriverName(quoteVo.getPolicyHolderInfo().getName());
|
|
|
+ objCarListDTO.setPlanNo("1");
|
|
|
+ objCarListDTO.setToncount("0.0");
|
|
|
+ objCarListDTO.setCarCategory("A");
|
|
|
+ objCarListDTO.setCompanyName("");
|
|
|
+ objCarListDTO.setCurPassNo("");
|
|
|
+ objCarListDTO.setDeductionVoucherNo("");
|
|
|
+ objCarListDTO.setDeviceNo("");
|
|
|
+ objCarListDTO.setEndLine("");
|
|
|
+ objCarListDTO.setEntryDate("");
|
|
|
+ objCarListDTO.setEntryStationName("");
|
|
|
+ objCarListDTO.setEtcNo("");
|
|
|
+ objCarListDTO.setExitDate("");
|
|
|
+ objCarListDTO.setExitStationName("");
|
|
|
+ objCarListDTO.setLeftImgUrl("");
|
|
|
+ objCarListDTO.setPaymentWaitingPeriod("");
|
|
|
+ objCarListDTO.setPlateNumberUrl("");
|
|
|
+ objCarListDTO.setPossessNature("");
|
|
|
+ objCarListDTO.setProAgreementDate("");
|
|
|
+ objCarListDTO.setProInsureNo("");
|
|
|
+ objCarListDTO.setRightImgUrl("");
|
|
|
+ objCarListDTO.setStartingLine("");
|
|
|
+
|
|
|
+ // ----- orderAppl -----
|
|
|
+ OrderApplDTO orderAppl = new OrderApplDTO();
|
|
|
+ orderAppl.setApplName(policyHolderInfo.getName());
|
|
|
+ orderAppl.setApplType("1");
|
|
|
+ orderAppl.setCertfType(policyHolderInfo.getDocumentsTypeCode() != null
|
|
|
+ ? policyHolderInfo.getDocumentsTypeCode() : "01");
|
|
|
+ orderAppl.setCertfNo(policyHolderInfo.getIdentifyNumber());
|
|
|
+ orderAppl.setBirthDate(policyHolderInfo.getBirthday());
|
|
|
+ orderAppl.setAge(policyHolderInfo.getAge() != null
|
|
|
+ ? String.valueOf(policyHolderInfo.getAge()) : "");
|
|
|
+ orderAppl.setSex(policyHolderInfo.getGender());
|
|
|
+ orderAppl.setPhoneNo(policyHolderInfo.getMobile());
|
|
|
+ orderAppl.setContactName(policyHolderInfo.getName());
|
|
|
+ orderAppl.setContactMobile(null);
|
|
|
+ orderAppl.setCertiStartDate(policyHolderInfo.getIdentifyValidDate());
|
|
|
+ orderAppl.setCertiEndDate("");
|
|
|
+ orderAppl.setCertiValidity("4");
|
|
|
+ orderAppl.setCountryCode("156");
|
|
|
+ orderAppl.setCountryName("中国");
|
|
|
+ orderAppl.setAddrProvince(policyHolderInfo.getProvince());
|
|
|
+ orderAppl.setAddrCity(policyHolderInfo.getCity());
|
|
|
+ orderAppl.setAddrCounty(policyHolderInfo.getCounty() != null
|
|
|
+ ? policyHolderInfo.getCounty() : "");
|
|
|
+ orderAppl.setAddrStreet("");
|
|
|
+ orderAppl.setFullAddr(policyHolderInfo.getAddr());
|
|
|
+ orderAppl.setPostCode(policyHolderInfo.getPostCode() != null
|
|
|
+ ? policyHolderInfo.getPostCode() : "");
|
|
|
+ orderAppl.setCompanyNature("");
|
|
|
+
|
|
|
+ // ----- planList -----
|
|
|
+ PlanListDTO planListDTO = new PlanListDTO();
|
|
|
+ planListDTO.setPlanNo("1");
|
|
|
+ planListDTO.setQuantity(String.valueOf(accidentalDriving.getQuantity()));
|
|
|
+ planListDTO.setOccupationCode("0500020");
|
|
|
+ planListDTO.setOccupationName("其他");
|
|
|
+ planListDTO.setOccupationCategory("05");
|
|
|
+ planListDTO.setOccupationGrade("1");
|
|
|
+ planListDTO.setOccupationType("0500");
|
|
|
+ planListDTO.setSocialSecInd("01");
|
|
|
+ planListDTO.setAcrGrading("LuminalA");
|
|
|
+ planListDTO.setHealthManagement("02");
|
|
|
+ planListDTO.setMedicalIdeaSer("01");
|
|
|
+
|
|
|
+ // ----- salesmanList -----
|
|
|
+ SalesmanListDTO salesmanListDTO = new SalesmanListDTO();
|
|
|
+ salesmanListDTO.setSerialNo(1);
|
|
|
+ salesmanListDTO.setAgentCode(prpTMain.getAgentCode());
|
|
|
+ salesmanListDTO.setAgentCnrtNo(prpTMain.getAgreementNo() != null
|
|
|
+ ? prpTMain.getAgreementNo() : "");
|
|
|
+ salesmanListDTO.setCompanyCode(prpTMain.getComCode());
|
|
|
+ salesmanListDTO.setSalesmanCode(prpTMain.getHandler1Code() != null
|
|
|
+ ? prpTMain.getHandler1Code() : "");
|
|
|
+ salesmanListDTO.setSalesmanName(prpTMain.getHandler1Name() != null
|
|
|
+ ? prpTMain.getHandler1Name() : "");
|
|
|
+ salesmanListDTO.setSalesmanFlag(1);
|
|
|
+ salesmanListDTO.setAgentCertfNo("");
|
|
|
+ salesmanListDTO.setAgentEmpNo("");
|
|
|
+ salesmanListDTO.setAgentMode("");
|
|
|
+ salesmanListDTO.setAgentName("");
|
|
|
+ salesmanListDTO.setAgentPracticeNo("");
|
|
|
+ salesmanListDTO.setAgentSalesmanName("");
|
|
|
+ salesmanListDTO.setCooperative("");
|
|
|
+ salesmanListDTO.setProjectCode("");
|
|
|
+ salesmanListDTO.setProjectFlag("0");
|
|
|
+ salesmanListDTO.setProjectName("");
|
|
|
+ salesmanListDTO.setReferenceCode("");
|
|
|
+ salesmanListDTO.setReferenceName("");
|
|
|
+ salesmanListDTO.setReferencePhone("");
|
|
|
+
|
|
|
+ // 组装
|
|
|
+ orderListDTO.setInsuredList(Collections.singletonList(insuredListDTO));
|
|
|
+ orderListDTO.setObjCarList(Collections.singletonList(objCarListDTO));
|
|
|
+ orderListDTO.setOrderAppl(orderAppl);
|
|
|
+ orderListDTO.setOrderMain(orderMain);
|
|
|
+ orderListDTO.setPlanList(Collections.singletonList(planListDTO));
|
|
|
+ orderListDTO.setSalesmanList(Collections.singletonList(salesmanListDTO));
|
|
|
+
|
|
|
+ dataDTO.setOrderList(Collections.singletonList(orderListDTO));
|
|
|
+ this.data = dataDTO;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 根据产品编码推导商品编码
|
|
|
+ * 例如: 02746069001 → 02746045001001
|
|
|
+ */
|
|
|
+ private String deriveGoodsCode(String productCode) {
|
|
|
+ if (productCode == null || productCode.length() < 11) {
|
|
|
+ return productCode;
|
|
|
+ }
|
|
|
+ // 取前6位 + "45001" + 原后3位
|
|
|
+ return productCode.substring(0, 6) + "45001" + productCode.substring(8);
|
|
|
+ }
|
|
|
+
|
|
|
+ private int parseIntSafely(String value) {
|
|
|
+ if (value == null || value.isEmpty()) {
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ try {
|
|
|
+ return (int) Double.parseDouble(value);
|
|
|
+ } catch (NumberFormatException e) {
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 从查询结果liabList计算保额(所有liabAmount相加)
|
|
|
+ */
|
|
|
+ private int calculateAmountFromLiabList(List<GuoRenCrawlerQueryQuotationData.LiabDTO> queryLiabList) {
|
|
|
+ if (queryLiabList == null || queryLiabList.isEmpty()) {
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ BigDecimal total = BigDecimal.ZERO;
|
|
|
+ for (GuoRenCrawlerQueryQuotationData.LiabDTO liab : queryLiabList) {
|
|
|
+ if (liab.getLiabAmount() != null) {
|
|
|
+ total = total.add(liab.getLiabAmount());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return total.intValue();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 从查询结果liabList计算总保费(所有liabPremium相加)
|
|
|
+ */
|
|
|
+ private int calculatePremiumFromLiabList(List<GuoRenCrawlerQueryQuotationData.LiabDTO> queryLiabList) {
|
|
|
+ if (queryLiabList == null || queryLiabList.isEmpty()) {
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ BigDecimal total = BigDecimal.ZERO;
|
|
|
+ for (GuoRenCrawlerQueryQuotationData.LiabDTO liab : queryLiabList) {
|
|
|
+ if (liab.getLiabPremium() != null) {
|
|
|
+ total = total.add(liab.getLiabPremium());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return total.intValue();
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 从查询结果liabList构建请求用的LiabListDTO
|
|
|
+ */
|
|
|
+ private List<OrderMainDTO.LiabListDTO> buildLiabList(List<GuoRenCrawlerQueryQuotationData.LiabDTO> queryLiabList) {
|
|
|
+ List<OrderMainDTO.LiabListDTO> liabList = new ArrayList<>();
|
|
|
+ if (queryLiabList == null || queryLiabList.isEmpty()) {
|
|
|
+ return liabList;
|
|
|
+ }
|
|
|
+ for (GuoRenCrawlerQueryQuotationData.LiabDTO liab : queryLiabList) {
|
|
|
+ liabList.add(new OrderMainDTO.LiabListDTO(liab.getLiabName(), "Y"));
|
|
|
+ }
|
|
|
+ return liabList;
|
|
|
+ }
|
|
|
+
|
|
|
+ // ==================== 内部 DTO ====================
|
|
|
+
|
|
|
+ @Data
|
|
|
+ @NoArgsConstructor
|
|
|
+ public static class DataDTO {
|
|
|
+ @JsonProperty("orderList")
|
|
|
+ private List<OrderListDTO> orderList;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Data
|
|
|
+ @NoArgsConstructor
|
|
|
+ public static class OrderListDTO {
|
|
|
+ @JsonProperty("insuredList")
|
|
|
+ private List<InsuredListDTO> insuredList;
|
|
|
+
|
|
|
+ @JsonProperty("objCarList")
|
|
|
+ private List<ObjCarListDTO> objCarList;
|
|
|
+
|
|
|
+ @JsonProperty("orderAppl")
|
|
|
+ private OrderApplDTO orderAppl;
|
|
|
+
|
|
|
+ @JsonProperty("orderMain")
|
|
|
+ private OrderMainDTO orderMain;
|
|
|
+
|
|
|
+ @JsonProperty("planList")
|
|
|
+ private List<PlanListDTO> planList;
|
|
|
+
|
|
|
+ @JsonProperty("salesmanList")
|
|
|
+ private List<SalesmanListDTO> salesmanList;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Data
|
|
|
+ @NoArgsConstructor
|
|
|
+ public static class OrderMainDTO {
|
|
|
+ @JsonProperty("othOrderNo")
|
|
|
+ private String othOrderNo;
|
|
|
+ @JsonProperty("amount")
|
|
|
+ private Integer amount;
|
|
|
+ @JsonProperty("premium")
|
|
|
+ private Integer premium;
|
|
|
+ @JsonProperty("prodCode")
|
|
|
+ private String prodCode;
|
|
|
+ @JsonProperty("prodName")
|
|
|
+ private String prodName;
|
|
|
+ @JsonProperty("goodsCode")
|
|
|
+ private String goodsCode;
|
|
|
+ @JsonProperty("goodsName")
|
|
|
+ private String goodsName;
|
|
|
+ @JsonProperty("riskCode")
|
|
|
+ private List<String> riskCode;
|
|
|
+ @JsonProperty("startDate")
|
|
|
+ private String startDate;
|
|
|
+ @JsonProperty("endDate")
|
|
|
+ private String endDate;
|
|
|
+ @JsonProperty("agentCode")
|
|
|
+ private String agentCode;
|
|
|
+ @JsonProperty("operatorCode")
|
|
|
+ private String operatorCode;
|
|
|
+ @JsonProperty("companyCode")
|
|
|
+ private String companyCode;
|
|
|
+ @JsonProperty("issueCompany")
|
|
|
+ private String issueCompany;
|
|
|
+ @JsonProperty("classifyCode")
|
|
|
+ private String classifyCode;
|
|
|
+ @JsonProperty("businessMode")
|
|
|
+ private String businessMode;
|
|
|
+ @JsonProperty("businessSource")
|
|
|
+ private String businessSource;
|
|
|
+ @JsonProperty("uwCount")
|
|
|
+ private Integer uwCount;
|
|
|
+ @JsonProperty("renewalInd")
|
|
|
+ private Integer renewalInd;
|
|
|
+ @JsonProperty("channelTip")
|
|
|
+ private String channelTip;
|
|
|
+ @JsonProperty("renewalPolicyNo")
|
|
|
+ private String renewalPolicyNo;
|
|
|
+ @JsonProperty("testFlag")
|
|
|
+ private String testFlag;
|
|
|
+ @JsonProperty("objAddressListFlag")
|
|
|
+ private Object objAddressListFlag;
|
|
|
+ @JsonProperty("otherFields")
|
|
|
+ private Object otherFields;
|
|
|
+ @JsonProperty("liabList")
|
|
|
+ private List<LiabListDTO> liabList;
|
|
|
+
|
|
|
+ @Data
|
|
|
+ @NoArgsConstructor
|
|
|
+ @AllArgsConstructor
|
|
|
+ public static class LiabListDTO{
|
|
|
+ @JsonProperty("liabName")
|
|
|
+ private String liabName;
|
|
|
+ @JsonProperty("requiredLiab")
|
|
|
+ private String requiredLiab;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Data
|
|
|
+ @NoArgsConstructor
|
|
|
+ public static class InsuredListDTO {
|
|
|
+ @JsonProperty("insuredName")
|
|
|
+ private String insuredName;
|
|
|
+ @JsonProperty("certfType")
|
|
|
+ private String certfType;
|
|
|
+ @JsonProperty("certfNo")
|
|
|
+ private String certfNo;
|
|
|
+ @JsonProperty("birthDate")
|
|
|
+ private String birthDate;
|
|
|
+ @JsonProperty("age")
|
|
|
+ private String age;
|
|
|
+ @JsonProperty("sex")
|
|
|
+ private String sex;
|
|
|
+ @JsonProperty("phoneNo")
|
|
|
+ private String phoneNo;
|
|
|
+ @JsonProperty("contactName")
|
|
|
+ private String contactName;
|
|
|
+ @JsonProperty("contactMobile")
|
|
|
+ private String contactMobile;
|
|
|
+ @JsonProperty("insuredType")
|
|
|
+ private String insuredType;
|
|
|
+ @JsonProperty("certiStartDate")
|
|
|
+ private String certiStartDate;
|
|
|
+ @JsonProperty("certiEndDate")
|
|
|
+ private String certiEndDate;
|
|
|
+ @JsonProperty("certiValidity")
|
|
|
+ private String certiValidity;
|
|
|
+ @JsonProperty("countryCode")
|
|
|
+ private String countryCode;
|
|
|
+ @JsonProperty("countryName")
|
|
|
+ private String countryName;
|
|
|
+ @JsonProperty("customerRelations")
|
|
|
+ private String customerRelations;
|
|
|
+ @JsonProperty("addrProvince")
|
|
|
+ private String addrProvince;
|
|
|
+ @JsonProperty("addrCity")
|
|
|
+ private String addrCity;
|
|
|
+ @JsonProperty("addrCounty")
|
|
|
+ private String addrCounty;
|
|
|
+ @JsonProperty("addrStreet")
|
|
|
+ private String addrStreet;
|
|
|
+ @JsonProperty("fullAddr")
|
|
|
+ private String fullAddr;
|
|
|
+ @JsonProperty("postCode")
|
|
|
+ private String postCode;
|
|
|
+ @JsonProperty("planNo")
|
|
|
+ private String planNo;
|
|
|
+ @JsonProperty("occupationGrade")
|
|
|
+ private String occupationGrade;
|
|
|
+ @JsonProperty("education")
|
|
|
+ private String education;
|
|
|
+ @JsonProperty("companyNature")
|
|
|
+ private String companyNature;
|
|
|
+ @JsonProperty("shareholdingRatio")
|
|
|
+ private String shareholdingRatio;
|
|
|
+ @JsonProperty("socialSecInd")
|
|
|
+ private String socialSecInd;
|
|
|
+ @JsonProperty("socialSecNo")
|
|
|
+ private String socialSecNo;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Data
|
|
|
+ @NoArgsConstructor
|
|
|
+ public static class ObjCarListDTO {
|
|
|
+ @JsonProperty("licenseNo")
|
|
|
+ private String licenseNo;
|
|
|
+ @JsonProperty("carCode")
|
|
|
+ private String carCode;
|
|
|
+ @JsonProperty("frameNo")
|
|
|
+ private String frameNo;
|
|
|
+ @JsonProperty("engineNo")
|
|
|
+ private String engineNo;
|
|
|
+ @JsonProperty("carModels")
|
|
|
+ private String carModels;
|
|
|
+ @JsonProperty("seatNum")
|
|
|
+ private String seatNum;
|
|
|
+ @JsonProperty("purchasePrice")
|
|
|
+ private String purchasePrice;
|
|
|
+ @JsonProperty("carType")
|
|
|
+ private String carType;
|
|
|
+ @JsonProperty("carTypeCode")
|
|
|
+ private String carTypeCode;
|
|
|
+ @JsonProperty("carTypeName")
|
|
|
+ private String carTypeName;
|
|
|
+ @JsonProperty("carColor")
|
|
|
+ private String carColor;
|
|
|
+ @JsonProperty("driverName")
|
|
|
+ private String driverName;
|
|
|
+ @JsonProperty("planNo")
|
|
|
+ private String planNo;
|
|
|
+ @JsonProperty("toncount")
|
|
|
+ private String toncount;
|
|
|
+ @JsonProperty("carCategory")
|
|
|
+ private String carCategory;
|
|
|
+ @JsonProperty("companyName")
|
|
|
+ private String companyName;
|
|
|
+ @JsonProperty("curPassNo")
|
|
|
+ private String curPassNo;
|
|
|
+ @JsonProperty("deductionVoucherNo")
|
|
|
+ private String deductionVoucherNo;
|
|
|
+ @JsonProperty("deviceNo")
|
|
|
+ private String deviceNo;
|
|
|
+ @JsonProperty("endLine")
|
|
|
+ private String endLine;
|
|
|
+ @JsonProperty("entryDate")
|
|
|
+ private String entryDate;
|
|
|
+ @JsonProperty("entryStationName")
|
|
|
+ private String entryStationName;
|
|
|
+ @JsonProperty("etcNo")
|
|
|
+ private String etcNo;
|
|
|
+ @JsonProperty("exitDate")
|
|
|
+ private String exitDate;
|
|
|
+ @JsonProperty("exitStationName")
|
|
|
+ private String exitStationName;
|
|
|
+ @JsonProperty("leftImgUrl")
|
|
|
+ private String leftImgUrl;
|
|
|
+ @JsonProperty("paymentWaitingPeriod")
|
|
|
+ private String paymentWaitingPeriod;
|
|
|
+ @JsonProperty("plateNumberUrl")
|
|
|
+ private String plateNumberUrl;
|
|
|
+ @JsonProperty("possessNature")
|
|
|
+ private String possessNature;
|
|
|
+ @JsonProperty("proAgreementDate")
|
|
|
+ private String proAgreementDate;
|
|
|
+ @JsonProperty("proInsureNo")
|
|
|
+ private String proInsureNo;
|
|
|
+ @JsonProperty("rightImgUrl")
|
|
|
+ private String rightImgUrl;
|
|
|
+ @JsonProperty("startingLine")
|
|
|
+ private String startingLine;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Data
|
|
|
+ @NoArgsConstructor
|
|
|
+ public static class OrderApplDTO {
|
|
|
+ @JsonProperty("applName")
|
|
|
+ private String applName;
|
|
|
+ @JsonProperty("applType")
|
|
|
+ private String applType;
|
|
|
+ @JsonProperty("certfType")
|
|
|
+ private String certfType;
|
|
|
+ @JsonProperty("certfNo")
|
|
|
+ private String certfNo;
|
|
|
+ @JsonProperty("birthDate")
|
|
|
+ private String birthDate;
|
|
|
+ @JsonProperty("age")
|
|
|
+ private String age;
|
|
|
+ @JsonProperty("sex")
|
|
|
+ private String sex;
|
|
|
+ @JsonProperty("phoneNo")
|
|
|
+ private String phoneNo;
|
|
|
+ @JsonProperty("contactName")
|
|
|
+ private String contactName;
|
|
|
+ @JsonProperty("contactMobile")
|
|
|
+ private String contactMobile;
|
|
|
+ @JsonProperty("certiStartDate")
|
|
|
+ private String certiStartDate;
|
|
|
+ @JsonProperty("certiEndDate")
|
|
|
+ private String certiEndDate;
|
|
|
+ @JsonProperty("certiValidity")
|
|
|
+ private String certiValidity;
|
|
|
+ @JsonProperty("countryCode")
|
|
|
+ private String countryCode;
|
|
|
+ @JsonProperty("countryName")
|
|
|
+ private String countryName;
|
|
|
+ @JsonProperty("addrProvince")
|
|
|
+ private String addrProvince;
|
|
|
+ @JsonProperty("addrCity")
|
|
|
+ private String addrCity;
|
|
|
+ @JsonProperty("addrCounty")
|
|
|
+ private String addrCounty;
|
|
|
+ @JsonProperty("addrStreet")
|
|
|
+ private String addrStreet;
|
|
|
+ @JsonProperty("fullAddr")
|
|
|
+ private String fullAddr;
|
|
|
+ @JsonProperty("postCode")
|
|
|
+ private String postCode;
|
|
|
+ @JsonProperty("companyNature")
|
|
|
+ private String companyNature;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Data
|
|
|
+ @NoArgsConstructor
|
|
|
+ public static class PlanListDTO {
|
|
|
+ @JsonProperty("planNo")
|
|
|
+ private String planNo;
|
|
|
+ @JsonProperty("quantity")
|
|
|
+ private String quantity;
|
|
|
+ @JsonProperty("occupationCode")
|
|
|
+ private String occupationCode;
|
|
|
+ @JsonProperty("occupationName")
|
|
|
+ private String occupationName;
|
|
|
+ @JsonProperty("occupationCategory")
|
|
|
+ private String occupationCategory;
|
|
|
+ @JsonProperty("occupationGrade")
|
|
|
+ private String occupationGrade;
|
|
|
+ @JsonProperty("occupationType")
|
|
|
+ private String occupationType;
|
|
|
+ @JsonProperty("socialSecInd")
|
|
|
+ private String socialSecInd;
|
|
|
+ @JsonProperty("acrGrading")
|
|
|
+ private String acrGrading;
|
|
|
+ @JsonProperty("healthManagement")
|
|
|
+ private String healthManagement;
|
|
|
+ @JsonProperty("medicalIdeaSer")
|
|
|
+ private String medicalIdeaSer;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Data
|
|
|
+ @NoArgsConstructor
|
|
|
+ public static class SalesmanListDTO {
|
|
|
+ @JsonProperty("serialNo")
|
|
|
+ private Integer serialNo;
|
|
|
+ @JsonProperty("agentCode")
|
|
|
+ private String agentCode;
|
|
|
+ @JsonProperty("agentCnrtNo")
|
|
|
+ private String agentCnrtNo;
|
|
|
+ @JsonProperty("companyCode")
|
|
|
+ private String companyCode;
|
|
|
+ @JsonProperty("salesmanCode")
|
|
|
+ private String salesmanCode;
|
|
|
+ @JsonProperty("salesmanName")
|
|
|
+ private String salesmanName;
|
|
|
+ @JsonProperty("salesmanFlag")
|
|
|
+ private Integer salesmanFlag;
|
|
|
+ @JsonProperty("agentCertfNo")
|
|
|
+ private String agentCertfNo;
|
|
|
+ @JsonProperty("agentEmpNo")
|
|
|
+ private String agentEmpNo;
|
|
|
+ @JsonProperty("agentMode")
|
|
|
+ private String agentMode;
|
|
|
+ @JsonProperty("agentName")
|
|
|
+ private String agentName;
|
|
|
+ @JsonProperty("agentPracticeNo")
|
|
|
+ private String agentPracticeNo;
|
|
|
+ @JsonProperty("agentSalesmanName")
|
|
|
+ private String agentSalesmanName;
|
|
|
+ @JsonProperty("cooperative")
|
|
|
+ private String cooperative;
|
|
|
+ @JsonProperty("projectCode")
|
|
|
+ private String projectCode;
|
|
|
+ @JsonProperty("projectFlag")
|
|
|
+ private String projectFlag;
|
|
|
+ @JsonProperty("projectName")
|
|
|
+ private String projectName;
|
|
|
+ @JsonProperty("referenceCode")
|
|
|
+ private String referenceCode;
|
|
|
+ @JsonProperty("referenceName")
|
|
|
+ private String referenceName;
|
|
|
+ @JsonProperty("referencePhone")
|
|
|
+ private String referencePhone;
|
|
|
+ }
|
|
|
+}
|