Bang Hu
2 天以前 2b0b64182263d922b946ec898070e59b602382dc
src/main/java/com/webmanage/service/impl/PointsFlowServiceImpl.java
@@ -186,7 +186,7 @@
            checkDailyLimitByRule(userId, unitId, userRule, userPointsChange);
        }
        if (applyProvider && providerRule.getIsLimit() != null && providerRule.getIsLimit() == 1) {
            checkDailyLimitByRule(providerId, providerId, providerRule, providerPointsChange);
            checkDailyLimitByRule(providerId, null, providerRule, providerPointsChange);
        }
        // 余额校验(仅在扣减时)
@@ -359,7 +359,7 @@
               .eq("user_id", userId)
//               .eq("data_category", pointsRule.getRuleName())
                .eq("rule_id",pointsRule.getId())
                .eq("data_type", 0)
                // .eq("data_type", 0)
               .ge("flow_time", startOfDay)
               .le("flow_time", endOfDay);
        if(StringUtils.hasText(unitId)){
@@ -377,14 +377,14 @@
        Integer dailyLimit = pointsRule.getDailyLimit();
        if (dailyLimit != null && dailyLimit > 0) {
            // 如果今日累计积分超过每日上限,则抛出异常
            if (Math.abs(todayTotal) >= dailyLimit) {
            if (Math.abs(todayTotal) > dailyLimit) {
                throw new BusinessException("今日该规则积分已达上限: " + dailyLimit);
            }
            
            // 如果加上当前积分会超过每日上限,则抛出异常
            if (Math.abs(todayTotal + currentPoints) > dailyLimit) {
                throw new BusinessException("本次积分操作将超过每日上限: " + dailyLimit + ",当前已累计: " + Math.abs(todayTotal));
            }
//            if (Math.abs(todayTotal + currentPoints) > dailyLimit) {
//                throw new BusinessException("本次积分操作将超过每日上限: " + dailyLimit + ",当前已累计: " + Math.abs(todayTotal));
//            }
        }
    }