Преглед изворни кода

Merge remote-tracking branch 'origin/master'

dongxin пре 9 месеци
родитељ
комит
e5841177ce

+ 1 - 1
commons/src/main/java/com/jzg/commons/entity/dto/AgreementEditParam.java

@@ -42,7 +42,7 @@ public class AgreementEditParam {
 
     @Schema(description = "api类型")
     @NotNull(message = "请选择api类型")
-    private Integer apiType;
+    private String apiType;
 
     @Schema(description = "结算周期")
     @NotNull(message = "请输入结算周期")

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

@@ -24,5 +24,8 @@ public class InsOrdersAccidentalDriving {
     private String riskName;
 
     @Schema(description = "驾意险份数")
-    private String quantity;
+    private int quantity;
+
+    @Schema(description = "驾意险保费")
+    private String amount;
 }

+ 3 - 0
commons/src/main/java/com/jzg/commons/entity/quote/vo/AccidentalDrivingVo.java

@@ -67,4 +67,7 @@ public class AccidentalDrivingVo implements Serializable {
     @Schema(description = "总保费")
     private String sumPremium;
 
+    @Schema(description = "保费")
+    private String premium;
+
 }

+ 11 - 0
commons/src/main/java/com/jzg/commons/entity/quote/vo/aggregated/QuoteEchoVo.java

@@ -95,6 +95,14 @@ public class QuoteEchoVo extends QuoteVo {
         @Schema(description = "归属ID")
         private String organizationId;
 
+        @Schema(description = "业务员租户code")
+        private String systemCode;
+
+        @Schema(description = "业务员租户名称")
+        private String systemName;
+
+        @Schema(description = "业务员租户简称")
+        private String systemShortName;
     }
 
 
@@ -283,6 +291,9 @@ public class QuoteEchoVo extends QuoteVo {
             salesman.setTypeAttr(insOrdersVo.getSalesmanInfo().getTypeAttr());
             salesman.setDeptId(insOrdersVo.getSalesmanInfo().getDeptId());
             salesman.setMobile(insOrdersVo.getSalesmanInfo().getMobile());
+            salesman.setSystemCode(insOrdersVo.getSalesmanInfo().getSystemCode());
+            salesman.setSystemName(insOrdersVo.getSalesmanInfo().getSystemName());
+            salesman.setSystemShortName(insOrdersVo.getSalesmanInfo().getSystemShortName());
         }
         this.setSalesmanInfo(salesman);
         this.setErrorMessage(insOrdersVo.getErrorMessage());

+ 9 - 0
commons/src/main/java/com/jzg/commons/entity/quote/vo/orders/InsOrdersVo.java

@@ -131,6 +131,15 @@ public class InsOrdersVo extends QuoteVo {
 
         @Schema(description = "业务员归属")
         private String deptName;
+
+        @Schema(description = "业务员租户code")
+        private String systemCode;
+
+        @Schema(description = "业务员租户名称")
+        private String systemName;
+
+        @Schema(description = "业务员租户简称")
+        private String systemShortName;
     }
 
 }

+ 6 - 0
commons/src/main/java/com/jzg/commons/entity/vo/SalesmanVo.java

@@ -22,4 +22,10 @@ public class SalesmanVo {
     private String organizationName;
 
     private String organizationId;
+
+    private String systemCode;
+
+    private String systemName;
+
+    private String systemShortName;
 }

+ 3 - 1
tenant/insurance/quotation-huatai/src/main/java/com/jzg/quotation/huatai/api/build/HuaTaiApiQuoteResultsVoBuild.java

