|
@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.ydtech.components.OrderComponents;
|
|
import com.ydtech.components.OrderComponents;
|
|
|
import com.ydtech.constants.InsuranceEnum;
|
|
import com.ydtech.constants.InsuranceEnum;
|
|
|
|
|
+import com.ydtech.constants.enums.InsurKind;
|
|
|
import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
|
|
import com.ydtech.constants.enums.dict.InsOrderStatusEnum;
|
|
|
import com.ydtech.constants.enums.dict.insurance.NatureOfVehicleUse;
|
|
import com.ydtech.constants.enums.dict.insurance.NatureOfVehicleUse;
|
|
|
import com.ydtech.constants.enums.dict.insurance.OutOfBusinessVehicleUse;
|
|
import com.ydtech.constants.enums.dict.insurance.OutOfBusinessVehicleUse;
|
|
@@ -31,6 +32,8 @@ import com.ydtech.modules.ins.dao.InsFileMapper;
|
|
|
import com.ydtech.modules.ins.model.InsOrdersExcel;
|
|
import com.ydtech.modules.ins.model.InsOrdersExcel;
|
|
|
import com.ydtech.modules.ins.model.InsOrdersExcelVo;
|
|
import com.ydtech.modules.ins.model.InsOrdersExcelVo;
|
|
|
import com.ydtech.modules.ins.model.vo.CarInfoVo;
|
|
import com.ydtech.modules.ins.model.vo.CarInfoVo;
|
|
|
|
|
+import com.ydtech.modules.ins.model.vo.CustomerInfoVo;
|
|
|
|
|
+import com.ydtech.modules.ins.model.vo.QuoteKindRespVo;
|
|
|
import com.ydtech.modules.ins.model.ya.CarModelDTO;
|
|
import com.ydtech.modules.ins.model.ya.CarModelDTO;
|
|
|
import com.ydtech.modules.ins.model.ya.ExtendInfoDto;
|
|
import com.ydtech.modules.ins.model.ya.ExtendInfoDto;
|
|
|
import com.ydtech.modules.ins.model.ya.ResponseDataC2;
|
|
import com.ydtech.modules.ins.model.ya.ResponseDataC2;
|
|
@@ -43,6 +46,7 @@ import com.ydtech.modules.order.entity.InsAreaCompany;
|
|
|
import com.ydtech.modules.order.entity.InsOrders;
|
|
import com.ydtech.modules.order.entity.InsOrders;
|
|
|
import com.ydtech.modules.order.entity.InsOrdersTrack;
|
|
import com.ydtech.modules.order.entity.InsOrdersTrack;
|
|
|
import com.ydtech.modules.order.entity.bo.UnderwritingRulesBo;
|
|
import com.ydtech.modules.order.entity.bo.UnderwritingRulesBo;
|
|
|
|
|
+import com.ydtech.modules.order.entity.dto.DrivingInsuranceDto;
|
|
|
import com.ydtech.modules.order.entity.dto.InsAreaCompanyQueryDto;
|
|
import com.ydtech.modules.order.entity.dto.InsAreaCompanyQueryDto;
|
|
|
import com.ydtech.modules.order.entity.vo.*;
|
|
import com.ydtech.modules.order.entity.vo.*;
|
|
|
import com.ydtech.modules.order.entity.vo.ya.YaExtendInfoDto;
|
|
import com.ydtech.modules.order.entity.vo.ya.YaExtendInfoDto;
|
|
@@ -397,59 +401,74 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
|
|
|
for (InsOrdersExcel insOrdersExcel : insOrdersExcels) {
|
|
for (InsOrdersExcel insOrdersExcel : insOrdersExcels) {
|
|
|
// 设置车辆信息
|
|
// 设置车辆信息
|
|
|
JSONObject carInfo = insOrdersExcel.getCarInfo();
|
|
JSONObject carInfo = insOrdersExcel.getCarInfo();
|
|
|
|
|
+ CarInfoVo carInfoVo = carInfo.toJavaObject(CarInfoVo.class);
|
|
|
|
|
+ insOrdersExcel.setModelcName(carInfoVo.getModelcname());
|
|
|
|
|
+ insOrdersExcel.setSeatCount(carInfoVo.getSeatCount());
|
|
|
|
|
+ insOrdersExcel.setTransferFlag(carInfoVo.isTransferFlag() ? "是" : "否");
|
|
|
|
|
+ insOrdersExcel.setTransferFlagBi(carInfoVo.isTransferFlagBi() ? "是" : "否");
|
|
|
|
|
|
|
|
- insOrdersExcel.setModelcName(carInfo.getString("modelcname"));
|
|
|
|
|
- insOrdersExcel.setSeatCount(carInfo.getString("seatCount"));
|
|
|
|
|
- insOrdersExcel.setTransferFlag(carInfo.getString("transferFlag").equals("true") ? "是" : "否");
|
|
|
|
|
- insOrdersExcel.setTransferFlagBi(carInfo.getString("noLicenseFlag").equals("true") ? "是" : "否");
|
|
|
|
|
- insOrdersExcel.setRegisterDate(carInfo.getString("registerDate"));
|
|
|
|
|
- insOrdersExcel.setIssueDate(carInfo.getString("issueDate"));
|
|
|
|
|
- insOrdersExcel.setVehicleUse(String.valueOf(OutOfBusinessVehicleUse.getDesc(carInfo.getString("vehicleUse"))));
|
|
|
|
|
- insOrdersExcel.setCarNature(NatureOfVehicleUse.getDesc(carInfo.getString("carNature")));
|
|
|
|
|
|
|
+ insOrdersExcel.setRegisterDate(carInfoVo.getRegisterDate());
|
|
|
|
|
+ insOrdersExcel.setIssueDate(carInfoVo.getIssueDate());
|
|
|
|
|
+ insOrdersExcel.setVehicleUse(String.valueOf(carInfoVo.getVehicleUse()));
|
|
|
|
|
+ insOrdersExcel.setCarNature(NatureOfVehicleUse.getDesc(carInfoVo.getCarnature()));
|
|
|
|
|
|
|
|
// 设置车主信息
|
|
// 设置车主信息
|
|
|
JSONObject ownerInfo = insOrdersExcel.getOwnerInfo();
|
|
JSONObject ownerInfo = insOrdersExcel.getOwnerInfo();
|
|
|
- insOrdersExcel.setOwnerName(ownerInfo.getString("name"));
|
|
|
|
|
- insOrdersExcel.setOwnerAge(ownerInfo.getString("age"));
|
|
|
|
|
- insOrdersExcel.setOwnerMobile(ownerInfo.getString("mobile"));
|
|
|
|
|
- insOrdersExcel.setOwnerIdentifyNumber(ownerInfo.getString("identifyNumber"));
|
|
|
|
|
|
|
+ CustomerInfoVo owner = ownerInfo.toJavaObject(CustomerInfoVo.class);
|
|
|
|
|
+ insOrdersExcel.setOwnerName(owner.getName());
|
|
|
|
|
+ insOrdersExcel.setOwnerAge(owner.getAge());
|
|
|
|
|
+ insOrdersExcel.setOwnerMobile(owner.getMobile());
|
|
|
|
|
+ insOrdersExcel.setOwnerIdentifyNumber(owner.getIdentifyNumber());
|
|
|
|
|
|
|
|
// 设置申请人信息
|
|
// 设置申请人信息
|
|
|
JSONObject applyInfo = insOrdersExcel.getApplyInfo();
|
|
JSONObject applyInfo = insOrdersExcel.getApplyInfo();
|
|
|
- insOrdersExcel.setApplyName(applyInfo.getString("name"));
|
|
|
|
|
- insOrdersExcel.setApplyAge(applyInfo.getString("age"));
|
|
|
|
|
- insOrdersExcel.setApplyMobile(applyInfo.getString("mobile"));
|
|
|
|
|
- insOrdersExcel.setApplyIdentifyNumber(applyInfo.getString("identifyNumber"));
|
|
|
|
|
|
|
+ CustomerInfoVo apply = applyInfo.toJavaObject(CustomerInfoVo.class);
|
|
|
|
|
+ insOrdersExcel.setApplyName(apply.getName());
|
|
|
|
|
+ insOrdersExcel.setApplyAge(apply.getAge());
|
|
|
|
|
+ insOrdersExcel.setApplyMobile(apply.getMobile());
|
|
|
|
|
+ insOrdersExcel.setApplyIdentifyNumber(apply.getIdentifyNumber());
|
|
|
|
|
|
|
|
// 设置被保险人信息
|
|
// 设置被保险人信息
|
|
|
JSONObject insureInfo = insOrdersExcel.getInsureInfo();
|
|
JSONObject insureInfo = insOrdersExcel.getInsureInfo();
|
|
|
- insOrdersExcel.setInsureName(insureInfo.getString("name"));
|
|
|
|
|
- insOrdersExcel.setInsureAge(insureInfo.getString("age"));
|
|
|
|
|
- insOrdersExcel.setInsureMobile(insureInfo.getString("mobile"));
|
|
|
|
|
- insOrdersExcel.setInsureIdentifyNumber(insureInfo.getString("identifyNumber"));
|
|
|
|
|
|
|
+ CustomerInfoVo insure = insureInfo.toJavaObject(CustomerInfoVo.class);
|
|
|
|
|
+ insOrdersExcel.setInsureName(insure.getName());
|
|
|
|
|
+ insOrdersExcel.setInsureAge(insure.getAge());
|
|
|
|
|
+ insOrdersExcel.setInsureMobile(insure.getMobile());
|
|
|
|
|
+ insOrdersExcel.setInsureIdentifyNumber(insure.getIdentifyNumber());
|
|
|
|
|
+
|
|
|
|
|
+ //非车
|
|
|
|
|
+ List<DrivingInsuranceDto> drivingInsuranceDtos = insOrdersExcel.getCrossInsurance().toJavaList(DrivingInsuranceDto.class);
|
|
|
|
|
+ if (!drivingInsuranceDtos.isEmpty()) {
|
|
|
|
|
+ String policyNumber = drivingInsuranceDtos.get(0).getPolicyNumber();
|
|
|
|
|
+ insOrdersExcel.setJyPolicyno(policyNumber);
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
// 设置险种信息
|
|
// 设置险种信息
|
|
|
JSONArray kindInfo = insOrdersExcel.getKindInfo();
|
|
JSONArray kindInfo = insOrdersExcel.getKindInfo();
|
|
|
- if (kindInfo != null) {
|
|
|
|
|
- for (int i = 0; i < kindInfo.size(); i++) {
|
|
|
|
|
- String kindCode = kindInfo.getJSONObject(i).getString("kindCode");
|
|
|
|
|
|
|
+ List<QuoteKindRespVo> quoteKindRespVos = kindInfo.toJavaList(QuoteKindRespVo.class);
|
|
|
|
|
|
|
|
|
|
+ if (quoteKindRespVos != null) {
|
|
|
|
|
+ for (QuoteKindRespVo quoteKindRespVo : quoteKindRespVos) {
|
|
|
|
|
+ String kindCode = quoteKindRespVo.getKindCode();
|
|
|
if (kindCode != null) {
|
|
if (kindCode != null) {
|
|
|
switch (kindCode) {
|
|
switch (kindCode) {
|
|
|
case "B":
|
|
case "B":
|
|
|
- insOrdersExcel.setThird(kindInfo.getJSONObject(i).getString("amount"));
|
|
|
|
|
|
|
+ insOrdersExcel.setThird(String.valueOf(quoteKindRespVo.getAmount()));
|
|
|
break;
|
|
break;
|
|
|
case "D4":
|
|
case "D4":
|
|
|
- insOrdersExcel.setSit(kindInfo.getJSONObject(i).getString("unitAmount"));
|
|
|
|
|
|
|
+ insOrdersExcel.setSit(String.valueOf(quoteKindRespVo.getUnitAmount()));
|
|
|
break;
|
|
break;
|
|
|
case "D3":
|
|
case "D3":
|
|
|
- insOrdersExcel.setDriver(kindInfo.getJSONObject(i).getString("amount"));
|
|
|
|
|
|
|
+ insOrdersExcel.setDriver(String.valueOf(quoteKindRespVo.getAmount()));
|
|
|
|
|
+ break;
|
|
|
|
|
+ default:
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
String s = EasyExcelUtils.downExcel(uploadFilePath, InsOrdersExcel.class, insOrdersExcels);
|
|
String s = EasyExcelUtils.downExcel(uploadFilePath, InsOrdersExcel.class, insOrdersExcels);
|
|
|
return HttpResult.ok("", s);
|
|
return HttpResult.ok("", s);
|
|
|
}
|
|
}
|