|
|
@@ -6,7 +6,9 @@ import com.ydtech.modules.ins.model.vo.CarInfoVo;
|
|
|
import com.ydtech.modules.ins.model.vo.CustomerInfoVo;
|
|
|
import com.ydtech.modules.ins.model.vo.KindInfoVo;
|
|
|
import com.ydtech.modules.ins.model.vo.RiskInfoVo;
|
|
|
+import com.ydtech.modules.ins.model.ya.YaQuoteInfoVo;
|
|
|
import com.ydtech.modules.order.constants.InsuranceTypeCorrespondence;
|
|
|
+import com.ydtech.modules.order.entity.InsAreaCompany;
|
|
|
import com.ydtech.modules.order.entity.api.huatai.HuaTaiBaseRequest;
|
|
|
import com.ydtech.modules.order.entity.api.huatai.HuaTaiBaseRequestHead;
|
|
|
import com.ydtech.modules.order.entity.api.huatai.constants.HuaTaiTransCode;
|
|
|
@@ -23,6 +25,7 @@ import lombok.EqualsAndHashCode;
|
|
|
import lombok.NoArgsConstructor;
|
|
|
|
|
|
import java.io.Serializable;
|
|
|
+import java.math.BigDecimal;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.time.LocalDate;
|
|
|
import java.time.LocalDateTime;
|
|
|
@@ -38,13 +41,19 @@ public class HuaTaiSubmitRequest extends HuaTaiBaseRequest {
|
|
|
@JSONField(name="businessData")
|
|
|
//投保单信息
|
|
|
private BusinessDataDto businessData;
|
|
|
-
|
|
|
+ //Y 机构代码
|
|
|
+ @JSONField(name="loginCom")
|
|
|
+ private String loginCom;
|
|
|
@Override
|
|
|
public void setHead(HuaTaiBaseRequestHead head) {
|
|
|
super.setHead(head);
|
|
|
super.getHead().setTransCode(HuaTaiTransCode.SUBMIT);
|
|
|
}
|
|
|
|
|
|
+ public HuaTaiSubmitRequest (YaQuoteInfoVo yaQuoteInfoVo, InsAreaCompany insAreaCompany, HuaTaiConfigureParameters huaTaiConfigureParameters){
|
|
|
+ this.businessData = new BusinessDataDto(yaQuoteInfoVo,insAreaCompany,huaTaiConfigureParameters);
|
|
|
+ this.loginCom = huaTaiConfigureParameters.getComCode();
|
|
|
+ }
|
|
|
@AllArgsConstructor
|
|
|
@NoArgsConstructor
|
|
|
@Data
|
|
|
@@ -64,19 +73,15 @@ public class HuaTaiSubmitRequest extends HuaTaiBaseRequest {
|
|
|
@JSONField(name="saleInfo")
|
|
|
private SaleInfoDto saleInfo;
|
|
|
|
|
|
- public BusinessDataDto(BaseQuoteInfoVo baseQuoteInfoVo, HuaTaiModelsQueryResponse.CarModelDto.FullCarDataDto fullCarDataDto, HuaTaiActualValueResponse actualValueResponse, HuaTaiConfigureParameters huaTaiConfigureParameters) {
|
|
|
- CarInfoVo carInfo = baseQuoteInfoVo.getCarInfo();
|
|
|
- List<RiskInfoVo> riskList = baseQuoteInfoVo.getRiskList();
|
|
|
- List<KindInfoVo> kindList = baseQuoteInfoVo.getKindList();
|
|
|
- VehicleAndVesselTax vesselTax = baseQuoteInfoVo.getVehicleAndVesselTax();
|
|
|
- CustomerInfoVo ownerInfo = baseQuoteInfoVo.getOwnerInfo();
|
|
|
- CustomerInfoVo policyHolderInfo = baseQuoteInfoVo.getPolicyHolderInfo();
|
|
|
- CustomerInfoVo insuredPersonInfo = baseQuoteInfoVo.getInsuredPersonInfo();
|
|
|
- int i = Integer.parseInt(carInfo.getSeatCount());
|
|
|
+ public BusinessDataDto(YaQuoteInfoVo yaQuoteInfoVo,InsAreaCompany insAreaCompany, HuaTaiConfigureParameters huaTaiConfigureParameters) {
|
|
|
+ List<RiskInfoVo> riskList = yaQuoteInfoVo.getRiskList();
|
|
|
+ CustomerInfoVo ownerInfo = yaQuoteInfoVo.getOwnerInfo();
|
|
|
+ CustomerInfoVo policyHolderInfo = yaQuoteInfoVo.getPolicyHolderInfo();
|
|
|
+ CustomerInfoVo insuredPersonInfo = yaQuoteInfoVo.getInsuredPersonInfo();
|
|
|
// 保单归属地
|
|
|
this.businessMain = new BusinessMainDto(huaTaiConfigureParameters);
|
|
|
// 保险信息
|
|
|
- this.contract = new ContractDto().getContract(riskList,huaTaiConfigureParameters);
|
|
|
+ this.contract = new ContractDto().getContract(riskList,insAreaCompany,huaTaiConfigureParameters);
|
|
|
// 客户信息
|
|
|
this.customer = new CustomerDto().getCustomers(ownerInfo, policyHolderInfo, insuredPersonInfo);
|
|
|
//销售信息
|
|
|
@@ -120,11 +125,11 @@ public class HuaTaiSubmitRequest extends HuaTaiBaseRequest {
|
|
|
@JSONField(name="engage")
|
|
|
private List engage;
|
|
|
|
|
|
- public List<ContractDto> getContract(List<RiskInfoVo> riskInfoVos, HuaTaiConfigureParameters huaTaiConfigureParameters) {
|
|
|
+ public List<ContractDto> getContract(List<RiskInfoVo> riskInfoVos,InsAreaCompany insAreaCompany, HuaTaiConfigureParameters huaTaiConfigureParameters) {
|
|
|
List<ContractDto> contractDTOS = new ArrayList<>();
|
|
|
for (RiskInfoVo riskInfoVo : riskInfoVos) {
|
|
|
ContractDto contractDto = new ContractDto();
|
|
|
- this.contractMain = new ContractMainDto(riskInfoVo,huaTaiConfigureParameters);
|
|
|
+ this.contractMain = new ContractMainDto(riskInfoVo,insAreaCompany,huaTaiConfigureParameters);
|
|
|
contractDto.setContractMain(contractMain);
|
|
|
contractDTOS.add(contractDto);
|
|
|
}
|
|
|
@@ -152,13 +157,19 @@ public class HuaTaiSubmitRequest extends HuaTaiBaseRequest {
|
|
|
private String expiryDate;
|
|
|
//总签单保费
|
|
|
@JSONField(name="totalPremium")
|
|
|
- private String totalPremium;
|
|
|
+ private double totalPremium;
|
|
|
//备注
|
|
|
@JSONField(name="remark")
|
|
|
private String remark;
|
|
|
|
|
|
- public ContractMainDto(RiskInfoVo riskInfoVo, HuaTaiConfigureParameters huaTaiConfigureParameters) {
|
|
|
- this.contractNo = "";
|
|
|
+ public ContractMainDto(RiskInfoVo riskInfoVo,InsAreaCompany insAreaCompany, HuaTaiConfigureParameters huaTaiConfigureParameters) {
|
|
|
+ if("0507".equals(riskInfoVo.getRiskCode())){
|
|
|
+ this.contractNo = insAreaCompany.getJqapplyno();
|
|
|
+ this.totalPremium = insAreaCompany.getJqpremium().doubleValue();
|
|
|
+ }else{
|
|
|
+ this.contractNo = insAreaCompany.getSyapplyno();
|
|
|
+ this.totalPremium = insAreaCompany.getSypremium().doubleValue();
|
|
|
+ }
|
|
|
this.riskCode = InsuranceTypeCorrespondence.getHuaTaiRisk().get(riskInfoVo.getRiskCode());
|
|
|
String startDate = riskInfoVo.getStartDate();
|
|
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
|
|
@@ -175,7 +186,7 @@ public class HuaTaiSubmitRequest extends HuaTaiBaseRequest {
|
|
|
this.validDate = startDate;
|
|
|
this.expiryDate = expiryDateTime.format(formatter);
|
|
|
}
|
|
|
- this.totalPremium = "";
|
|
|
+
|
|
|
|
|
|
}
|
|
|
}
|