Quellcode durchsuchen

1.修改车险导出bug

wks vor 1 Jahr
Ursprung
Commit
b0ca660ea2

+ 35 - 0
src/main/java/com/ydtech/modules/inv/utils/LocalDateTimeUtils.java

@@ -4,7 +4,11 @@ package com.ydtech.modules.inv.utils;
  * @author jianlong
  * @date 2024-01-24 18:26
  */
+
+import cn.hutool.core.date.LocalDateTimeUtil;
+
 import java.time.*;
+import java.time.format.DateTimeFormatter;
 import java.time.temporal.ChronoUnit;
 import java.time.temporal.TemporalAdjusters;
 import java.util.Date;
@@ -467,4 +471,35 @@ public class LocalDateTimeUtils {
         return LocalDateTime.of(LocalDate.now().plus(1L, ChronoUnit.YEARS).with(TemporalAdjusters.lastDayOfYear()), LocalTime.MAX);
     }
 
+    public static final DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+
+    /**
+     * 现在时间在开始和结束时间之间
+     *
+     * @param start 开始时间
+     * @param end   结束时间
+     * @return true -> 在 false -> 不在
+     */
+    public static boolean nowIsBetweenStartAndEnd(String start, String end) {
+        try {
+            LocalDateTime startDateTime = LocalDateTime.parse(start, dateTimeFormatter);
+            LocalDateTime endDateTime = LocalDateTime.parse(end, dateTimeFormatter);
+            return nowIsBetweenStartAndEnd(startDateTime, endDateTime);
+        }catch (Exception e) {
+            return false;
+        }
+    }
+
+    /**
+     * 现在时间在开始和结束时间之间
+     *
+     * @param start 开始时间
+     * @param end   结束时间
+     * @return true -> 在 false -> 不在
+     */
+    public static boolean nowIsBetweenStartAndEnd(LocalDateTime start, LocalDateTime end) {
+        LocalDateTime now = LocalDateTime.now();
+        return start.isBefore(now) && end.isAfter(now);
+    }
+
 }

+ 20 - 8
src/main/java/com/ydtech/modules/protocol/service/impl/PtlAgreementServiceImpl.java

@@ -2,6 +2,7 @@ package com.ydtech.modules.protocol.service.impl;
 
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.date.DateUtil;
+import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -21,6 +22,7 @@ import com.ydtech.modules.order.entity.po.InsUploadFiles;
 import com.ydtech.modules.order.service.InsCrawlerOrderService;
 import com.ydtech.modules.order.service.InsUploadFilesService;
 import com.ydtech.modules.protocol.constants.HistoryStatusConstants;
+import com.ydtech.modules.protocol.constants.ValidStatus;
 import com.ydtech.modules.protocol.dao.PtlAgreementGroupLinkDeptMapper;
 import com.ydtech.modules.protocol.dao.PtlAgreementMapper;
 import com.ydtech.modules.protocol.entity.constants.PtlApiType;
@@ -854,7 +856,7 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
             ptlAgreementAttributionService.saveAttribution(agreementId, esmInsCompany, agreement.getAttribution());
         }
         // 部门授权
-        ptlAgreementDeptService.saveBatchDept(agreementId, agreement.getDept());
+//        ptlAgreementDeptService.saveBatchDept(agreementId, agreement.getDept());
     }
 
 
@@ -1115,13 +1117,13 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
             ptlAgreementAttributionHistoryService.save(ptlAgreementAttributionHistory);
         }
         // 复制授权部门
