|
@@ -77,7 +77,7 @@ public class HbCrawlerCalculationRequest extends HbBaseRequest {
|
|
|
@Serial
|
|
@Serial
|
|
|
private static final long serialVersionUID = -6130320344004620564L;
|
|
private static final long serialVersionUID = -6130320344004620564L;
|
|
|
|
|
|
|
|
- public HbCrawlerCalculationRequest(QuoteVo quoteVo, String plyappno) {
|
|
|
|
|
|
|
+ public HbCrawlerCalculationRequest(QuoteVo quoteVo, String plyappno, String depreciationPrice) {
|
|
|
this.clauseType = "2";
|
|
this.clauseType = "2";
|
|
|
List<KindInfoVo> kindInfoVoList = quoteVo.getKindInfoVo();
|
|
List<KindInfoVo> kindInfoVoList = quoteVo.getKindInfoVo();
|
|
|
this.risktype = "0";
|
|
this.risktype = "0";
|
|
@@ -88,12 +88,11 @@ public class HbCrawlerCalculationRequest extends HbBaseRequest {
|
|
|
this.risktype = "1";
|
|
this.risktype = "1";
|
|
|
}
|
|
}
|
|
|
if (CollUtil.isNotEmpty(kindInfoVoList)) {
|
|
if (CollUtil.isNotEmpty(kindInfoVoList)) {
|
|
|
- this.epersonliabilityList = getEpersonliabilityList(kindInfoVoList);
|
|
|
|
|
|
|
+ this.epersonliabilityList = getEpersonliabilityList(kindInfoVoList, depreciationPrice);
|
|
|
this.begintimeBi = DateUtil.toUtcDateTime(quoteVo.getBiRiskInfoVo().getStartDate());
|
|
this.begintimeBi = DateUtil.toUtcDateTime(quoteVo.getBiRiskInfoVo().getStartDate());
|
|
|
this.begintimeAccident = DateUtil.toUtcDateTime(quoteVo.getBiRiskInfoVo().getStartDate());
|
|
this.begintimeAccident = DateUtil.toUtcDateTime(quoteVo.getBiRiskInfoVo().getStartDate());
|
|
|
this.risktype = "2";
|
|
this.risktype = "2";
|
|
|
} else {
|
|
} else {
|
|
|
-// this.begintimeBi = DateUtil.toUtcDateTime(quoteVo.getCiRiskInfoVo().getStartDate());
|
|
|
|
|
this.epersonliabilityList = new ArrayList<>();
|
|
this.epersonliabilityList = new ArrayList<>();
|
|
|
}
|
|
}
|
|
|
this.plyappno = plyappno;
|
|
this.plyappno = plyappno;
|
|
@@ -107,18 +106,34 @@ public class HbCrawlerCalculationRequest extends HbBaseRequest {
|
|
|
this.effectfLag = null;
|
|
this.effectfLag = null;
|
|
|
this.ecarChargingPosts = new ArrayList<>();
|
|
this.ecarChargingPosts = new ArrayList<>();
|
|
|
this.carInsureDevices = new ArrayList<>();
|
|
this.carInsureDevices = new ArrayList<>();
|
|
|
|
|
+ this.outofwarrantytype = "N";
|
|
|
|
|
+ this.drivingtype = "";
|
|
|
|
|
+ this.endtimeAccident = "";
|
|
|
this.accidentInsuranceList = getAccidentInsuranceList(quoteVo.getBiRiskInfoVo(), quoteVo.getAccidentalDrivings());
|
|
this.accidentInsuranceList = getAccidentInsuranceList(quoteVo.getBiRiskInfoVo(), quoteVo.getAccidentalDrivings());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- public List<EpersonliabilityDTO> getEpersonliabilityList(List<KindInfoVo> kindInfoVoList) {
|
|
|
|
|
|
|
+ public List<EpersonliabilityDTO> getEpersonliabilityList(List<KindInfoVo> kindInfoVoList, String depreciationPrice) {
|
|
|
List<EpersonliabilityDTO> epersonliabilityDTOList = new ArrayList<>();
|
|
List<EpersonliabilityDTO> epersonliabilityDTOList = new ArrayList<>();
|
|
|
for (KindInfoVo kindInfoVo : kindInfoVoList) {
|
|
for (KindInfoVo kindInfoVo : kindInfoVoList) {
|
|
|
EpersonliabilityDTO epersonliabilityDTO = new EpersonliabilityDTO();
|
|
EpersonliabilityDTO epersonliabilityDTO = new EpersonliabilityDTO();
|
|
|
epersonliabilityDTO.setKindcode(kindInfoVo.getKindCode());
|
|
epersonliabilityDTO.setKindcode(kindInfoVo.getKindCode());
|
|
|
epersonliabilityDTO.setLiabname(kindInfoVo.getKindName());
|
|
epersonliabilityDTO.setLiabname(kindInfoVo.getKindName());
|
|
|
- epersonliabilityDTO.setLiabamt(kindInfoVo.getAmount());
|
|
|
|
|
- epersonliabilityDTO.setQuantity(kindInfoVo.getQuantity());
|
|
|
|
|
- epersonliabilityDTO.setUnitAmount(kindInfoVo.getUnitAmount());
|
|
|
|
|
|
|
+ // kindcode "101"(机动车损失保险)的保额必须使用车辆折旧价(实际价值),
|
|
|
|
|
+ // 否则保司会校验"协商价格范围建议在实际价值上下30%浮动"并拒绝
|
|
|
|
|
+ if ("101".equals(kindInfoVo.getKindCode()) && depreciationPrice != null) {
|
|
|
|
|
+ epersonliabilityDTO.setLiabamt(depreciationPrice);
|
|
|
|
|
+ epersonliabilityDTO.setUnitAmount(depreciationPrice);
|
|
|
|
|
+ } else if (!"116".equals(kindInfoVo.getKindCode())) {
|
|
|
|
|
+ // kindcode "116"不需要liabamt和unitAmount
|
|
|
|
|
+ epersonliabilityDTO.setLiabamt(kindInfoVo.getAmount());
|
|
|
|
|
+ epersonliabilityDTO.setUnitAmount(kindInfoVo.getUnitAmount());
|
|
|
|
|
+ }
|
|
|
|
|
+ if ("116".equals(kindInfoVo.getKindCode())) {
|
|
|
|
|
+ // 道路救援服务特约条款:只需要serviceTimes字段
|
|
|
|
|
+ epersonliabilityDTO.setServiceTimes(kindInfoVo.getServiceTimes() != null ? kindInfoVo.getServiceTimes() : "2");
|
|
|
|
|
+ } else {
|
|
|
|
|
+ epersonliabilityDTO.setQuantity(kindInfoVo.getQuantity() != null ? kindInfoVo.getQuantity() : "4");
|
|
|
|
|
+ }
|
|
|
epersonliabilityDTOList.add(epersonliabilityDTO);
|
|
epersonliabilityDTOList.add(epersonliabilityDTO);
|
|
|
}
|
|
}
|
|
|
return epersonliabilityDTOList;
|
|
return epersonliabilityDTOList;
|
|
@@ -300,6 +315,7 @@ public class HbCrawlerCalculationRequest extends HbBaseRequest {
|
|
|
private String liabname;
|
|
private String liabname;
|
|
|
private String model = "0";
|
|
private String model = "0";
|
|
|
private String quantity;
|
|
private String quantity;
|
|
|
|
|
+ private String serviceTimes;
|
|
|
private String unitAmount;
|
|
private String unitAmount;
|
|
|
}
|
|
}
|
|
|
|
|
|