| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206 |
- package com.ydtech.modules.xxl.handler;
- import com.alibaba.fastjson.JSONArray;
- import com.alibaba.fastjson.JSONObject;
- import com.xxl.job.core.handler.annotation.XxlJob;
- import com.ydtech.modules.admin.model.po.SysCarInfo;
- import com.ydtech.modules.admin.model.po.SysCarUserInfo;
- import com.ydtech.modules.admin.service.SysCarInfoService;
- import com.ydtech.modules.admin.service.SysCarUserInfoService;
- import com.ydtech.modules.ins.model.vo.KindInfoVo;
- import com.ydtech.modules.ins.model.vo.RiskInfoVo;
- import com.ydtech.modules.order.entity.InsOrders;
- import com.ydtech.modules.order.entity.po.InsOrdersKind;
- import com.ydtech.modules.order.entity.po.InsOrdersRisk;
- import com.ydtech.modules.order.service.InsOrdersKindService;
- import com.ydtech.modules.order.service.InsOrdersRiskService;
- import com.ydtech.modules.order.service.InsOrdersService;
- import com.ydtech.utils.idgen.IdGenerate;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Component;
- import java.util.ArrayList;
- import java.util.List;
- import java.util.stream.Collectors;
- /**
- *@author: tz
- *@description: 订单数据中的车辆信息 同步 sys_car_info表
- *@create: 2024年3月7日15:13:57
- */
- @Component
- public class SyncCarInfoHandler {
- @Autowired
- private InsOrdersService insOrdersService;
- @Autowired
- private SysCarUserInfoService sysCarUserInfoService;
- @Autowired
- private SysCarInfoService sysCarInfoService;
- @Autowired
- private InsOrdersRiskService insOrdersRiskService;
- @Autowired
- private InsOrdersKindService insOrdersKindService;
- //同步用户信息
- @XxlJob("SyncCarInfoHandler")
- public void SyncCarInfoHandler() {
- // List<InsOrders> list = insOrdersService.list();
- // //需要保存的车主用户数据
- // List<SysCarUserInfo> sysCarUserInfos = new ArrayList<>();
- // List<SysCarInfo> sysCarInfos = new ArrayList<>();
- // List<InsOrdersRisk> insOrdersRisks = new ArrayList<>();
- // List<InsOrdersKind> insOrdersKinds = new ArrayList<>();
- // list.forEach(insOrders -> {
- // JSONObject ownerInfo = insOrders.getOwnerinfo();
- // JSONObject applyinfo = insOrders.getApplyinfo();
- // JSONObject insureInfo = insOrders.getInsureinfo();
- // //车主信息是否存在
- // if(sysCarUserInfos.stream().filter(x->x.getIdentifyNumber().equals(ownerInfo.getString("identifyNumber"))).count() > 0){
- // List<SysCarUserInfo> identifyNumber = sysCarUserInfos.stream().filter(x -> x.getIdentifyNumber().equals(ownerInfo.getString("identifyNumber"))).collect(Collectors.toList());
- // String id = identifyNumber.get(0).getId();
- // insOrders.setOwnerId(id);
- // insOrders.setInsureId(id);
- // insOrders.setApplyId(id);
- // }else {
- // SysCarUserInfo sysCarUserInfo1 = ownerInfo.toJavaObject(SysCarUserInfo.class);
- // sysCarUserInfo1.setId(IdGenerate.nextId());
- // sysCarUserInfos.add(sysCarUserInfo1);
- // insOrders.setOwnerId(sysCarUserInfo1.getId());
- // insOrders.setInsureId(sysCarUserInfo1.getId());
- // insOrders.setApplyId(sysCarUserInfo1.getId());
- // }
- // //同车主
- // if(!applyinfo.getBoolean("owner")){
- // SysCarUserInfo sysCarUserInfo = applyinfo.toJavaObject(SysCarUserInfo.class);
- // sysCarUserInfo.setId(IdGenerate.nextId());
- // sysCarUserInfos.add(sysCarUserInfo);
- // insOrders.setApplyId(sysCarUserInfo.getId());
- // }
- // //同被保人 或 车主
- // if(!insureInfo.getBoolean("insuranceHolder") && !insureInfo.getBoolean("owner")){
- // SysCarUserInfo sysCarUserInfo = insureInfo.toJavaObject(SysCarUserInfo.class);
- // sysCarUserInfo.setId(IdGenerate.nextId());
- // sysCarUserInfos.add(sysCarUserInfo);
- // insOrders.setInsureId(sysCarUserInfo.getId());
- // }
- //
- // JSONObject carInfo = insOrders.getCarinfo();
- // //车辆信息
- // if(sysCarInfos.stream().filter(x->x.getLicenseNo().equals(carInfo.getString("licenseNo"))).count() > 0){
- // List<SysCarInfo> collect = sysCarInfos.stream().filter(x -> x.getLicenseNo().equals(carInfo.getString("licenseNo"))).collect(Collectors.toList());
- // String id = collect.get(0).getId();
- // insOrders.setCarInfoId(id);
- // }else{
- // SysCarInfo sysCarInfo = carInfo.toJavaObject(SysCarInfo.class);
- // sysCarInfo.setId(IdGenerate.nextId());
- // sysCarInfos.add(sysCarInfo);
- // insOrders.setCarInfoId(sysCarInfo.getId());
- // }
- //
- // //risk kind
- // JSONArray risk = insOrders.getRisk();
- // JSONArray kind = insOrders.getKing();
- //
- // for(int i=0;i<risk.size();i++){
- // JSONObject jsonObject = risk.getJSONObject(i);
- // RiskInfoVo riskInfoVo = jsonObject.toJavaObject(RiskInfoVo.class);
- // InsOrdersRisk insOrdersRisk = new InsOrdersRisk(riskInfoVo, insOrders.getOrderno());
- // insOrdersRisks.add(insOrdersRisk);
- // }
- //
- // for(int i=0;i<kind.size();i++){
- // JSONObject jsonObject = kind.getJSONObject(i);
- // KindInfoVo javaObject = jsonObject.toJavaObject(KindInfoVo.class);
- // InsOrdersKind insOrdersKind = new InsOrdersKind(javaObject, insOrders.getOrderno());
- // insOrdersKinds.add(insOrdersKind);
- // }
- //
- // });
- //
- // List<SysCarUserInfo> sysCarUserInfoList = sysCarUserInfos.stream()
- // .collect(Collectors.toMap(
- // SysCarUserInfo::getIdentifyNumber, // 使用 licenseNo 作为 key
- // user -> user, // 直接使用用户信息作为 value
- // (existing, replacement) -> existing // 若有重复的 licenseNo,则保留第一个出现的用户信息
- // ))
- // .values()
- // .stream()
- // .collect(Collectors.toList());
- // sysCarUserInfoService.saveBatch(sysCarUserInfoList);
- //
- // List<SysCarInfo> sysCarInfoList = sysCarInfos.stream()
- // .collect(Collectors.toMap(
- // SysCarInfo::getLicenseNo, // 使用 licenseNo 作为 key
- // user -> user, // 直接使用用户信息作为 value
- // (existing, replacement) -> existing // 若有重复的 licenseNo,则保留第一个出现的用户信息
- // ))
- // .values()
- // .stream()
- // .collect(Collectors.toList());
- //
- // //转换transfer_flag
- // sysCarInfoList.forEach(sysCarInfo -> {
- // if(sysCarInfo.getTransferFlag().equals("true")){
- // sysCarInfo.setTransferFlag("1");
- // }else{
- // sysCarInfo.setTransferFlag("0");
- // }
- // });
- // //转换 no_license_flag
- // sysCarInfoList.forEach(sysCarInfo -> {
- // if(sysCarInfo.getNoLicenseFlag().equals("true")){
- // sysCarInfo.setNoLicenseFlag("1");
- // }else{
- // sysCarInfo.setNoLicenseFlag("0");
- // }
- // });
- // //转换 loan_status
- // sysCarInfoList.forEach(sysCarInfo -> {
- // if(sysCarInfo.getLoanStatus().equals("true")){
- // sysCarInfo.setLoanStatus("1");
- // }else{
- // sysCarInfo.setLoanStatus("0");
- // }
- // });
- //
- // //转换used_car
- // sysCarInfoList.forEach(sysCarInfo -> {
- // if(sysCarInfo.getUsedCar().equals("true")){
- // sysCarInfo.setUsedCar("1");
- // }else{
- // sysCarInfo.setUsedCar("0");
- // }
- // });
- //
- // //转换out_of_insurance
- // sysCarInfoList.forEach(sysCarInfo -> {
- // if(sysCarInfo.getOutOfInsurance().equals("true")){
- // sysCarInfo.setOutOfInsurance("1");
- // }else{
- // sysCarInfo.setOutOfInsurance("0");
- // }
- // });
- //
- // sysCarInfoService.saveBatch(sysCarInfoList);
- //
- // for (InsOrdersRisk insOrdersRisk : insOrdersRisks) {
- // insOrdersRisk.setId(IdGenerate.nextId());
- // }
- //
- // for(InsOrdersKind insOrdersKind : insOrdersKinds){
- // insOrdersKind.setId(IdGenerate.nextId());
- // }
- //
- // insOrdersRiskService.saveBatch(insOrdersRisks);
- // insOrdersKindService.saveBatch(insOrdersKinds);
- // insOrdersService.saveOrUpdateBatch(list);
- }
- }
|