Przeglądaj źródła

订单生成补充

Qchen 1 rok temu
rodzic
commit
2fe4f0e2ca
19 zmienionych plików z 151 dodań i 12 usunięć
  1. 1 1
      commons/src/main/java/com/jzg/commons/entity/orders/po/InsOrdersKind.java
  2. 1 1
      commons/src/main/java/com/jzg/commons/entity/orders/po/InsOrdersOther.java
  3. 6 1
      commons/src/main/java/com/jzg/commons/entity/orders/po/InsOrdersRisk.java
  4. 1 1
      commons/src/main/java/com/jzg/commons/entity/orders/po/InsOrdersTax.java
  5. 9 0
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/mapper/InsOrdersPolicyMapper.java
  6. 1 1
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersCostsService.java
  7. 5 0
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersKindService.java
  8. 2 0
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersOtherService.java
  9. 10 0
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersPolicyService.java
  10. 4 0
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersRiskService.java
  11. 2 0
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersTaxService.java
  12. 1 2
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersCarInfoServiceImpl.java
  13. 1 2
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersCostsServiceImpl.java
  14. 27 0
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersKindServiceImpl.java
  15. 7 0
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersOtherServiceImpl.java
  16. 24 0
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersPolicyServiceImpl.java
  17. 32 0
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersRiskServiceImpl.java
  18. 11 3
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersServiceImpl.java
  19. 6 0
      tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersTaxServiceImpl.java

+ 1 - 1
commons/src/main/java/com/jzg/commons/entity/orders/po/InsOrdersKind.java