-        List<PtlAgreementDept> ptlAgreementDept = ptlAgreementDeptService.list(new LambdaQueryWrapper<PtlAgreementDept>().eq(PtlAgreementDept::getAgreementId, ptlAgreement.getId()));
-        List<String> deptIds = ptlAgreementDept.stream().map(PtlAgreementDept::getDeptId).collect(Collectors.toList());
-        ptlAgreementDeptService.saveBatchDept(newPtlAgreement.getId(), deptIds);
+//        List<PtlAgreementDept> ptlAgreementDept = ptlAgreementDeptService.list(new LambdaQueryWrapper<PtlAgreementDept>().eq(PtlAgreementDept::getAgreementId, ptlAgreement.getId()));
+//        List<String> deptIds = ptlAgreementDept.stream().map(PtlAgreementDept::getDeptId).collect(Collectors.toList());
+//        ptlAgreementDeptService.saveBatchDept(newPtlAgreement.getId(), deptIds);
         // 添加授权部门记录
-        List<PtlAgreementDeptHistory> ptlAgreementDeptList = PtlAgreementDeptHistory.toPtlAgreementDeptHistoryList(newPtlAgreement.getId(),
-                deptIds, batchNo);
-        ptlAgreementDeptHistoryService.saveBatch(ptlAgreementDeptList);
+//        List<PtlAgreementDeptHistory> ptlAgreementDeptList = PtlAgreementDeptHistory.toPtlAgreementDeptHistoryList(newPtlAgreement.getId(),
+//                deptIds, batchNo);
+//        ptlAgreementDeptHistoryService.saveBatch(ptlAgreementDeptList);
         // 添加协议轨迹
         PtlAgreementTrajectory ptlAgreementTrajectory = new PtlAgreementTrajectory();
         ptlAgreementTrajectory.setId(IdGenerate.nextId());
