785834757 2 лет назад
Родитель
Сommit
9f3e11cf1e
19 измененных файлов с 183 добавлено и 399 удалено
  1. 34 33
      src/main/java/com/ydtech/modules/fee/service/impl/FeeRuleSchemeServiceNewImpl.java
  2. 2 1
      src/main/java/com/ydtech/modules/order/entity/InsAreaCompanyCarInfo.java
  3. 7 0
      src/main/java/com/ydtech/modules/order/entity/InsAreaCompanyCarUserInfo.java
  4. 0 43
      src/main/java/com/ydtech/modules/order/entity/InsOrders.java
  5. 10 8
      src/main/java/com/ydtech/modules/order/entity/bo/InsOrdersBo.java
  6. 2 1
      src/main/java/com/ydtech/modules/order/entity/po/InsOrdersCarInfo.java
  7. 0 46
      src/main/java/com/ydtech/modules/order/entity/po/InsOrdersCustomer.java
  8. 7 4
      src/main/java/com/ydtech/modules/order/service/InsAreaCompanyCarInfoService.java
  9. 1 1
      src/main/java/com/ydtech/modules/order/service/InsAreaCompanyCarUserInfoService.java
  10. 2 0
      src/main/java/com/ydtech/modules/order/service/InsOrdersCarInfoService.java
  11. 2 0
      src/main/java/com/ydtech/modules/order/service/InsOrdersCarUserInfoService.java
  12. 0 1
      src/main/java/com/ydtech/modules/order/service/impl/BoHaiOrderApiServiceImpl.java
  13. 11 22
      src/main/java/com/ydtech/modules/order/service/impl/InsAreaCompanyCarInfoServiceImpl.java
  14. 38 38
      src/main/java/com/ydtech/modules/order/service/impl/InsAreaCompanyCarUserInfoServiceImpl.java
  15. 13 9
      src/main/java/com/ydtech/modules/order/service/impl/InsAreaCompanyServiceImpl.java
  16. 5 0
      src/main/java/com/ydtech/modules/order/service/impl/InsOrdersCarInfoServiceImpl.java
  17. 5 0
      src/main/java/com/ydtech/modules/order/service/impl/InsOrdersCarUserInfoServiceImpl.java
  18. 44 188
      src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java
  19. 0 4
      src/main/java/com/ydtech/modules/xxl/handler/SyncCarInfoHandler.java

+ 34 - 33
src/main/java/com/ydtech/modules/fee/service/impl/FeeRuleSchemeServiceNewImpl.java

@@ -5,8 +5,7 @@ import com.ydtech.constants.enums.dict.insurance.EnergyType;
 import com.ydtech.exception.SystemException;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.admin.model.SysUser;
 import com.ydtech.modules.admin.model.SysUser;
 import com.ydtech.modules.order.entity.po.InsOrdersCarUserInfo;
 import com.ydtech.modules.order.entity.po.InsOrdersCarUserInfo;
-import com.ydtech.modules.order.service.InsOrdersCarInfoService;
-import com.ydtech.modules.order.service.InsOrdersCarUserInfoService;
+import com.ydtech.modules.order.service.*;
 import com.ydtech.modules.admin.service.SysUserAccountService;
 import com.ydtech.modules.admin.service.SysUserAccountService;
 import com.ydtech.modules.admin.service.SysUserService;
 import com.ydtech.modules.admin.service.SysUserService;
 import com.ydtech.modules.esm.model.EsmRetail;
 import com.ydtech.modules.esm.model.EsmRetail;
@@ -18,9 +17,6 @@ import com.ydtech.modules.fee.service.FeeRuleSchemeNewService;
 import com.ydtech.modules.order.entity.InsAreaCompany;
 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.vo.*;
 import com.ydtech.modules.order.entity.vo.*;
-import com.ydtech.modules.order.service.InsOrdersKindService;
-import com.ydtech.modules.order.service.InsOrdersRiskService;
-import com.ydtech.modules.order.service.InsOrdersService;
 import com.ydtech.modules.protocols.entity.po.*;
 import com.ydtech.modules.protocols.entity.po.*;
 import com.ydtech.modules.protocols.entity.vo.AgreementProductCosts;
 import com.ydtech.modules.protocols.entity.vo.AgreementProductCosts;
 import com.ydtech.modules.protocols.service.*;
 import com.ydtech.modules.protocols.service.*;
@@ -83,6 +79,12 @@ public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
     @Resource
     @Resource
     private InsOrdersKindService insOrdersKindService;
     private InsOrdersKindService insOrdersKindService;
 
 
+    @Resource
+    private InsAreaCompanyCarInfoService insAreaCompanyCarInfoService;
+
+    @Resource
+    private InsAreaCompanyCarUserInfoService insAreaCompanyCarUserInfoService;
+
 
 
     @Override
     @Override
     public QueryOrderFeeVo queryFeeOrderInfo(String companyId) {
     public QueryOrderFeeVo queryFeeOrderInfo(String companyId) {
@@ -111,21 +113,20 @@ public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
         }
         }
         //按优先级进行排序
         //按优先级进行排序
         Collections.sort(agreementProductCosts, Comparator.comparingInt(AgreementProductCosts::getPriorityLevel).reversed());
         Collections.sort(agreementProductCosts, Comparator.comparingInt(AgreementProductCosts::getPriorityLevel).reversed());
-        insOrders.setCarinfo(insOrdersCarInfoService.getById(insAreaCompany.getCarInfoId()));
-        List<String> uids = new ArrayList<>();
-        uids.add(insOrders.getOwnerId());
-        uids.add(insOrders.getApplyId());
-        uids.add(insOrders.getInsureId());
-        List<InsOrdersCarUserInfo> insOrdersCarUserInfos = insOrdersCarUserInfoService.list(new LambdaQueryWrapper<InsOrdersCarUserInfo>().in(InsOrdersCarUserInfo::getId, uids));
-        insOrdersCarUserInfos.forEach(item->{
-            if(item.getId().equals(insOrders.getOwnerId())){
-                insOrders.setOwnerinfo(item);
-            }
-            if(item.getId().equals(insOrders.getApplyId())){
-                insOrders.setApplyinfo(item);
-            }
-            if(item.getId().equals(insOrders.getInsureId())){
-                insOrders.setInsureinfo(item);
+
+        insOrders.setCarinfo(insOrdersCarInfoService.getCarInfoByOrderNo(insAreaCompany.getId()));
+        List<InsOrdersCarUserInfo> carUserInfoByOrderNo = insOrdersCarUserInfoService.getCarUserInfoByOrderNo(insAreaCompany.getId());
+        carUserInfoByOrderNo.forEach(item->{
+            switch(item.getUserType()){
+                case 1:
+                    insOrders.setOwnerinfo(item);
+                    break;
+                case 2:
+                    insOrders.setApplyinfo(item);
+                    break;
+                case 3:
+                    insOrders.setInsureinfo(item);
+                    break;
             }
             }
         });
         });
         //遍历费用因子
         //遍历费用因子