@@ -11,7 +11,7 @@ import java.math.BigDecimal;
 public class InsOrdersKind {
 
     @Schema(description = "订单号")
-    private Long orderNo;
+    private String orderNo;
 
     @Schema(description = "金额或数量")
     private BigDecimal amount;

+ 1 - 1
commons/src/main/java/com/jzg/commons/entity/orders/po/InsOrdersOther.java

@@ -11,7 +11,7 @@ import java.math.BigDecimal;
 public class InsOrdersOther {
 
     @Schema(description = "订单号")
-    private Long orderNo;
+    private String orderNo;
 
     @Schema(description = "总评分")
     private String scope;

+ 6 - 1
commons/src/main/java/com/jzg/commons/entity/orders/po/InsOrdersRisk.java

@@ -1,6 +1,8 @@
 package com.jzg.commons.entity.orders.po;
 
 
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
@@ -11,9 +13,12 @@ import java.time.LocalDateTime;
 @Data
 @Schema(description = "保险订单险种信息")
 public class InsOrdersRisk {
+    @Schema(description = "主键")
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
+    private String id;
 
     @Schema(description = "订单号")
-    private Long orderNo;
+    private String orderNo;
 
     @Schema(description = "险种名称")
     private String riskName;

+ 1 - 1
commons/src/main/java/com/jzg/commons/entity/orders/po/InsOrdersTax.java

@@ -12,7 +12,7 @@ import java.time.LocalDateTime;
 public class InsOrdersTax {
 
     @Schema(description = "订单号")
-    private Long orderNo;
+    private String orderNo;
 
     @Schema(description = "减免税凭证号(减免税时必传)")
     private String extendChar2;

+ 9 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/mapper/InsOrdersPolicyMapper.java

@@ -0,0 +1,9 @@
+package com.jzg.quotation.summary.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jzg.commons.entity.orders.po.InsOrdersPolicy;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface InsOrdersPolicyMapper extends BaseMapper<InsOrdersPolicy> {
+}

+ 1 - 1
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersCostsService.java

@@ -5,5 +5,5 @@ import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrdersCosts;
 
 public interface InsOrdersCostsService extends IService<InsOrdersCosts> {
-    InsOrdersCosts createCosts(InsOrders insOrders);
+    void createCosts(InsOrders insOrders);
 }

+ 5 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersKindService.java

@@ -1,7 +1,12 @@
 package com.jzg.quotation.summary.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrdersKind;
+import com.jzg.commons.entity.quote.vo.KindInfoVo;
+
+import java.util.List;
 
 public interface InsOrdersKindService extends IService<InsOrdersKind> {
+    void createKind(InsOrders insOrders, List<KindInfoVo> kindInfoVo, String companyCode);
 }

+ 2 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersOtherService.java

@@ -1,7 +1,9 @@
 package com.jzg.quotation.summary.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrdersOther;
 
 public interface InsOrdersOtherService extends IService<InsOrdersOther> {
+    void createOther(InsOrders insOrders);
 }

+ 10 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersPolicyService.java

@@ -0,0 +1,10 @@
+package com.jzg.quotation.summary.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jzg.commons.entity.orders.po.InsOrders;
+import com.jzg.commons.entity.orders.po.InsOrdersPolicy;
+
+public interface InsOrdersPolicyService extends IService<InsOrdersPolicy> {
+    void createPolicy(InsOrders insOrders);
+
+}

+ 4 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersRiskService.java

@@ -1,7 +1,11 @@
 package com.jzg.quotation.summary.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrdersRisk;
+import com.jzg.commons.entity.quote.vo.RiskInfoVo;
 
 public interface InsOrdersRiskService extends IService<InsOrdersRisk> {
+    void createRisk(InsOrders insOrders, RiskInfoVo ciRiskInfoVo, RiskInfoVo biRiskInfoVo);
+
 }

+ 2 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersTaxService.java

@@ -1,7 +1,9 @@
 package com.jzg.quotation.summary.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrdersTax;
 
 public interface InsOrdersTaxService extends IService<InsOrdersTax> {
+    void createTax(InsOrders insOrders);
 }

+ 1 - 2
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersCarInfoServiceImpl.java

@@ -62,7 +62,6 @@ public class InsOrdersCarInfoServiceImpl extends ServiceImpl<InsOrdersCarInfoMap
 
     @Override
     public InsOrdersCarInfo getByOrderId(String orderId) {
-        return baseMapper.selectOne(new LambdaQueryWrapper<InsOrdersCarInfo>()
-                .eq(InsOrdersCarInfo::getOrderNo, orderId));
+        return baseMapper.selectById(orderId);
     }
 }

+ 1 - 2
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersCostsServiceImpl.java

@@ -15,10 +15,9 @@ import org.springframework.stereotype.Service;
 @Service
 public class InsOrdersCostsServiceImpl extends ServiceImpl<InsOrdersCostsMapper, InsOrdersCosts> implements InsOrdersCostsService {
     @Override
-    public InsOrdersCosts createCosts(InsOrders insOrders) {
+    public void createCosts(InsOrders insOrders) {
         InsOrdersCosts insOrdersCosts = new InsOrdersCosts();
         insOrdersCosts.setOrderNo(insOrders.getId());
         this.save(insOrdersCosts);
-        return insOrdersCosts;
     }
 }

+ 27 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersKindServiceImpl.java

@@ -1,11 +1,38 @@
 package com.jzg.quotation.summary.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrdersKind;
+import com.jzg.commons.entity.quote.vo.KindInfoVo;
+import com.jzg.commons.exception.SystemException;
+import com.jzg.quotation.commons.constant.enums.base.QuoteRuleCategory;
+import com.jzg.quotation.commons.entity.vo.base.OrderBase;
+import com.jzg.quotation.summary.converter.QuoteInfoConverter;
+import com.jzg.quotation.summary.entity.po.QuoteRuleMapping;
 import com.jzg.quotation.summary.mapper.InsOrdersKindMapper;
 import com.jzg.quotation.summary.service.InsOrdersKindService;
+import com.jzg.quotation.summary.service.QuoteRuleMappingService;
+import com.sun.tools.javac.Main;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.ApplicationContext;
+import org.springframework.context.annotation.AnnotationConfigApplicationContext;
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.Configuration;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
+
+import javax.security.auth.login.AppConfigurationEntry;
+import java.util.*;
+import java.util.function.Function;
+import java.util.stream.Collectors;
 
 @Service
 public class InsOrdersKindServiceImpl extends ServiceImpl<InsOrdersKindMapper, InsOrdersKind> implements InsOrdersKindService {
+    @Override
+    public void createKind(InsOrders insOrders, List<KindInfoVo> kindInfoVo, String companyCode) {
+    }
+
+
 }

+ 7 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersOtherServiceImpl.java

@@ -1,6 +1,7 @@
 package com.jzg.quotation.summary.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrdersOther;
 import com.jzg.quotation.summary.mapper.InsOrdersOtherMapper;
 import com.jzg.quotation.summary.service.InsOrdersOtherService;
@@ -8,4 +9,10 @@ import org.springframework.stereotype.Service;
 
 @Service
 public class InsOrdersOtherServiceImpl extends ServiceImpl<InsOrdersOtherMapper, InsOrdersOther> implements InsOrdersOtherService {
+    @Override
+    public void createOther(InsOrders insOrders) {
+        InsOrdersOther insOrdersOther = new InsOrdersOther();
+        insOrdersOther.setOrderNo(insOrders.getId());
+        this.save(insOrdersOther);
+    }
 }

+ 24 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersPolicyServiceImpl.java

@@ -0,0 +1,24 @@
+package com.jzg.quotation.summary.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jzg.commons.entity.orders.po.InsOrders;
+import com.jzg.commons.entity.orders.po.InsOrdersPolicy;
+import com.jzg.quotation.summary.mapper.InsOrdersPolicyMapper;
+import com.jzg.quotation.summary.service.InsOrdersPolicyService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @author quchen
+ * @date 2025/3/29 10:12
+ */
+
+@Service
+public class InsOrdersPolicyServiceImpl extends ServiceImpl<InsOrdersPolicyMapper, InsOrdersPolicy> implements InsOrdersPolicyService {
+
+    @Override
+    public void createPolicy(InsOrders insOrders) {
+        InsOrdersPolicy insOrdersPolicy = new InsOrdersPolicy();
+        insOrdersPolicy.setOrderNo(insOrders.getId());
+        this.save(insOrdersPolicy);
+    }
+}

+ 32 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersRiskServiceImpl.java

@@ -1,11 +1,43 @@
 package com.jzg.quotation.summary.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrdersRisk;
+import com.jzg.commons.entity.quote.vo.RiskInfoVo;
 import com.jzg.quotation.summary.mapper.InsOrdersRiskMapper;
 import com.jzg.quotation.summary.service.InsOrdersRiskService;
 import org.springframework.stereotype.Service;
 
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Objects;
+
 @Service
 public class InsOrdersRiskServiceImpl extends ServiceImpl<InsOrdersRiskMapper, InsOrdersRisk> implements InsOrdersRiskService {
+    @Override
+    public void createRisk(InsOrders insOrders, RiskInfoVo ciRiskInfoVo, RiskInfoVo biRiskInfoVo) {
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+        List<InsOrdersRisk> insOrdersRiskList = new ArrayList<>();
+        if (Objects.nonNull(ciRiskInfoVo)) {
+            InsOrdersRisk ciInsOrdersRisk = new InsOrdersRisk();
+            ciInsOrdersRisk.setOrderNo(insOrders.getId());
+            ciInsOrdersRisk.setRiskName("交强险");
+            ciInsOrdersRisk.setRiskCode(ciRiskInfoVo.getRiskCode());
+            ciInsOrdersRisk.setStartDate(LocalDateTime.parse(ciRiskInfoVo.getStartDate(), formatter));
+            ciInsOrdersRisk.setEndDate(LocalDateTime.parse(ciRiskInfoVo.getEndDate(), formatter));
+            insOrdersRiskList.add(ciInsOrdersRisk);
+        }
+        if (Objects.nonNull(biRiskInfoVo)) {
+            InsOrdersRisk biInsOrdersRisk = new InsOrdersRisk();
+            biInsOrdersRisk.setOrderNo(insOrders.getId());
+            biInsOrdersRisk.setRiskName("商业险");
+            biInsOrdersRisk.setRiskCode(biRiskInfoVo.getRiskCode());
+            biInsOrdersRisk.setStartDate(LocalDateTime.parse(biRiskInfoVo.getStartDate(), formatter));
+            biInsOrdersRisk.setEndDate(LocalDateTime.parse(biRiskInfoVo.getEndDate(), formatter));
+            insOrdersRiskList.add(biInsOrdersRisk);
+        }
+        this.saveBatch(insOrdersRiskList);
+    }
 }

+ 11 - 3
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersServiceImpl.java

@@ -61,6 +61,9 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
     @Autowired
     private InsOrdersCostsService insOrdersCostsService;
 
+    @Autowired
+    private InsOrdersPolicyService insOrdersPolicyService;
+
     /**
      * 保存订单信息
      *
@@ -80,7 +83,7 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         try {
             // 获取订单对象并设置引用编号
             InsOrders insOrders = ordersAdd.getInsOrders();
-            Long quoteNo = SnowFlakeUtil.getSnowFlakeId();
+            String quoteNo = String.valueOf(SnowFlakeUtil.getSnowFlakeId());
             // 如果生成的引用编号为空,则返回错误信息
             if (quoteNo == null) {
                 return HttpResult.error("生成引用编号失败");
@@ -222,15 +225,20 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         // 保存订单费用信息 ins_orders_costs
         insOrdersCostsService.createCosts(insOrders);
 
-        // 保存订单险种信息 ins_orders_kind
-
         // 保存订单其他信息 ins_orders_other
+        insOrdersOtherService.createOther(insOrders);
 
         // 保存订单投保单号 保单号信息 ins_orders_policy
+        insOrdersPolicyService.createPolicy(insOrders);
 
         // 保存订单险种信息 ins_orders_risk
+        insOrdersRiskService.createRisk(insOrders, quoteVo.getCiRiskInfoVo(),quoteVo.getBiRiskInfoVo());
+
+        // 保存订单险种信息 ins_orders_kind
+        insOrdersKindService.createKind(insOrders, quoteVo.getKindInfoVo(),quoteVo.getOrder().getInsuranceCompanyCode());
 
         // 保存订单车船税税信息 ins_orders_tax
+        insOrdersTaxService.createTax(insOrders);
 
     }
 

+ 6 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/impl/InsOrdersTaxServiceImpl.java

@@ -1,6 +1,7 @@
 package com.jzg.quotation.summary.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jzg.commons.entity.orders.po.InsOrders;
 import com.jzg.commons.entity.orders.po.InsOrdersTax;
 import com.jzg.quotation.summary.mapper.InsOrdersTaxMapper;
 import com.jzg.quotation.summary.service.InsOrdersTaxService;
@@ -8,4 +9,9 @@ import org.springframework.stereotype.Service;
 
 @Service
 public class InsOrdersTaxServiceImpl extends ServiceImpl<InsOrdersTaxMapper, InsOrdersTax> implements InsOrdersTaxService {
+    public void createTax(InsOrders insOrders) {
+        InsOrdersTax insOrdersTax = new InsOrdersTax();
+        insOrdersTax.setOrderNo(insOrders.getId());
+        this.save(insOrdersTax);
+    }
 }