xuhy
2025-04-22 eca240fb896f796d70f4e5aa7e115597afa052f2
bug修改
2个文件已修改
20 ■■■■ 已修改文件
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/StateProcessTemplateServiceImpl.java 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/task/utils/TaskUtil.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/StateProcessTemplateServiceImpl.java
@@ -694,9 +694,12 @@
        Map<Long, List<FlwHisTask>> flwHisTaskMap = flwHisTaskList.stream().collect(Collectors.groupingBy(FlwHisTask::getInstanceId));
        //查询原因
        List<String> taskIds = flwHisTaskList.stream().map(FlowEntity::getId).map(String::valueOf).collect(Collectors.toList());
        Map<String, StateProcessInstanceAction> actionMap = new HashMap<>();
        if(!CollectionUtils.isEmpty(taskIds)){
        List<StateProcessInstanceAction> actions = stateProcessInstanceActionService.list(
                Wrappers.<StateProcessInstanceAction>lambdaQuery().in(StateProcessInstanceAction::getNodeId, taskIds));
        Map<String, StateProcessInstanceAction> actionMap = actions.stream().collect(Collectors.toMap(StateProcessInstanceAction::getNodeId, Function.identity()));
            actionMap = actions.stream().collect(Collectors.toMap(StateProcessInstanceAction::getNodeId, Function.identity()));
        }
        List<String> updateUserId = processTaskListVOS.getRecords().stream().map(ProcessTaskListVO::getCreateBy).collect(Collectors.toList());
        Map<Long, SysUser> sysUserMap;
@@ -726,10 +729,12 @@
                    }
                }
            }
            if(!CollectionUtils.isEmpty(actionMap)){
            StateProcessInstanceAction action = actionMap.get(processTaskListVO.getTaskId());
            if (ObjectUtil.isNotEmpty(action)) {
                processTaskListVO.setReason(action.getRemark());
            }
            }
            SysUser sysUser = sysUserMap.get(processTaskListVO.getCreateBy());
            if (Objects.nonNull(sysUser)) {
                processTaskListVO.setCreateBy(sysUser.getNickName());
ruoyi-system/src/main/java/com/ruoyi/system/task/utils/TaskUtil.java
@@ -41,9 +41,13 @@
            // 查询所有未缴费账单
            List<TBill> list = billMapper.selectList(new LambdaQueryWrapper<TBill>().ne(TBill::getPayFeesStatus, 5)
                    .ne(TBill::getOutstandingMoney,0));
            List<TContract> contractList = contractService.list();
            for (TBill tBill : list) {
                tBill.setPayFeesStatus("4");
                TContract contract = contractService.getById(tBill.getContractId());
                TContract contract = contractList.stream().filter(e -> e.getId().equals(tBill.getContractId())).findFirst().orElse(null);
                if (contract==null)continue;
                if (contract.getProportion().compareTo(BigDecimal.ZERO)==0)continue;
                LocalDate payableFeesTime = tBill.getPayableFeesTime();
                // 将LocalDate转化为LocalDateTime
                LocalDateTime payableFeesTime1 = LocalDateTime.of(payableFeesTime, LocalTime.of(0, 0, 0));
@@ -65,11 +69,10 @@
                    boolean isok = redisCache.trylockLoop(lockkey, requestId, 60);
                    if (isok){
                        try {
                            BigDecimal money = tBill.getOutstandingMoney().multiply(new BigDecimal(100).add(proportion)).divide(new BigDecimal(100),2, BigDecimal.ROUND_DOWN);
                            BigDecimal money = contract.getTotalYear().multiply(proportion.divide(new BigDecimal(100),4, BigDecimal.ROUND_DOWN));
                            tBill.setOverDays((int) l);
                            BigDecimal bigDecimal = tBill.getOutstandingMoney().multiply(proportion).setScale(2, BigDecimal.ROUND_DOWN);
                            tBill.setPayableFeesPenalty(tBill.getPayableFeesPenalty()!=null?tBill.getPayableFeesPenalty():new BigDecimal("0").add(bigDecimal));
                            tBill.setOutstandingMoney(money);
                            tBill.setPayableFeesPenalty(tBill.getPayableFeesPenalty()!=null?tBill.getPayableFeesPenalty().add(money):new BigDecimal("0").add(money));
                            tBill.setOutstandingMoney(money.add(tBill.getOutstandingMoney()));
                            billMapper.updateById(tBill);
                        }finally {
                            redisCache.unlock(lockkey,requestId);