@@ -145,19 +146,19 @@ public class FeeRuleSchemeServiceNewImpl implements FeeRuleSchemeNewService {
         List<PtlAgreementUndwrtRulesNew> ptlAgreementUndwrtRules = ptlAgreementUndwrtRulesNewService.rulesList(insAreaCompany.getAgreementId());
         List<PtlAgreementUndwrtRulesNew> ptlAgreementUndwrtRules = ptlAgreementUndwrtRulesNewService.rulesList(insAreaCompany.getAgreementId());
         insOrders.setCarinfo(insOrdersCarInfoService.getById(insAreaCompany.getCarInfoId()));
         insOrders.setCarinfo(insOrdersCarInfoService.getById(insAreaCompany.getCarInfoId()));
         List<String> uids = new ArrayList<>();
         List<String> uids = new ArrayList<>();
-        uids.add(insOrders.getOwnerId());
-        uids.add(insOrders.getApplyId());
-        uids.add(insOrders.getInsureId());
-        List<InsOrdersCarUserInfo> insOrdersCarUserInfos = insOrdersCarUserInfoService.list(new LambdaQueryWrapper<InsOrdersCarUserInfo>().in(InsOrdersCarUserInfo::getId, uids));
-        insOrdersCarUserInfos.forEach(item->{
-            if(item.getId().equals(insOrders.getOwnerId())){
-                insOrders.setOwnerinfo(item);
-            }
-            if(item.getId().equals(insOrders.getApplyId())){
-                insOrders.setApplyinfo(item);
-            }
-            if(item.getId().equals(insOrders.getInsureId())){
-                insOrders.setInsureinfo(item);
+        insOrders.setCarinfo(insOrdersCarInfoService.getCarInfoByOrderNo(insAreaCompany.getId()));
+        List<InsOrdersCarUserInfo> carUserInfoByOrderNo = insOrdersCarUserInfoService.getCarUserInfoByOrderNo(insAreaCompany.getId());
+        carUserInfoByOrderNo.forEach(item->{
+            switch(item.getUserType()){
+                case 1:
+                    insOrders.setOwnerinfo(item);
+                    break;
+                case 2:
+                    insOrders.setApplyinfo(item);
+                    break;
+                case 3:
+                    insOrders.setInsureinfo(item);
+                    break;
             }
             }
         });
         });
         verificationRules(ptlAgreementUndwrtRules, insAreaCompany,insOrders);
         verificationRules(ptlAgreementUndwrtRules, insAreaCompany,insOrders);

+ 2 - 1
src/main/java/com/ydtech/modules/order/entity/InsAreaCompanyCarInfo.java

@@ -422,8 +422,9 @@ public class InsAreaCompanyCarInfo implements Serializable {
 
 
     }
     }
 
 
-    public InsAreaCompanyCarInfo(InsOrdersCarInfo insOrdersCarInfo){
+    public InsAreaCompanyCarInfo(String companyId,InsOrdersCarInfo insOrdersCarInfo){
         BeanUtils.copyProperties(insOrdersCarInfo,this);
         BeanUtils.copyProperties(insOrdersCarInfo,this);
+        this.companyId = companyId;
         this.id = IdGenerate.nextId();
         this.id = IdGenerate.nextId();
     }
     }
 }
 }

+ 7 - 0
src/main/java/com/ydtech/modules/order/entity/InsAreaCompanyCarUserInfo.java

@@ -3,10 +3,12 @@ package com.ydtech.modules.order.entity;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.ydtech.modules.order.entity.po.InsOrdersCarInfo;
 import com.ydtech.modules.order.entity.po.InsOrdersCarUserInfo;
 import com.ydtech.modules.order.entity.po.InsOrdersCarUserInfo;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModel;
 import lombok.Data;
 import lombok.Data;
 import lombok.NoArgsConstructor;
 import lombok.NoArgsConstructor;
+import org.springframework.beans.BeanUtils;
 
 
 import java.io.Serializable;
 import java.io.Serializable;
 
 
@@ -84,6 +86,11 @@ public class InsAreaCompanyCarUserInfo implements Serializable {
         this.mobile = "";
         this.mobile = "";
     }
     }
 
 
