Sfoglia il codice sorgente

Merge remote-tracking branch 'origin/master'

wanghao 3 mesi fa
parent
commit
55b3d340cd

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

@@ -1,6 +1,7 @@
 package com.jzg.commons.entity.quote.vo.aggregated;
 
 
+import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.fasterxml.jackson.annotation.JsonFormat;
@@ -65,6 +66,26 @@ public class QuoteEchoVo extends QuoteVo {
         private String agreementName;
         private String agreementType;
         private String createBy;
+
+        /**
+         * 这个方法不能删除, 在前端有用agreementName字段
+         */
+        public String getAgreementTypeName(){
+            if(StrUtil.isEmpty(this.agreementType)){
+                return StrUtil.EMPTY;
+            }
+            // 1、平台协议-平台结算 2、私有协议-自行结算 3、网销协议-自行结算
+            if("1".equals(this.agreementType)){
+                return "平台协议";
+            }else if("2".equals(this.agreementType)){
+                return "私有协议";
+            }else if("3".equals(this.agreementType)) {
+                return  "网销协议";
+            }else{
+                return this.agreementType;
+            }
+        }
+
         /**
          * 保司id
          */

+ 6 - 3
tenant/insurance/quotation-summary/src/main/java/com/jzg/quotation/summary/aop/FactorMatch.java

@@ -141,6 +141,7 @@ public class FactorMatch {
     public static boolean judgementsUnderwrite(List<PtlAgreementUndwrtRulesAttrLink> ptlAgreementCostRuleList, List<RuleAttrMappingVo> ruleAttrMappingVoList,
                                      List<PtlAgreementUndwrtRulesAttr> undwrtRulesAttrList, StringBuilder logs, List<PtlAgreementUndwrtRulesDictLabal> undwrtRulesDictList) {
         boolean useFlag = true;
+        boolean groupUseFlag = false;
         for (PtlAgreementUndwrtRulesAttrLink ptlAgreementProductCostsAttrLink : ptlAgreementCostRuleList) {
             //查找规则中的 传值属性
             RuleAttrMappingVo ruleAttrMappingVo = ruleAttrMappingVoList.stream()
@@ -183,6 +184,10 @@ public class FactorMatch {
                 log.info("承保规则校验-传入值为null: attrCode={}, useFlag=false", ptlAgreementProductCostsAttrLink.getAttrCode());
             }
 
+            if(useFlag){
+                groupUseFlag = useFlag;
+            }
+
             if (!useFlag) {
                 log.info("承保规则校验-条件命中! attrCode={}, 传入值={}, 规则min={}, max={}, operator={}",
                         ptlAgreementProductCostsAttrLink.getAttrCode(), ruleAttrMappingVo.getValue(),
@@ -221,12 +226,10 @@ public class FactorMatch {
                 if (CollUtil.isNotEmpty(collect)) {
                     logs.append("<span style=\"color:red;\">规则匹配失败:" + collect.get(0).getAttrName() + "</span>\n");
                 }
-
-                return false;
             }
         }
         log.info("承保规则校验-所有条件均未命中, 规则组通过, useFlag={}", useFlag);
-        return useFlag;
+        return groupUseFlag;
     }
 
 

+ 35 - 6
tenant/organization/src/main/java/com/jzg/organization/service/impl/ReceivableServiceImpl.java

@@ -130,6 +130,8 @@ public class ReceivableServiceImpl extends ServiceImpl<ReceivableMapper, InsPlyI
     @Value("${upload.file.url}")
     private String uploadUrl;
 
+    // 常量定义,消除魔法值
+    private static final String SETTLE_STATUS_RESET = "0";
     // 车辆险种手续费结算锁
     private static final String CAR_INVOICING_COMMISSION_LOCK = "CAR_INVOICING_COMMISSION_LOCK:";
     // 车辆险种跟单费结算锁
@@ -1449,18 +1451,45 @@ public class ReceivableServiceImpl extends ServiceImpl<ReceivableMapper, InsPlyI
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public boolean deleteSettlementById(String id) {
         log.info("私有协议-结算记录-删除: id=[{}]",id);
         InsPlyIncomeInvoiceSettlement settlement = insPlyIncomeInvoiceSettlementMapper.selectById(id);
         if(settlement == null){
-            return false;
+            throw new SystemException("结算记录不存在");
         }
         String invoiceId = settlement.getInvoiceId();
-        if(StrUtil.isNotEmpty(invoiceId)){
-            insPlyIncomeInvoiceMapper.update(null,
-                    new LambdaUpdateWrapper<InsPlyIncomeInvoice>()
-                            .set(InsPlyIncomeInvoice::getStatus,"0").eq(InsPlyIncomeInvoice::getId,invoiceId));
-        }
+        if (StrUtil.isBlank(invoiceId)){
+            throw new SystemException("结算记录id不存在");
+        }
+        insPlyIncomeInvoiceMapper.update(null,
+                new LambdaUpdateWrapper<InsPlyIncomeInvoice>()
+                        .set(InsPlyIncomeInvoice::getStatus,"0").eq(InsPlyIncomeInvoice::getId,invoiceId));
+
+        // 查询中间表:使用 QueryWrapper,增加逻辑删除过滤
+        LambdaQueryWrapper<InsPlyIncomeInvoiceLink> linkQueryWrapper = new LambdaQueryWrapper<>();
+        linkQueryWrapper.eq(InsPlyIncomeInvoiceLink::getInvoiceId, invoiceId);
+        linkQueryWrapper.eq(InsPlyIncomeInvoiceLink::getIsDelete, SETTLE_STATUS_RESET);
+        List<InsPlyIncomeInvoiceLink> linkList = insPlyIncomeInvoiceLinkMapper.selectList(linkQueryWrapper);
+
+        // 提取incomeId列表
+        List<String> incomeIdList = linkList.stream()
+                .map(InsPlyIncomeInvoiceLink::getIncomeId)
+                .distinct()
+                .collect(Collectors.toList());
+
+        // 构造更新条件,增加主表逻辑删除过滤
+        LambdaUpdateWrapper<InsPlyIncome> incomeUpdateWrapper = new LambdaUpdateWrapper<>();
+        incomeUpdateWrapper.set(InsPlyIncome::getSettlementStatus, SETTLE_STATUS_RESET)
+                .set(InsPlyIncome::getSuperviseSettlement, SETTLE_STATUS_RESET)
+                .set(InsPlyIncome::getOtherSettlement, SETTLE_STATUS_RESET)
+                .set(InsPlyIncome::getJySuperviseSettlement, SETTLE_STATUS_RESET)
+                .set(InsPlyIncome::getJyOtherSettlement, SETTLE_STATUS_RESET)
+                .eq(InsPlyIncome::getIsDelete, SETTLE_STATUS_RESET)
+                .in(InsPlyIncome::getId, incomeIdList);
+
+        // 执行更新
+        baseMapper.update(null, incomeUpdateWrapper);
         return insPlyIncomeInvoiceSettlementMapper.deleteById(id) > 0;
     }
 

+ 13 - 8
tenant/organization/src/main/java/com/jzg/organization/service/impl/SysUserServiceImpl.java

@@ -889,13 +889,18 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
                         .eq(SysUserJzgInfoBankCard::getUserInfoId, sysUserJzgInfo.getId())
                         .eq(SysUserJzgInfoBankCard::getSystemCode, systemCode)
                         .eq(SysUserJzgInfoBankCard::getAuditStatus, 2));
+        // 重新提交需要再多加一条数据,不能修改原来那条数据的状态,原来那条数据不能动
         if (rejectBankCard != null) {
-            sysUserJzgInfoBankCardVo.setId(rejectBankCard.getId());
-            BeanUtils.copyProperties(sysUserJzgInfoBankCardVo, rejectBankCard);
-
-            rejectBankCard.setFileId(fileId);
-            rejectBankCard.setAuditStatus(0);
-            rejectBankCard.setSystemCode(systemCode);
+            SysUserJzgInfoBankCard sysUserJzgInfoBankCard = BeanUtil.copyProperties(rejectBankCard, SysUserJzgInfoBankCard.class);
+
+            sysUserJzgInfoBankCard.setId(IdGenerate.nextId());
+            sysUserJzgInfoBankCard.setFileId(fileId);
+            sysUserJzgInfoBankCard.setAuditStatus(0);
+            sysUserJzgInfoBankCard.setSystemCode(systemCode);
+            // 审核时间、审核人要设置为空
+            sysUserJzgInfoBankCard.setRemark(null);
+            sysUserJzgInfoBankCard.setAuditBy(null);
+            sysUserJzgInfoBankCard.setAuditTime(null);
             // 设置为默认卡
             if (sysUserJzgInfoBankCardVo.isDefault()) {
                 List<SysUserJzgInfoBankCard> defaultList = sysUserJzgInfoBankCardService
@@ -905,11 +910,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
                     card.setDefault(false);
                     sysUserJzgInfoBankCardService.updateById(card);
                 }
-                rejectBankCard.setDefault(true);
+                sysUserJzgInfoBankCard.setDefault(true);
             }
 
             // 更新驳回的银行卡
-            sysUserJzgInfoBankCardService.updateById(rejectBankCard);
+            sysUserJzgInfoBankCardService.save(sysUserJzgInfoBankCard);
             // 添加重新提交记录
             SysUserJzgInfoBankCardRecord record = new SysUserJzgInfoBankCardRecord(rejectBankCard.getId(), "驳回后重新提交");
             record.setStatus("0");

+ 14 - 0
tenant/organization/src/main/resources/mapper/PtlAgreementCostMapper.xml

@@ -297,6 +297,20 @@
             tr.is_delete = 0
             AND tr.ptl_agreement_cost_id = #{costId}
         </where>
+
+        GROUP BY tr.id,
+        tr.ptl_agreement_cost_id,
+        tr.rules_id,
+        tr.attr_id,
+        tr.attr_code,
+        tr.min,
+        tr.max,
+        tr.operator,
+        tr.batch,
+        a.attr_name,
+        a.attr_type,
+        a.attr_group,
+        a.dict_id
     </select>
 
     <select id="selectCostType" resultMap="costType">