@@ -80,7 +80,7 @@ public class HuaTaiApiQuoteResultsVoBuild {
         kindInfoVo.forEach(kind -> {
             HuaTaiQuotedPriceResponse.ContractDto.CoverageDto coverageDto = collect.get(kind.getKindCode());
             if (coverageDto.getKindCode().equals(kind.getKindCode())) {
-                //kind.setAmount(String.valueOf(coverageDto.getAmount()));//设置保额
+                kind.setAmount(String.valueOf(coverageDto.getCoveragePremium()));//设置保额
                 kind.setPremium(String.valueOf(coverageDto.getCoveragePremium()));//设置保费
                 kind.setUnitAmount(String.valueOf(coverageDto.getUnitAmount()));//设置每座保额
                 kind.setQuantity(String.valueOf(coverageDto.getQuantity()));//设置份数
@@ -102,10 +102,12 @@ public class HuaTaiApiQuoteResultsVoBuild {
             quoteResultsVo.getCosts().setCiPremium(String.valueOf(ciContractDto.getContractMain().getTotalPremium()));
             // 设置车船税
             quoteResultsVo.getCosts().setVvTax(String.valueOf(ciContractDto.getTax().getSumTax()));
+            quoteResultsVo.getCosts().setSumPremium(String.valueOf(ciContractDto.getContractMain().getTotalPremium() + ciContractDto.getTax().getSumTax()));
         }
         // 设置商业险保费
         if (ObjectUtil.isNotNull(biContractDto)){
             quoteResultsVo.getCosts().setBiPremium(String.valueOf(biContractDto.getContractMain().getTotalPremium()));
+            quoteResultsVo.getCosts().setSumPremium(String.valueOf(Double.valueOf(quoteResultsVo.getCosts().getSumPremium()) + biContractDto.getContractMain().getTotalPremium()));
         }
         // 设置非车险(驾意险)保费,暂时无数据
 

+ 3 - 0
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/service/InsOrdersAccidentalDrivingService.java

@@ -1,7 +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.InsOrdersAccidentalDriving;
+import com.jzg.commons.entity.quote.vo.QuoteVo;
 
 public interface InsOrdersAccidentalDrivingService extends IService<InsOrdersAccidentalDriving> {
+    void createAccidentalDriving(InsOrders insOrders, QuoteVo quoteVo);
 }

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

@@ -1,11 +1,17 @@
 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.InsOrdersAccidentalDriving;
+import com.jzg.commons.entity.quote.vo.AccidentalDrivingVo;
+import com.jzg.commons.entity.quote.vo.QuoteVo;
 import com.jzg.quotation.summary.mapper.InsOrdersAccidentalDrivingMapper;
 import com.jzg.quotation.summary.service.InsOrdersAccidentalDrivingService;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.List;
+
 /**
  * @author quchen
  * @date 2025/7/3 8:46
@@ -13,4 +19,19 @@ import org.springframework.stereotype.Service;
 
 @Service
 public class InsOrdersAccidentalDrivingServiceImpl extends ServiceImpl<InsOrdersAccidentalDrivingMapper, InsOrdersAccidentalDriving> implements InsOrdersAccidentalDrivingService {
+    @Override
+    public void createAccidentalDriving(InsOrders insOrders, QuoteVo quoteVo) {
+        List<AccidentalDrivingVo> insOrdersAccidentalDrivings = quoteVo.getAccidentalDrivings();
+        List<InsOrdersAccidentalDriving> insOrdersAccidentalDrivingList = new ArrayList<>();
+        for (AccidentalDrivingVo insOrdersAccidental : insOrdersAccidentalDrivings) {
+            InsOrdersAccidentalDriving insOrdersAccidentalDriving = new InsOrdersAccidentalDriving();
+            insOrdersAccidentalDriving.setOrderNo(insOrders.getId());
+            insOrdersAccidentalDriving.setRiskCode(insOrdersAccidental.getRiskCode());
+            insOrdersAccidentalDriving.setRiskName(insOrdersAccidental.getRiskName());
+            insOrdersAccidentalDriving.setQuantity(insOrdersAccidental.getQuantity());
+            insOrdersAccidentalDriving.setAmount(insOrdersAccidental.getPremium());
+            insOrdersAccidentalDrivingList.add(insOrdersAccidentalDriving);
+        }
+        this.saveBatch(insOrdersAccidentalDrivingList);
+    }
 }

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

@@ -78,6 +78,8 @@ public class InsOrdersQrcodeServiceImpl extends ServiceImpl<InsOrdersQrcodeMappe
     @Override
     public void destroyQrCode(String orderNo) {
         InsOrders orders = insOrdersService.getById(orderNo);
+        orders.setOrderStatus(InsOrderStatusEnum.WAIT_AUDIT.getCode());
+        insOrdersService.updateById(orders); // 撤销付款二维码 更新订单状态
         InsOrdersQrcode insOrdersQrcode = getIsExit(orderNo);
         insOrdersQrcode.setQrcodeStatus(0);
         insOrdersQrcode.setDestructionCodeTime(LocalDateTime.now());

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

@@ -100,6 +100,8 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
 
     private final InsOrderAdjustInfoService orderAdjustInfoService;
 
+    private final InsOrdersAccidentalDrivingService insOrdersAccidentalDrivingService;
+
     @Autowired
     @Lazy
     private InsFeeAuditService insFeeAuditService;
@@ -376,6 +378,9 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
             salesman.setTypeAttr(salesmanInfo.getTypeAttr());
             salesman.setDeptId(salesmanInfo.getDeptId());
             salesman.setMobile(salesmanInfo.getMobile());
+            salesman.setSystemCode(salesmanInfo.getSystemCode());
+            salesman.setSystemName(salesmanInfo.getSystemName());
+            salesman.setSystemShortName(salesmanInfo.getSystemShortName());
             insOrdersVo.setSalesmanInfo(salesman);
         }
         // 2. 处理车辆用户信息列表
@@ -419,6 +424,21 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         if (insOrdersVo.getInsOrdersPdfUrl() ==  null) {
             insOrdersVo.setInsOrdersPdfUrl(new InsOrdersPdfUrl());
         }
+        // 驾意险信息
+        List<InsOrdersAccidentalDriving> insOrdersAccidentalDrivings = insOrdersAccidentalDrivingService
+                .list(new LambdaQueryWrapper<InsOrdersAccidentalDriving>().eq(InsOrdersAccidentalDriving::getOrderNo, id));
+        if (insOrdersAccidentalDrivings != null) {
+            List<AccidentalDrivingVo> accidentalDrivingVos = new ArrayList<>();
+            for (InsOrdersAccidentalDriving insOrdersAccidentalDriving : insOrdersAccidentalDrivings) {
+                AccidentalDrivingVo accidentalDrivingVo = new AccidentalDrivingVo();
+                accidentalDrivingVo.setProductCode(insOrdersAccidentalDriving.getRiskCode());
+                accidentalDrivingVo.setProductName(insOrdersAccidentalDriving.getRiskName());
+                accidentalDrivingVo.setQuantity(insOrdersAccidentalDriving.getQuantity());
+                accidentalDrivingVo.setSumAmount(insOrdersAccidentalDriving.getAmount());
+                accidentalDrivingVos.add(accidentalDrivingVo);
+            }
+            insOrdersVo.setAccidentalDrivings(accidentalDrivingVos);
+        }
         // 特约查询
         List<InsOrdersClause> insOrdersClauseList = insOrdersClauseService
                 .list(new LambdaQueryWrapper<InsOrdersClause>().eq(InsOrdersClause::getOrderNo, id));
@@ -884,6 +904,10 @@ public class InsOrdersServiceImpl extends ServiceImpl<InsOrdersMapper, InsOrders
         if (quoteVo.getSpecialInfoVo() != null) {
             insOrdersClauseService.createClause(insOrders,quoteVo);
         }
+        // 保存订单驾意险
+        if (quoteVo.getAccidentalDrivings() != null) {
+            insOrdersAccidentalDrivingService.createAccidentalDriving(insOrders,quoteVo);
+        }
         return insOrders.getId();
     }
 

+ 5 - 1
tenant/organization/src/main/resources/mapper/SysUserJzgInfoMapper.xml

@@ -167,13 +167,17 @@
             su.mobile as mobile ,
             suji.dept_id as deptId,
             so.name as organizationName,
-            so.id as organizationId
+            so.id as organizationId,
+            suji.system_code as systemCode,
+            ss.sys_name as systemName,
+            ss.short_name as systemShortName
         FROM
             sys_user_jzg_info suji
                 LEFT JOIN sys_user su ON suji.user_id = su.id
                 left join sys_dept sd on sd.id = suji.dept_id
                 left join sys_organization_user_link soul on soul.user_id = su.id
                 left join sys_organization so on so.id = soul.organization_id
+                left join sys_system ss on ss.sys_code = suji.system_code
         WHERE
             suji.user_id = #{userId}
     </select>