+    public InsAreaCompanyCarUserInfo(String companyId,InsOrdersCarUserInfo ordersCarUserInfo){
+        BeanUtils.copyProperties(ordersCarUserInfo,this);
+        this.companyId = companyId;
+    }
+
     public boolean compare(InsOrdersCarUserInfo insOrdersCarUserInfo){
     public boolean compare(InsOrdersCarUserInfo insOrdersCarUserInfo){
         if(!this.name.equals(insOrdersCarUserInfo.getName())){
         if(!this.name.equals(insOrdersCarUserInfo.getName())){
             return false;
             return false;

+ 0 - 43
src/main/java/com/ydtech/modules/order/entity/InsOrders.java

@@ -157,37 +157,9 @@ public class InsOrders implements Serializable {
     @TableField(value = "syenddate")
     @TableField(value = "syenddate")
     private String syenddate;
     private String syenddate;
 
 
-    /**
-     * 车主id
-     */
-    @TableField(value = "owner_id")
-//    @TableField(exist = false)
-    private String ownerId;
-
-    /**
-     *投保人 id
-     */
-    @TableField(value = "apply_id")
-//    @TableField(exist = false)
-    private String applyId;
-
-    /**
-     * 被保人id
-     */
-    @TableField(value = "insure_id")
-//    @TableField(exist = false)
-    private String insureId;
-
     @TableField(value = "vehicle_and_vessel_tax", typeHandler = FastjsonTypeHandler.class)
     @TableField(value = "vehicle_and_vessel_tax", typeHandler = FastjsonTypeHandler.class)
     private JSONObject vehicleAndVesselTax;
     private JSONObject vehicleAndVesselTax;
 
 
-    /**
-     * 车辆信息id
-     */
-    @TableField(value = "car_info_id")
-//    @TableField(exist = false)
-    private String carInfoId;
-
     @TableField(exist = false)
     @TableField(exist = false)
     private InsOrdersCarInfo carinfo;
     private InsOrdersCarInfo carinfo;
 
 
@@ -253,19 +225,4 @@ public class InsOrders implements Serializable {
         this.syenddate = insOrdersBo.getSyenddate();
         this.syenddate = insOrdersBo.getSyenddate();
     }
     }
 
 
-
-    public void setCarUserInfo(InsOrders insOrders, List<InsOrdersCarUserInfo> carUserInfoList) {
-        carUserInfoList.forEach(carUserInfo -> {
-            if (carUserInfo.getId().equals(insOrders.getApplyId())) {
-                this.setApplyinfo(carUserInfo);
-            }
-            if(carUserInfo.getId().equals(insOrders.getOwnerId())){
-                this.setOwnerinfo(carUserInfo);
-            }
-            if(carUserInfo.getId().equals(insOrders.getInsureId())){
-                this.setInsureinfo(carUserInfo);
-            }
-        });
-    }
-
 }
 }

+ 10 - 8
src/main/java/com/ydtech/modules/order/entity/bo/InsOrdersBo.java

@@ -291,14 +291,16 @@ public class InsOrdersBo {
     //设置车主信息
     //设置车主信息
     public void setCarUserInfo(InsOrders insOrders, List<InsOrdersCarUserInfo> carUserInfoList) {
     public void setCarUserInfo(InsOrders insOrders, List<InsOrdersCarUserInfo> carUserInfoList) {
         carUserInfoList.forEach(carUserInfo -> {
         carUserInfoList.forEach(carUserInfo -> {
-            if (carUserInfo.getId().equals(insOrders.getApplyId())) {
-                this.setApplyinfo(sysCarUserInfoToCustomerInfoVo(carUserInfo));
-            }
-            if(carUserInfo.getId().equals(insOrders.getOwnerId())){
-                this.setOwnerinfo(sysCarUserInfoToCustomerInfoVo(carUserInfo));
-            }
-            if(carUserInfo.getId().equals(insOrders.getInsureId())){
-                this.setInsureinfo(sysCarUserInfoToCustomerInfoVo(carUserInfo));
+            switch(carUserInfo.getUserType()){
+                case 1:
+                    this.setOwnerinfo(sysCarUserInfoToCustomerInfoVo(carUserInfo));
+                    break;
+                case 2:
+                    this.setApplyinfo(sysCarUserInfoToCustomerInfoVo(carUserInfo));
+                    break;
+                case 3:
+                    this.setInsureinfo(sysCarUserInfoToCustomerInfoVo(carUserInfo));
+                    break;
             }
             }
         });
         });
     }
     }

+ 2 - 1
src/main/java/com/ydtech/modules/order/entity/po/InsOrdersCarInfo.java

@@ -401,9 +401,10 @@ public class InsOrdersCarInfo implements Serializable {
 
 
     }
     }
 
 
-    public InsOrdersCarInfo(CarInfoVo carInfoVo){
+    public InsOrdersCarInfo(CarInfoVo carInfoVo,String orderNo){
         BeanUtils.copyProperties(carInfoVo,this);
         BeanUtils.copyProperties(carInfoVo,this);
         this.setId(IdGenerate.nextId());
         this.setId(IdGenerate.nextId());
+        this.setOrderNo(orderNo);
     }
     }
 
 
     public void copyProperties(CarInfoVo carInfoVo){
     public void copyProperties(CarInfoVo carInfoVo){

+ 0 - 46
src/main/java/com/ydtech/modules/order/entity/po/InsOrdersCustomer.java

@@ -102,52 +102,6 @@ public class InsOrdersCustomer implements Serializable {
         this.identifyValidDate = customerInfoVo.getIdentifyValidDate();
         this.identifyValidDate = customerInfoVo.getIdentifyValidDate();
     }
     }
 
 
-
-    /**
-     * @param ownerInfo  车主信息
-     * @param insureInfo 被保人信息
-     * @param applyInfo  投保人信息
-     * @return 人员信息列表
-     */
-    public static List<InsOrdersCustomer> buildCustomerList(CustomerInfoVo ownerInfo, CustomerInfoVo insureInfo, CustomerInfoVo applyInfo
-            , InsOrders insOrders) {
-        ArrayList<InsOrdersCustomer> insOrdersCustomers = new ArrayList<>();
-
-        // 车主信息
-        String ownerId = "";
-        InsOrdersCustomer owner = new InsOrdersCustomer(ownerInfo, ownerId);
-        insOrdersCustomers.add(owner);
-
-        // 投保人信息
-        String applyId;
-        if (insureInfo.isOwner()) {
-            applyId = owner.getId();
-        } else {
-            applyId = "";
-            InsOrdersCustomer apply = new InsOrdersCustomer(applyInfo, applyId);
-            insOrdersCustomers.add(apply);
-        }
-
-        // 被保人信息
-        String insureId;
-        // 同车主
-        if (insureInfo.isOwner()) {
-            insureId = owner.getId();
-            // 同被保人
-        } else if (insureInfo.isInsuranceHolder()) {
-            insureId = applyId;
-        } else {
-            insureId = "";
-            InsOrdersCustomer insure = new InsOrdersCustomer(insureInfo, insureId);
-            insOrdersCustomers.add(insure);
-        }
-
-        insOrders.setOwnerId(ownerId);
-        insOrders.setInsureId(insureId);
-        insOrders.setApplyId(applyId);
-        return insOrdersCustomers;
-    }
-
     public CustomerInfoVo toCustomerInfoVo() {
     public CustomerInfoVo toCustomerInfoVo() {
         CustomerInfoVo customerInfoVo = new CustomerInfoVo();
         CustomerInfoVo customerInfoVo = new CustomerInfoVo();
         customerInfoVo.setName(this.name);
         customerInfoVo.setName(this.name);

+ 7 - 4
src/main/java/com/ydtech/modules/order/service/InsAreaCompanyCarInfoService.java

@@ -2,6 +2,7 @@ package com.ydtech.modules.order.service;
 
 
 import com.ydtech.modules.order.entity.InsAreaCompanyCarInfo;
 import com.ydtech.modules.order.entity.InsAreaCompanyCarInfo;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.ydtech.modules.order.entity.InsAreaCompanyCarUserInfo;
 import com.ydtech.modules.order.entity.InsOrders;
 import com.ydtech.modules.order.entity.InsOrders;
 
 
 import java.util.List;
 import java.util.List;
@@ -15,13 +16,15 @@ import java.util.List;
 public interface InsAreaCompanyCarInfoService extends IService<InsAreaCompanyCarInfo> {
 public interface InsAreaCompanyCarInfoService extends IService<InsAreaCompanyCarInfo> {
 
 
     /**
     /**
-     * 获取车辆信息id
+     * 根据车架号获取车辆信息
      */
      */
-    String getCarInfoId(String carInfoId);
+    List<InsAreaCompanyCarInfo> getCarInfoByFrameNo(String frameNo);
 
 
     /**
     /**
-     * 根据车架号获取车辆信息
+     * 根据子订单id查找车辆信息
+     * @param companyId
+     * @return
      */
      */
-    List<InsAreaCompanyCarInfo> getCarInfoByFrameNo(String frameNo);
+    InsAreaCompanyCarInfo getCarInfoByCompanyId(String companyId);
 
 
 }
 }

+ 1 - 1
src/main/java/com/ydtech/modules/order/service/InsAreaCompanyCarUserInfoService.java

@@ -16,7 +16,7 @@ import java.util.List;
  */
  */
 public interface InsAreaCompanyCarUserInfoService extends IService<InsAreaCompanyCarUserInfo> {
 public interface InsAreaCompanyCarUserInfoService extends IService<InsAreaCompanyCarUserInfo> {
 
 
-    HashMap<String, String> getCarUserInfo(InsOrders insOrders);
+//    HashMap<String, String> getCarUserInfo(InsOrders insOrders);
     HashMap<String,String> getCarUserInfo(InsAreaCompanyCarInfo insAreaCompanyCarInfo);
     HashMap<String,String> getCarUserInfo(InsAreaCompanyCarInfo insAreaCompanyCarInfo);
 
 
     List<InsAreaCompanyCarUserInfo> getCarUserInfo(String companyId);
     List<InsAreaCompanyCarUserInfo> getCarUserInfo(String companyId);

+ 2 - 0
src/main/java/com/ydtech/modules/order/service/InsOrdersCarInfoService.java

@@ -15,6 +15,8 @@ public interface InsOrdersCarInfoService extends IService<InsOrdersCarInfo> {
 
 
     InsOrdersCarInfo getCarInfoByFrameNo(String frameNo);
     InsOrdersCarInfo getCarInfoByFrameNo(String frameNo);
 
 
+    InsOrdersCarInfo getCarInfoByOrderNo(String orderNo);
+
     /**
     /**
      * 通过id获取车辆信息
      * 通过id获取车辆信息
      * @param id
      * @param id

+ 2 - 0
src/main/java/com/ydtech/modules/order/service/InsOrdersCarUserInfoService.java

@@ -35,6 +35,8 @@ public interface InsOrdersCarUserInfoService extends IService<InsOrdersCarUserIn
      * @return
      * @return
      */
      */
     HashMap<String,InsOrdersCarUserInfo> getOrdersCarUserInfo(String orderNo);
     HashMap<String,InsOrdersCarUserInfo> getOrdersCarUserInfo(String orderNo);
+
+    List<InsOrdersCarUserInfo> getCarUserInfoByOrderNo(String orderNo);
 }
 }
 
 
 
 

+ 0 - 1
src/main/java/com/ydtech/modules/order/service/impl/BoHaiOrderApiServiceImpl.java

@@ -240,7 +240,6 @@ public class BoHaiOrderApiServiceImpl implements BoHaiOrderApiService {
     public HttpResult<CrawlerPolicyPrintVo> getPolicyPrint(String subOrderNo) throws Exception {
     public HttpResult<CrawlerPolicyPrintVo> getPolicyPrint(String subOrderNo) throws Exception {
         InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(subOrderNo);
         InsAreaCompany insAreaCompany = insAreaCompanyService.getByIdIsExist(subOrderNo);
         InsOrders insOrders = insOrdersService.existOrder(insAreaCompany.getOrderno());
         InsOrders insOrders = insOrdersService.existOrder(insAreaCompany.getOrderno());
-        insOrders.setApplyinfo(insOrdersCarUserInfoService.getById(insOrders.getApplyId()));
         InsOrdersCarUserInfo customerInfoVo = insOrders.getApplyinfo();
         InsOrdersCarUserInfo customerInfoVo = insOrders.getApplyinfo();
 
 
         // 账号信息
         // 账号信息

+ 11 - 22
src/main/java/com/ydtech/modules/order/service/impl/InsAreaCompanyCarInfoServiceImpl.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ydtech.exception.SystemException;
 import com.ydtech.exception.SystemException;
 import com.ydtech.modules.order.dao.InsAreaCompanyCarInfoMapper;
 import com.ydtech.modules.order.dao.InsAreaCompanyCarInfoMapper;
 import com.ydtech.modules.order.entity.InsAreaCompanyCarInfo;
 import com.ydtech.modules.order.entity.InsAreaCompanyCarInfo;
+import com.ydtech.modules.order.entity.InsAreaCompanyCarUserInfo;
 import com.ydtech.modules.order.entity.InsOrders;
 import com.ydtech.modules.order.entity.InsOrders;
 import com.ydtech.modules.order.entity.po.InsOrdersCarInfo;
 import com.ydtech.modules.order.entity.po.InsOrdersCarInfo;
 import com.ydtech.modules.order.service.InsAreaCompanyCarInfoService;
 import com.ydtech.modules.order.service.InsAreaCompanyCarInfoService;
@@ -31,31 +32,19 @@ public class InsAreaCompanyCarInfoServiceImpl  extends ServiceImpl<InsAreaCompan
     @Autowired
     @Autowired
     private InsOrdersCarInfoService insOrdersCarInfoService;
     private InsOrdersCarInfoService insOrdersCarInfoService;
 
 
-    @Override
-    public String getCarInfoId(String carInfoId) {
-        InsOrdersCarInfo insOrdersCarInfo = insOrdersCarInfoService.getById(carInfoId);
-        //查找area_company_car_info表是否存在该车辆信息
-        List<InsAreaCompanyCarInfo> carInfoByFrameNo = this.getCarInfoByFrameNo(insOrdersCarInfo.getFrameNo());
-        //进行对比
-        List<InsAreaCompanyCarInfo> collect = carInfoByFrameNo.stream().filter(item -> {
-            return item.compare(insOrdersCarInfo);
-        }).collect(Collectors.toList());
-        //如果存在相同数据 就返回id
-        if(collect.size() > 0)
-        {
-            return collect.get(0).getId();
-        }else{
-            //插入一条新数据 并返回id
-            InsAreaCompanyCarInfo insAreaCompanyCarInfo = new InsAreaCompanyCarInfo(insOrdersCarInfo);
-            if(!this.save(insAreaCompanyCarInfo)){
-                throw new SystemException("保存车辆信息失败");
-            }
-            return insAreaCompanyCarInfo.getId();
-        }
-    }
 
 
     @Override
     @Override
     public List<InsAreaCompanyCarInfo> getCarInfoByFrameNo(String frameNo) {
     public List<InsAreaCompanyCarInfo> getCarInfoByFrameNo(String frameNo) {
         return this.list(new LambdaQueryWrapper<InsAreaCompanyCarInfo>().eq(InsAreaCompanyCarInfo::getFrameNo, frameNo));
         return this.list(new LambdaQueryWrapper<InsAreaCompanyCarInfo>().eq(InsAreaCompanyCarInfo::getFrameNo, frameNo));
     }
     }
+
+    /**
+     * 根据子订单id查找车辆信息
+     * @param companyId
+     * @return
+     */
+    @Override
+    public InsAreaCompanyCarInfo getCarInfoByCompanyId(String companyId) {
+        return this.getOne(new LambdaQueryWrapper<InsAreaCompanyCarInfo>().eq(InsAreaCompanyCarInfo::getCompanyId,companyId));
+    }
 }
 }

+ 38 - 38
src/main/java/com/ydtech/modules/order/service/impl/InsAreaCompanyCarUserInfoServiceImpl.java

@@ -35,44 +35,44 @@ public class InsAreaCompanyCarUserInfoServiceImpl extends ServiceImpl<InsAreaCom
     @Autowired
     @Autowired
     private InsAreaCompanyCarUserInfoService insAreaCompanyCarUserInfoService;
     private InsAreaCompanyCarUserInfoService insAreaCompanyCarUserInfoService;
 
 
-    @Override
-    public HashMap<String, String> getCarUserInfo(InsOrders insOrders) {
-        //投保人 被保人 车主信息
-        List<String> userIds = new ArrayList<>();
-        userIds.add(insOrders.getOwnerId());
-        userIds.add(insOrders.getInsureId());
-        userIds.add(insOrders.getApplyId());
-        List<String> uniqueUserIds = userIds.stream().distinct().collect(Collectors.toList());
-
-        List<InsOrdersCarUserInfo> insOrdersCarUserInfos = insOrdersCarUserInfoService.list(new LambdaQueryWrapper<>(new InsOrdersCarUserInfo()).in(InsOrdersCarUserInfo::getId, uniqueUserIds));
-        HashMap<String,String> result = new HashMap<>();
-        insOrdersCarUserInfos.forEach(item -> {
-            String oldId = item.getId();
-            String newId = IdGenerate.nextId();
-            //车主信息
-            if(oldId.equals(insOrders.getOwnerId())){
-                result.put("ownerId",newId);
-                item.setId(newId);
-            }
-            //投保人信息
-            if(oldId.equals(insOrders.getApplyId())){
-                result.put("applyId",newId);
-                item.setId(newId);
-            }
-            //被保人信息
-            if(oldId.equals(insOrders.getInsureId())){
-                result.put("insureId",newId);
-                item.setId(newId);
-            }
-        });
-
-        insOrdersCarUserInfos.forEach(sysCarUserInfo -> {
-            InsAreaCompanyCarUserInfo insAreaCompanyCarUserInfo = new InsAreaCompanyCarUserInfo();
-            BeanUtils.copyProperties(sysCarUserInfo,insAreaCompanyCarUserInfo);
-            insAreaCompanyCarUserInfoService.save(insAreaCompanyCarUserInfo);
-        });
-        return result;
-    }
+//    @Override
+//    public HashMap<String, String> getCarUserInfo(InsOrders insOrders) {
+//        //投保人 被保人 车主信息
+//        List<String> userIds = new ArrayList<>();
+//        userIds.add(insOrders.getOwnerId());
+//        userIds.add(insOrders.getInsureId());
+//        userIds.add(insOrders.getApplyId());
+//        List<String> uniqueUserIds = userIds.stream().distinct().collect(Collectors.toList());
+//
+//        List<InsOrdersCarUserInfo> insOrdersCarUserInfos = insOrdersCarUserInfoService.list(new LambdaQueryWrapper<>(new InsOrdersCarUserInfo()).in(InsOrdersCarUserInfo::getId, uniqueUserIds));
+//        HashMap<String,String> result = new HashMap<>();
+//        insOrdersCarUserInfos.forEach(item -> {
+//            String oldId = item.getId();
+//            String newId = IdGenerate.nextId();
+//            //车主信息
+//            if(oldId.equals(insOrders.getOwnerId())){
+//                result.put("ownerId",newId);
+//                item.setId(newId);
+//            }
+//            //投保人信息
+//            if(oldId.equals(insOrders.getApplyId())){
+//                result.put("applyId",newId);
+//                item.setId(newId);
+//            }
+//            //被保人信息
+//            if(oldId.equals(insOrders.getInsureId())){
+//                result.put("insureId",newId);
+//                item.setId(newId);
+//            }
+//        });
+//
+//        insOrdersCarUserInfos.forEach(sysCarUserInfo -> {
+//            InsAreaCompanyCarUserInfo insAreaCompanyCarUserInfo = new InsAreaCompanyCarUserInfo();
+//            BeanUtils.copyProperties(sysCarUserInfo,insAreaCompanyCarUserInfo);
+//            insAreaCompanyCarUserInfoService.save(insAreaCompanyCarUserInfo);
+//        });
+//        return result;
+//    }
 
 
     @Override
     @Override
     public HashMap<String, String> getCarUserInfo(InsAreaCompanyCarInfo insAreaCompanyCarInfo) {
     public HashMap<String, String> getCarUserInfo(InsAreaCompanyCarInfo insAreaCompanyCarInfo) {

+ 13 - 9
src/main/java/com/ydtech/modules/order/service/impl/InsAreaCompanyServiceImpl.java

@@ -110,17 +110,21 @@ public class InsAreaCompanyServiceImpl extends ServiceImpl<InsAreaCompanyMapper,
         if(insAreaCompany.getId() == null || "".equals(insAreaCompany.getId())){
         if(insAreaCompany.getId() == null || "".equals(insAreaCompany.getId())){
             insAreaCompany.setId(IdGenerate.nextId());
             insAreaCompany.setId(IdGenerate.nextId());
         }
         }
-        InsOrders insOrder = insOrdersService.getById(insAreaCompany.getOrderno());
-        //车辆信息
-        String carInfoId = insAreaCompanyCarInfoService.getCarInfoId(insOrder.getCarInfoId());
-        insAreaCompany.setCarInfoId(carInfoId);
 
 
+        //车辆信息
+        InsOrdersCarInfo carInfoByOrderNo = insOrdersCarInfoService.getCarInfoByOrderNo(insAreaCompany.getOrderno());
+        InsAreaCompanyCarInfo insOrderCarInfo = new InsAreaCompanyCarInfo(insAreaCompany.getId(),carInfoByOrderNo);
+        insAreaCompanyCarInfoService.save(insOrderCarInfo);
+
+        //车主信息
+        List<InsOrdersCarUserInfo> carUserInfoByOrderNo = insOrdersCarUserInfoService.getCarUserInfoByOrderNo(insAreaCompany.getOrderno());
+        List<InsAreaCompanyCarUserInfo> insAreaCompanyCarUserInfos = new ArrayList<>();
+        carUserInfoByOrderNo.forEach(item -> {
+            InsAreaCompanyCarUserInfo insAreaCompanyCarUserInfo = new InsAreaCompanyCarUserInfo(insAreaCompany.getId(),item);
+            insAreaCompanyCarUserInfos.add(insAreaCompanyCarUserInfo);
+        });
+        insAreaCompanyCarUserInfoService.saveBatch(insAreaCompanyCarUserInfos);
 
 
-        //投保人 被保人 车主信息
-        HashMap<String,String> areaCompanyUserMap = insOrdersCarUserInfoService.saveCarUserInfo(insOrder.getOwnerId(), insOrder.getApplyId(), insOrder.getInsureId());
-        insAreaCompany.setOwnerId(areaCompanyUserMap.get("ownerId"));
-        insAreaCompany.setApplyId(areaCompanyUserMap.get("applyId"));
-        insAreaCompany.setInsureId(areaCompanyUserMap.get("insureId"));
 
 
         //areaCompany添加risk
         //areaCompany添加risk
         insAreaCompanyRiskService.saveRisks(insAreaCompany.getId(),insAreaCompany.getRiskinfo());
         insAreaCompanyRiskService.saveRisks(insAreaCompany.getId(),insAreaCompany.getRiskinfo());

+ 5 - 0
src/main/java/com/ydtech/modules/order/service/impl/InsOrdersCarInfoServiceImpl.java

@@ -44,6 +44,11 @@ public class InsOrdersCarInfoServiceImpl extends ServiceImpl<InsOrdersCarInfoMap
         return null;
         return null;
     }
     }
 
 
+    @Override
+    public InsOrdersCarInfo getCarInfoByOrderNo(String orderNo) {
+         return this.getOne(new LambdaQueryWrapper<InsOrdersCarInfo>().eq(InsOrdersCarInfo::getOrderNo, orderNo));
+    }
+
     @Override
     @Override
     public InsOrdersCarInfo getCarInfoById(String id) {
     public InsOrdersCarInfo getCarInfoById(String id) {
         return baseMapper.selectOne(new LambdaQueryWrapper<InsOrdersCarInfo>().eq(InsOrdersCarInfo::getId, id));
         return baseMapper.selectOne(new LambdaQueryWrapper<InsOrdersCarInfo>().eq(InsOrdersCarInfo::getId, id));

+ 5 - 0
src/main/java/com/ydtech/modules/order/service/impl/InsOrdersCarUserInfoServiceImpl.java

@@ -126,6 +126,11 @@ public class InsOrdersCarUserInfoServiceImpl extends ServiceImpl<InsOrdersCarUse
         });
         });
         return result;
         return result;
     }
     }
+
+    @Override
+    public List<InsOrdersCarUserInfo> getCarUserInfoByOrderNo(String orderNo) {
+        return this.list(new LambdaQueryWrapper<>(new InsOrdersCarUserInfo()).eq(InsOrdersCarUserInfo::getOrderNo, orderNo));
+    }
 }
 }
 
 
 
 

+ 44 - 188
src/main/java/com/ydtech/modules/order/service/impl/InsOrdersServiceImpl.java

@@ -592,27 +592,20 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         orderAndAreaCompany.setCarinfo(JSONObject.parseObject(JSON.toJSONString(carInfo)));
         orderAndAreaCompany.setCarinfo(JSONObject.parseObject(JSON.toJSONString(carInfo)));
         //查找车辆用户信息
         //查找车辆用户信息
 
 
-        List<InsAreaCompanyCarUserInfo> companyCarUserInfos = insAreaCompanyCarUserInfoService.getCarUserInfo(iac.getCompanyId());
-//        companyCarUserInfos.stream().filter(x-> x.getUser)
-
-//        orderAndAreaCompany.setOwnerinfo(JSONObject.parseObject(JSON.toJSONString(ownerInfo)));
-        List<String> userIds = new ArrayList<>();
-        userIds.add(iac.getOwnerId());
-        userIds.add(iac.getApplyId());
-        userIds.add(iac.getInsureId());
-        List<String> uniqueUserIds = userIds.stream().distinct().collect(Collectors.toList());
-
-        List<InsAreaCompanyCarUserInfo> insAreaCompanyCarUserInfos = insAreaCompanyCarUserInfoService.list(new LambdaQueryWrapper<InsAreaCompanyCarUserInfo>().in(InsAreaCompanyCarUserInfo::getId, uniqueUserIds));
-        insAreaCompanyCarUserInfos.forEach(carUserInfo -> {
-            String id = carUserInfo.getId();
-            if(id.equals(iac.getOwnerId())){
-                orderAndAreaCompany.setOwnerinfo(JSONObject.parseObject(JSONObject.toJSONString(carUserInfo)));
-            }
-            if(id.equals(iac.getApplyId())){
-                orderAndAreaCompany.setApplyinfo(JSONObject.parseObject(JSONObject.toJSONString(carUserInfo)));
-            }
-            if(id.equals(iac.getInsureId())){
-                orderAndAreaCompany.setInsureinfo(JSONObject.parseObject(JSONObject.toJSONString(carUserInfo)));
+        List<InsAreaCompanyCarUserInfo> companyCarUserInfos = insAreaCompanyCarUserInfoService.getCarUserInfo(iac.getId());
+        companyCarUserInfos.forEach(carUserInfo -> {
+
+            switch(carUserInfo.getUserType())
+            {
+                case 1:
+                    orderAndAreaCompany.setOwnerinfo(JSONObject.parseObject(JSONObject.toJSONString(carUserInfo)));
+                    break;
+                case 2:
+                    orderAndAreaCompany.setApplyinfo(JSONObject.parseObject(JSONObject.toJSONString(carUserInfo)));
+                    break;
+                case 3:
+                    orderAndAreaCompany.setInsureinfo(JSONObject.parseObject(JSONObject.toJSONString(carUserInfo)));
+                    break;
             }
             }
         });
         });
 
 
@@ -692,7 +685,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         BeanUtils.copyProperties(insOrders, insOrdersEditingVo);
         BeanUtils.copyProperties(insOrders, insOrdersEditingVo);
 
 
         //获取车辆信息
         //获取车辆信息
-        InsOrdersCarInfo insOrdersCarInfo = insOrdersCarInfoService.getCarInfoById(insOrders.getCarInfoId());
+        InsOrdersCarInfo insOrdersCarInfo = insOrdersCarInfoService.getCarInfoByOrderNo(insOrders.getOrderno());
         insOrdersEditingVo.setCarinfo(insOrdersCarInfo);
         insOrdersEditingVo.setCarinfo(insOrdersCarInfo);
 
 
         //获取车主信
         //获取车主信
@@ -783,80 +776,25 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
     public void updateInsOrders(InsOrdersBo insOrdersBo) {
     public void updateInsOrders(InsOrdersBo insOrdersBo) {
         InsOrders insOrders = new InsOrders(insOrdersBo);
         InsOrders insOrders = new InsOrders(insOrdersBo);
         //先查找车辆信息
         //先查找车辆信息
-        CarInfoVo carinfo = insOrdersBo.getCarinfo();
-        InsOrdersCarInfo insOrdersCarInfo = insOrdersCarInfoService.getCarInfoByFrameNo(carinfo.getFrameNo());
-        if(Objects.isNull(insOrdersCarInfo)){
-            InsOrdersCarInfo ordersCarInfo = new InsOrdersCarInfo(carinfo);
-            insOrders.setCarInfoId(ordersCarInfo.getId());
-            insOrdersCarInfoService.save(ordersCarInfo);
-        }else{
-            //判断是否修改数据
-            if(!insOrdersCarInfo.compare(carinfo)){
-                insOrdersCarInfo.copyProperties(carinfo);
-                insOrdersCarInfoService.updateById(insOrdersCarInfo);
-            }
-        }
+        InsOrdersCarInfo carInfoByOrderNo = insOrdersCarInfoService.getCarInfoByOrderNo(insOrders.getOrderno());
+        carInfoByOrderNo.copyProperties(insOrdersBo.getCarinfo());
+        insOrdersCarInfoService.updateById(carInfoByOrderNo);
 
 
         //更新车主信息
         //更新车主信息
-        CustomerInfoVo ownerInfo = insOrdersBo.getOwnerinfo();
-        InsOrdersCarUserInfo ownerUserInfo = insOrdersCarUserInfoService.getCarUserInfoByIdCard(ownerInfo.getIdentifyNumber());
-        //如果车主信息不存在 添加一条
-        if(Objects.isNull(ownerUserInfo)) {
-            InsOrdersCarUserInfo ordersCarUserInfo = new InsOrdersCarUserInfo(ownerInfo);
-            insOrders.setOwnerId(ordersCarUserInfo.getId());
-            insOrdersCarUserInfoService.save(ordersCarUserInfo);
-        }else{
-            //是否更新数据
-            if(!ownerUserInfo.compare(ownerInfo)){
-                ownerUserInfo.copyProperties(ownerInfo);
-                insOrdersCarUserInfoService.updateById(ownerUserInfo);
+        List<InsOrdersCarUserInfo> carUserInfoByOrderNo = insOrdersCarUserInfoService.getCarUserInfoByOrderNo(insOrders.getOrderno());
+        carUserInfoByOrderNo.forEach(item->{
+            switch(item.getUserType()){
+                case 1:
+                    item.copyProperties(insOrdersBo.getOwnerinfo());
+                    break;
+                case 2:
+                    item.copyProperties(insOrdersBo.getApplyinfo());
+                    break;
+                case 3:
+                    item.copyProperties(insOrdersBo.getInsureinfo());
             }
             }
-        }
-
-
-        CustomerInfoVo applyInfo = insOrdersBo.getApplyinfo();
-        //投保人 和 被保人 是否和车主一致
-        if(applyInfo.isOwner()){
-            insOrders.setApplyId(ownerUserInfo.getId());
-        }else{
-            //查找投保人信息
-            InsOrdersCarUserInfo applyUserInfo = insOrdersCarUserInfoService.getCarUserInfoByIdCard(ownerInfo.getIdentifyNumber());
-            if(Objects.isNull(applyUserInfo)) {
-                InsOrdersCarUserInfo ordersCarUserInfo = new InsOrdersCarUserInfo(applyInfo);
-                insOrders.setApplyId(ordersCarUserInfo.getId());
-                insOrdersCarUserInfoService.save(ordersCarUserInfo);
-            }else{
-                //是否更新数据
-                if(applyUserInfo.compare(applyInfo)){
-                    applyUserInfo.copyProperties(applyInfo);
-                    insOrdersCarUserInfoService.updateById(applyUserInfo);
-                }
-            }
-        }
-
-        CustomerInfoVo insureInfo = insOrdersBo.getInsureinfo();
-        //被保人是否同被保人
-        if(insureInfo.isInsuranceHolder()){
-            InsOrdersCarUserInfo applyUserInfo = insOrdersCarUserInfoService.getCarUserInfoByIdCard(applyInfo.getIdentifyNumber());
-            insOrders.setInsureId(applyUserInfo.getId());
-        }else if(insureInfo.isOwner()) {
-            insOrders.setInsureId(ownerUserInfo.getId());
-        }else{
-            //查找被保人信息
-            InsOrdersCarUserInfo insureUserInfo = insOrdersCarUserInfoService.getCarUserInfoByIdCard(insureInfo.getIdentifyNumber());
-            if(Objects.isNull(insureUserInfo)) {
-                InsOrdersCarUserInfo ordersCarUserInfo = new InsOrdersCarUserInfo(insureInfo);
-                insOrders.setApplyId(ordersCarUserInfo.getId());
-                insOrdersCarUserInfoService.save(ordersCarUserInfo);
-            }else{
-                //是否更新数据
-                if(insureUserInfo.compare(insureInfo)){
-                    insureUserInfo.copyProperties(applyInfo);
-                    insOrdersCarUserInfoService.updateById(insureUserInfo);
-                }
-            }
-        }
-
+        });
+        insOrdersCarUserInfoService.updateBatchById(carUserInfoByOrderNo);
 
 
         //更新risk
         //更新risk
         List<RiskInfoVo> riskInfoVos = insOrdersBo.getRisk();
         List<RiskInfoVo> riskInfoVos = insOrdersBo.getRisk();
@@ -898,20 +836,13 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
             return null;
             return null;
         }
         }
         BeanUtils.copyProperties(insOrders,insOrdersBo);
         BeanUtils.copyProperties(insOrders,insOrdersBo);
-        List<String> originalList = new ArrayList<>();
-        originalList.add(insOrders.getOwnerId());
-        originalList.add(insOrders.getApplyId());
-        originalList.add(insOrders.getInsureId());
-        //车主id去重
-        List<String> uniqueList = originalList.stream()
-                .distinct()
-                .collect(Collectors.toList());
-
-        List<InsOrdersCarUserInfo> insOrdersCarUserInfos = insOrdersCarUserInfoService.listByIds(uniqueList);
+
+
         //设置车主信息
         //设置车主信息
-        insOrdersBo.setCarUserInfo(insOrders, insOrdersCarUserInfos);
+        List<InsOrdersCarUserInfo> carUserInfoByOrderNo = insOrdersCarUserInfoService.getCarUserInfoByOrderNo(insOrders.getOrderno());
+        insOrdersBo.setCarUserInfo(insOrders, carUserInfoByOrderNo);
         //获取车辆信息
         //获取车辆信息
-        InsOrdersCarInfo insOrdersCarInfo = insOrdersCarInfoService.getById(insOrders.getCarInfoId());
+        InsOrdersCarInfo insOrdersCarInfo = insOrdersCarInfoService.getCarInfoByOrderNo(insOrders.getOrderno());
         insOrdersBo.setCarAllInfo(insOrdersCarInfo);
         insOrdersBo.setCarAllInfo(insOrdersCarInfo);
         //获取险种信息
         //获取险种信息
         insOrdersBo.setRiskList(insOrdersRiskService.queryByOrderNo(orderNo));
         insOrdersBo.setRiskList(insOrdersRiskService.queryByOrderNo(orderNo));
@@ -934,91 +865,16 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         InsOrders insOrders = new InsOrders(insOrdersBo);
         InsOrders insOrders = new InsOrders(insOrdersBo);
         final String orderNo = insOrders.getOrderno();
         final String orderNo = insOrders.getOrderno();
         // 1 车辆信息
         // 1 车辆信息
-        // 是否存在车辆信息
-
-        InsOrdersCarInfo insOrdersCarInfo = insOrdersCarInfoService.isExist(insOrdersBo.getCarinfo().getLicenseNo());
-
-        if(ObjectUtils.isEmpty(insOrdersCarInfo)){
-            insOrdersCarInfo = new InsOrdersCarInfo();
-            CarInfoVo carinfo = insOrdersBo.getCarinfo();
-            BeanUtils.copyProperties(carinfo, insOrdersCarInfo);
-            insOrdersCarInfo.setId(IdGenerate.nextId());
-            insOrdersCarInfoService.save(insOrdersCarInfo);
-            insOrders.setCarInfoId(insOrdersCarInfo.getId());
-        }else{
-            //判断数据是否需要更新
-            if(!insOrdersCarInfo.compare(insOrdersBo.getCarinfo())){
-                insOrdersCarInfo.copyProperties(insOrdersBo.getCarinfo());
-                insOrdersCarInfoService.updateById(insOrdersCarInfo);
-            }
-            insOrders.setCarInfoId(insOrdersCarInfo.getId());
-        }
+        InsOrdersCarInfo insOrdersCarInfo = new InsOrdersCarInfo(insOrdersBo.getCarinfo(),insOrdersBo.getOrderno());
+        insOrdersCarInfoService.save(insOrdersCarInfo);
 
 
-        // 2 人员信息
 
 
-        // 车主信息
-        CustomerInfoVo ownerInfo = insOrdersBo.getOwnerinfo();
-        //检查是否存在车主信息
-        if(insOrdersCarUserInfoService.isExist(ownerInfo.getIdentifyNumber())){
-            InsOrdersCarUserInfo carUserInfoByIdCard = insOrdersCarUserInfoService.getCarUserInfoByIdCard(ownerInfo.getIdentifyNumber());
-            //判断是否需要更新
-            if(!carUserInfoByIdCard.compare(ownerInfo)){
-                carUserInfoByIdCard.copyProperties(ownerInfo);
-                insOrdersCarUserInfoService.updateById(carUserInfoByIdCard);
-            }
-            insOrders.setOwnerId(carUserInfoByIdCard.getId());
-        }else{
-            //保存车主信息
-            InsOrdersCarUserInfo insOrdersCarUserInfo = new InsOrdersCarUserInfo();
-            BeanUtils.copyProperties(ownerInfo, insOrdersCarUserInfo);
-            insOrdersCarUserInfo.setId(IdGenerate.nextId());
-            insOrdersCarUserInfoService.save(insOrdersCarUserInfo);
-            insOrders.setOwnerId(insOrdersCarUserInfo.getId());
-        }
-        // 投保人信息
-        CustomerInfoVo applyInfo = insOrdersBo.getApplyinfo();
-        if(!applyInfo.isOwner()){
-            //检查是否存在投保人信息
-            if(insOrdersCarUserInfoService.isExist(applyInfo.getIdentifyNumber())){
-                InsOrdersCarUserInfo carUserInfoByIdCard = insOrdersCarUserInfoService.getCarUserInfoByIdCard(applyInfo.getIdentifyNumber());
-                if(!carUserInfoByIdCard.compare(applyInfo)){
-                    carUserInfoByIdCard.copyProperties(applyInfo);
-                    insOrdersCarUserInfoService.updateById(carUserInfoByIdCard);
-                }
-                insOrders.setApplyId(carUserInfoByIdCard.getId());
-            }else{
-                //保存投保人信息
-                InsOrdersCarUserInfo insOrdersCarUserInfo = new InsOrdersCarUserInfo();
-                BeanUtils.copyProperties(applyInfo, insOrdersCarUserInfo);
-                insOrdersCarUserInfo.setId(IdGenerate.nextId());
-                insOrdersCarUserInfoService.save(insOrdersCarUserInfo);
-                insOrders.setApplyId(insOrdersCarUserInfo.getId());
-            }
-        }else{
-            insOrders.setApplyId(insOrders.getOwnerId());
-        }
-        // 被保人信息
-        CustomerInfoVo insureInfo = insOrdersBo.getInsureinfo();
-        if(!insureInfo.isOwner() && !insureInfo.isInsuranceHolder()){
-            //检查是否存在被保人信息
-            if(insOrdersCarUserInfoService.isExist(insureInfo.getIdentifyNumber())){
-                InsOrdersCarUserInfo carUserInfoByIdCard = insOrdersCarUserInfoService.getCarUserInfoByIdCard(insureInfo.getIdentifyNumber());
-                if(carUserInfoByIdCard.compare(insureInfo)){
-                    carUserInfoByIdCard.copyProperties(insureInfo);
-                    insOrdersCarUserInfoService.updateById(carUserInfoByIdCard);
-                }
-                insOrders.setInsureId(carUserInfoByIdCard.getId());
-            }else{
-                //保存被保人信息
-                InsOrdersCarUserInfo insOrdersCarUserInfo = new InsOrdersCarUserInfo();
-                BeanUtils.copyProperties(insureInfo, insOrdersCarUserInfo);
-                insOrdersCarUserInfo.setId(IdGenerate.nextId());
-                insOrdersCarUserInfoService.save(insOrdersCarUserInfo);
-                insOrders.setInsureId(insOrdersCarUserInfo.getId());
-            }
-        }else{
-            insOrders.setInsureId(insOrders.getOwnerId());
-        }
+        // 2 人员信息
+        List<InsOrdersCarUserInfo> insOrdersCarUserInfos = new ArrayList<>();
+        insOrdersCarUserInfos.add(new InsOrdersCarUserInfo(insOrdersBo.getOwnerinfo()));
+        insOrdersCarUserInfos.add(new InsOrdersCarUserInfo(insOrdersBo.getApplyinfo()));
+        insOrdersCarUserInfos.add(new InsOrdersCarUserInfo(insOrdersBo.getInsureinfo()));
+        insOrdersCarUserInfoService.saveBatch(insOrdersCarUserInfos);
 
 
         // 3 车船税信息
         // 3 车船税信息
         VehicleAndVesselTax vehicleAndVesselTax = insOrdersBo.getVehicleAndVesselTax();
         VehicleAndVesselTax vehicleAndVesselTax = insOrdersBo.getVehicleAndVesselTax();

+ 0 - 4
src/main/java/com/ydtech/modules/xxl/handler/SyncCarInfoHandler.java

@@ -120,7 +120,6 @@ public class SyncCarInfoHandler {
                     insOrdersCarInfo.setOrderNo(insOrders.getOrderno());
                     insOrdersCarInfo.setOrderNo(insOrders.getOrderno());
                     insOrdersCarInfo.setRegisterDate(validateAndFormatDate(insOrdersCarInfo.getRegisterDate()));
                     insOrdersCarInfo.setRegisterDate(validateAndFormatDate(insOrdersCarInfo.getRegisterDate()));
                     insOrdersCarInfo.setIssueDate(validateAndFormatDate(insOrdersCarInfo.getIssueDate()));
                     insOrdersCarInfo.setIssueDate(validateAndFormatDate(insOrdersCarInfo.getIssueDate()));
-                    insOrders.setCarInfoId(insOrdersCarInfo.getId());
                     insOrdersCarInfos.add(insOrdersCarInfo);
                     insOrdersCarInfos.add(insOrdersCarInfo);
 //                    insOrdersCarInfoService.save(insOrdersCarInfo);
 //                    insOrdersCarInfoService.save(insOrdersCarInfo);
 
 
@@ -133,7 +132,6 @@ public class SyncCarInfoHandler {
                     owner.setAge(String.valueOf(IdcardUtil.getAgeByIdCard(owner.getIdentifyNumber())));
                     owner.setAge(String.valueOf(IdcardUtil.getAgeByIdCard(owner.getIdentifyNumber())));
                     owner.setOrderNo(insOrders.getOrderno());
                     owner.setOrderNo(insOrders.getOrderno());
                     owner.setUserType(1);
                     owner.setUserType(1);
-                    insOrders.setOwnerId(owner.getId());
                     insOrdersCarUserInfos.add(owner);
                     insOrdersCarUserInfos.add(owner);
 //                    insOrdersCarUserInfoService.save(owner);
 //                    insOrdersCarUserInfoService.save(owner);
 
 
@@ -146,7 +144,6 @@ public class SyncCarInfoHandler {
                     apply.setAge(String.valueOf(IdcardUtil.getAgeByIdCard(apply.getIdentifyNumber())));
                     apply.setAge(String.valueOf(IdcardUtil.getAgeByIdCard(apply.getIdentifyNumber())));
                     apply.setOrderNo(insOrders.getOrderno());
                     apply.setOrderNo(insOrders.getOrderno());
                     apply.setUserType(2);
                     apply.setUserType(2);
-                    insOrders.setApplyId(apply.getId());
                     insOrdersCarUserInfos.add(apply);
                     insOrdersCarUserInfos.add(apply);
 //                    insOrdersCarUserInfoService.save(apply);
 //                    insOrdersCarUserInfoService.save(apply);
 
 
@@ -159,7 +156,6 @@ public class SyncCarInfoHandler {
                     insure.setAge(String.valueOf(IdcardUtil.getAgeByIdCard(insure.getIdentifyNumber())));
                     insure.setAge(String.valueOf(IdcardUtil.getAgeByIdCard(insure.getIdentifyNumber())));
                     insure.setOrderNo(insOrders.getOrderno());
                     insure.setOrderNo(insOrders.getOrderno());
                     insure.setUserType(3);
                     insure.setUserType(3);
-                    insOrders.setInsureId(insure.getId());
                     insOrdersCarUserInfos.add(insure);
                     insOrdersCarUserInfos.add(insure);
 //                    insOrdersCarUserInfoService.save(insure);
 //                    insOrdersCarUserInfoService.save(insure);