@@ -1155,7 +1157,17 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
     public void agreementAllInformationCopyVo(AgreementAllInformationCopyVo agreementAllInformationCopyVo) {
         PtlAgreement ptlAgreement = getById(agreementAllInformationCopyVo.getAgreementId());
         ptlAgreement.setId(null);
+        ptlAgreement.setAuditStatus(0);
+        ptlAgreement.setValidStatus(String.valueOf(ValidStatus.AVS_0.getCode()));
         save(ptlAgreement);
+
+        // 复制账号信息
+        PtlAgreementAttribution ptlAgreementAttribution = ptlAgreementAttributionService.getById(agreementAllInformationCopyVo.getAgreementId());
+        if(!Objects.isNull(ptlAgreementAttribution)) {
+            ptlAgreementAttribution.setId(ptlAgreement.getId());
+            ptlAgreementAttributionService.save(ptlAgreementAttribution);
+        }
+
         AgreementAllInformationCopyVo.InformationDTO cost = agreementAllInformationCopyVo.getCost();
         // 协议费用
         List<PtlAgreementProductCostsNew> ptlAgreementProductCostsNews = new ArrayList<>();
@@ -1173,7 +1185,7 @@ public class PtlAgreementServiceImpl extends ServiceImpl<PtlAgreementMapper, Ptl
         List<PtlAgreementUndwrtRulesNew> ptlAgreementUndwrtRulesNews = new ArrayList<>();
         if (underwritingRules.isAll()) {
             ptlAgreementUndwrtRulesNews = ptlAgreementUndwrtRulesNewService.getByAgreementId(agreementAllInformationCopyVo.getAgreementId());
-        } else if (!underwritingRules.getInformationId().isEmpty())  {
+        } else if (!underwritingRules.getInformationId().isEmpty()) {
             ptlAgreementUndwrtRulesNews = ptlAgreementUndwrtRulesNewService.getByRulesIdList(underwritingRules.getInformationId());
         }
         // 通过获取的协议列表复制协议中的 费用和费用规则

+ 0 - 4
src/main/java/com/ydtech/modules/protocols/entity/po/PtlAgreementProductCostsAttrLink.java

@@ -54,10 +54,6 @@ public class PtlAgreementProductCostsAttrLink {
     @TableField(value = "max")
     private String max;
 
-    @ApiModelProperty(value = "是否相同")
-    @TableField(value = "max")
-    private Integer same;
-
     @TableField(exist = false)
     private JSONArray dictLabal;
 

+ 4 - 0
src/main/java/com/ydtech/modules/protocols/entity/po/PtlAgreementProductCostsNew.java

@@ -238,6 +238,10 @@ public class PtlAgreementProductCostsNew {
     @TableField(exist = false)
     private String feeFileUrl;
 
+    @ApiModelProperty(value = "是否有效")
+    @TableField(exist = false)
+    private boolean effective;
+
     /**
      * 插入之前id存储
      */

+ 1 - 1
src/main/java/com/ydtech/modules/protocols/service/PtlAgreementUndwrtRulesAttrLinkService.java

@@ -20,6 +20,6 @@ public interface PtlAgreementUndwrtRulesAttrLinkService extends IService<PtlAgre
      * @return 规则列表
      */
     default List<PtlAgreementUndwrtRulesAttrLink> getByRulesIdList(List<String> rulesId) {
-        return lambdaQuery().eq(PtlAgreementUndwrtRulesAttrLink::getRulesId, rulesId).list();
+        return lambdaQuery().in(PtlAgreementUndwrtRulesAttrLink::getRulesId, rulesId).list();
     }
 }

+ 33 - 24
src/main/java/com/ydtech/modules/protocols/service/impl/PtlAgreementProductCostsNewServiceImpl.java

@@ -1,5 +1,6 @@
 package com.ydtech.modules.protocols.service.impl;
 
+import cn.hutool.core.date.LocalDateTimeUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -24,6 +25,7 @@ import com.ydtech.modules.fnc.entity.InsFeeAudit;
 import com.ydtech.modules.fnc.entity.InsFeeAuditHistory;
 import com.ydtech.modules.fnc.service.InsFeeAuditHistoryService;
 import com.ydtech.modules.fnc.service.InsFeeAuditService;
+import com.ydtech.modules.inv.utils.LocalDateTimeUtils;
 import com.ydtech.modules.order.entity.InsAreaCompany;
 import com.ydtech.modules.order.entity.InsOrders;
 import com.ydtech.modules.order.entity.vo.FeeOrderNewRecordVo;
@@ -33,6 +35,7 @@ import com.ydtech.modules.order.service.InsOrdersService;
 import com.ydtech.modules.protocol.constants.ValidStatus;
 import com.ydtech.modules.protocol.entity.po.PtlAgreement;
 import com.ydtech.modules.protocol.entity.po.PtlAreaLicense;
+import com.ydtech.modules.protocol.service.PtlAgreementAttributionService;
 import com.ydtech.modules.protocol.service.PtlAgreementService;
 import com.ydtech.modules.protocol.service.PtlAreaLicenseService;
 import com.ydtech.modules.protocol.utils.AssertionUtils;
@@ -51,6 +54,7 @@ import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
 import java.math.BigDecimal;
+import java.time.Duration;
 import java.time.LocalDate;
 import java.time.LocalDateTime;
 import java.time.LocalTime;
@@ -60,6 +64,7 @@ import java.util.function.Consumer;
 import java.util.function.Supplier;
 import java.util.stream.Collectors;
 
+
 /**
  * @description 协议承保规则属性 service实现类
  * @createDate 2024-2-22 15:44:29
@@ -104,6 +109,8 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
 
     @Resource
     private InsFeeAuditHistoryService insFeeAuditHistoryService;
+    @Autowired
+    private PtlAgreementAttributionService ptlAgreementAttributionService;
 
     @Override
     public Page<PtlAgreementProductCostsNew> getProductPage(Page page, SysChannelGroupPageVo sysChannelGroupPageVo) {
@@ -228,32 +235,29 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
         });
         //赋值出口比例
         List<PtlAgreementProductCostsNew> records = pages.getRecords();
-        for (int i = 0; i < records.size(); i++) {
-            int finalI = i;
-            PtlAgreementProductCostsExport ptlAgreementProductCostsExport = ptlAgreementProductCostsExports.stream().filter(y -> y.getCostsId().equals(records.get(finalI).getId())).findFirst().orElse(null);
-            if (!Objects.isNull(ptlAgreementProductCostsExport)) {
-                records.get(i).setJqExportRadioLevel1(ptlAgreementProductCostsExport.getJqExportRadioLevel1().toString());
-                records.get(i).setJqExportRadioLevel2(ptlAgreementProductCostsExport.getJqExportRadioLevel2().toString());
-                records.get(i).setJqExportRadioLevel3(ptlAgreementProductCostsExport.getJqExportRadioLevel3().toString());
-                records.get(i).setJqExportRadioLevel4(ptlAgreementProductCostsExport.getJqExportRadioLevel4().toString());
-                records.get(i).setJqExportRadioLevel5(ptlAgreementProductCostsExport.getJqExportRadioLevel5().toString());
+        Map<String, PtlAgreementProductCostsExport> ptlAgreementProductCostsExportMap = ptlAgreementProductCostsExports.stream().collect(Collectors.toMap(PtlAgreementProductCostsExport::getCostsId, x -> x));
+        records.forEach(x -> {
+            PtlAgreementProductCostsExport ptlAgreementProductCostsExport = ptlAgreementProductCostsExportMap.get(x.getId());
+            x.setJqExportRadioLevel1(ptlAgreementProductCostsExport.getJqExportRadioLevel1().toString());
+            x.setJqExportRadioLevel2(ptlAgreementProductCostsExport.getJqExportRadioLevel2().toString());
+            x.setJqExportRadioLevel3(ptlAgreementProductCostsExport.getJqExportRadioLevel3().toString());
+            x.setJqExportRadioLevel4(ptlAgreementProductCostsExport.getJqExportRadioLevel4().toString());
+            x.setJqExportRadioLevel5(ptlAgreementProductCostsExport.getJqExportRadioLevel5().toString());
 //                records.get(i).setJqExportInvestmentRadio(ptlAgreementProductCostsExport.getJqExportInvestmentRadio().toString());
-                records.get(i).setSyExportRadioLevel1(ptlAgreementProductCostsExport.getSyExportRadioLevel1().toString());
-                records.get(i).setSyExportRadioLevel2(ptlAgreementProductCostsExport.getSyExportRadioLevel2().toString());
-                records.get(i).setSyExportRadioLevel3(ptlAgreementProductCostsExport.getSyExportRadioLevel3().toString());
-                records.get(i).setSyExportRadioLevel4(ptlAgreementProductCostsExport.getSyExportRadioLevel4().toString());
-                records.get(i).setSyExportRadioLevel5(ptlAgreementProductCostsExport.getSyExportRadioLevel5().toString());
+            x.setSyExportRadioLevel1(ptlAgreementProductCostsExport.getSyExportRadioLevel1().toString());
+            x.setSyExportRadioLevel2(ptlAgreementProductCostsExport.getSyExportRadioLevel2().toString());
+            x.setSyExportRadioLevel3(ptlAgreementProductCostsExport.getSyExportRadioLevel3().toString());
+            x.setSyExportRadioLevel4(ptlAgreementProductCostsExport.getSyExportRadioLevel4().toString());
+            x.setSyExportRadioLevel5(ptlAgreementProductCostsExport.getSyExportRadioLevel5().toString());
 //                records.get(i).setSyExportInvestmentRadio(ptlAgreementProductCostsExport.getSyExportInvestmentRadio().toString());
-                records.get(i).setNoCarExportRadioLevel1(ptlAgreementProductCostsExport.getNoCarExportRadioLevel1().toString());
-                records.get(i).setNoCarExportRadioLevel2(ptlAgreementProductCostsExport.getNoCarExportRadioLevel2().toString());
-                records.get(i).setNoCarExportRadioLevel3(ptlAgreementProductCostsExport.getNoCarExportRadioLevel3().toString());
-                records.get(i).setNoCarExportRadioLevel4(ptlAgreementProductCostsExport.getNoCarExportRadioLevel4().toString());
-                records.get(i).setNoCarExportRadioLevel5(ptlAgreementProductCostsExport.getNoCarExportRadioLevel5().toString());
-            }
-        }
-        pages.getRecords().stream().forEach(x -> {
-
+            x.setNoCarExportRadioLevel1(ptlAgreementProductCostsExport.getNoCarExportRadioLevel1().toString());
+            x.setNoCarExportRadioLevel2(ptlAgreementProductCostsExport.getNoCarExportRadioLevel2().toString());
+            x.setNoCarExportRadioLevel3(ptlAgreementProductCostsExport.getNoCarExportRadioLevel3().toString());
+            x.setNoCarExportRadioLevel4(ptlAgreementProductCostsExport.getNoCarExportRadioLevel4().toString());
+            x.setNoCarExportRadioLevel5(ptlAgreementProductCostsExport.getNoCarExportRadioLevel5().toString());
+            x.setEffective(LocalDateTimeUtils.nowIsBetweenStartAndEnd(x.getCostsStartDate(), x.getCostsEndDate()));
         });
+
         return pages;
     }
 
@@ -589,6 +593,9 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
             ptlAgreementProductCostsNew.setCreateTime(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
             ptlAgreementProductCostsNew.setCreateBy(BaseController.getUser().getId());
             ptlAgreementProductCostsNew.blank();
+            ptlAgreementProductCostsNew.setIsAudit(AgreementProductCostsAuditStatus.COSTS_AUDIT_STATUS_0.getCode());
+            ptlAgreementProductCostsNew.setValidStatus(ValidStatus.AVS_0.getCode());
+
             int insert = baseMapper.insert(ptlAgreementProductCostsNew);
 
             //添加费用出口信息
@@ -1024,6 +1031,7 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
             PtlAgreementProductCostsNew ptlAgreementProductCostsNew = baseMapper.selectById(agreementProductCostsCopyVo.getOrgCostsId());
             ptlAgreementProductCostsNew.setAgreementId(agreementProductCostsCopyVo.getNewAgreementId());
             ptlAgreementProductCostsNew.setCreateTime(new Date().toString());
+
             BeanUtils.copyProperties(ptlAgreementProductCostsNew, agreementProductCosts);
             agreementProductCosts.getProductId().add(ptlAgreementProductCostsNew.getProductId());
             agreementProductCosts.getProductName().add(ptlAgreementProductCostsNew.getProductName());
@@ -2525,7 +2533,8 @@ public class PtlAgreementProductCostsNewServiceImpl extends ServiceImpl<PtlAgree
             x.setAgreementId(agreementId);
             x.setSaveBeforeId(x.getId());
             x.setId(null);
-
+            x.setValidStatus(ValidStatus.AVS_0.getCode());
+            x.setIsAudit(AgreementProductCostsAuditStatus.COSTS_AUDIT_STATUS_0.getCode());
         });
         // 协议费用出口比例
         List<PtlAgreementProductCostsExport> ptlAgreementProductCostsExportList = ptlAgreementProductCostsExportService.lambdaQuery()

+ 1 - 1
src/main/java/com/ydtech/modules/protocols/service/impl/PtlAgreementUndwrtRulesNewServiceImpl.java

@@ -492,7 +492,7 @@ public class PtlAgreementUndwrtRulesNewServiceImpl extends ServiceImpl<PtlAgreem
         // 规则保存
         List<PtlAgreementUndwrtRulesAttrLink> ptlAgreementUndwrtRulesAttrLinkList = ptlAgreementUndwrtRulesAttrLinkService.getByRulesIdList(list);
         ptlAgreementUndwrtRulesAttrLinkList.forEach(x -> {
-            x.setRulesId(idMapping.get(x.getId()));
+            x.setRulesId(idMapping.get(x.getRulesId()));
             x.setId(null);
         });
         ptlAgreementUndwrtRulesAttrLinkService.saveBatch(ptlAgreementUndwrtRulesAttrLinkList);