From c8ea2d96f5b0522a09f3203ae98fe796084d2d15 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期六, 04 一月 2025 09:34:21 +0800 Subject: [PATCH] Merge branch 'master' of http://120.76.84.145:10101/gitblit/r/java/qijisheng --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java | 47 ++++++----------------------------------------- 1 files changed, 6 insertions(+), 41 deletions(-) diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java index 05b2c91..15e3ad8 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/UserPointServiceImpl.java @@ -29,6 +29,7 @@ import javax.annotation.Resource; import java.math.BigDecimal; import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.Collections; import java.util.List; import java.util.Map; @@ -61,7 +62,7 @@ UserPointVO userPointVO = new UserPointVO(); userPointVO.setTotalPoint(appUser.getTotalPoint()); - userPointVO.setConsumePoint(appUser.getLavePoint()); + userPointVO.setConsumePoint(appUser.getAvailablePoint()); userPointVO.setShopPoint(appUser.getShopPoint()); userPointVO.setSharePoint(appUser.getSharePoint()); userPointVO.setPullNewPoint(appUser.getTotalInvitePoint()); @@ -76,13 +77,14 @@ List<UserPoint> userPointList = list(new LambdaQueryWrapper<UserPoint>() .between(startTime != null, UserPoint::getCreateTime, startTime, endTime) .eq(type != null, UserPoint::getType, type) - .eq(UserPoint::getAppUserId, userId)); + .eq(UserPoint::getAppUserId, userId).orderByDesc(UserPoint::getCreateTime)); if (CollectionUtil.isNotEmpty(userPointList)) { return userPointList.stream().map(p -> { UserPointDetailVO userPointDetailVO = new UserPointDetailVO(); userPointDetailVO.setType(p.getType()); userPointDetailVO.setVariablePoint(p.getVariablePoint()); - userPointDetailVO.setCreateTime(p.getCreateTime()); + String format = p.getCreateTime().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); + userPointDetailVO.setCreateTime(format); return userPointDetailVO; }).collect(Collectors.toList()); } @@ -118,7 +120,7 @@ throw new ServiceException("积分设置未找到"); } // 可转赠积分总数 - long adjustedPoint = getAdjustedPoint(pointSetting, appUser); + long adjustedPoint = appUser.getAvailablePoint(); if (point.compareTo(new BigDecimal(adjustedPoint)) > 0) { throw new ServiceException("转赠积分不足"); @@ -141,43 +143,6 @@ appUserService.updateById(appUser); log.info("积分转赠完成,用户ID: {}, 新积分: {}", appUserForPhoe.getId(), appUserForPhoe.getLavePoint()); } - - /** - * 获取可转赠积分 - * @param pointSetting 积分设置 - * @param appUser 用户 - */ - private long getAdjustedPoint(PointSetting pointSetting, AppUser appUser) { - if (pointSetting == null || appUser == null) { - throw new ServiceException("pointSetting和appUser不能为空"); - } - - long transferPoint = 0; - - transferPoint += calculatePoint(pointSetting.getBuyPointGift(), appUser.getShopPoint(), pointSetting.getBuyPoint()); - transferPoint += calculatePoint(pointSetting.getSharePointGift(), appUser.getSharePoint(), pointSetting.getSharePoint()); - transferPoint += calculatePoint(pointSetting.getShopSharePointGift(), appUser.getShopSharePoint(), pointSetting.getShopSharePoint()); - transferPoint += calculatePoint(pointSetting.getShopPointGift(), appUser.getShopAchievementPoint(), pointSetting.getShopPoint()); - transferPoint += calculatePoint(pointSetting.getPersonPointGift(), appUser.getTotalPerformancePoint(), pointSetting.getPersonPoint()); - transferPoint += calculatePoint(pointSetting.getGetNewPointGift(), appUser.getTotalInvitePoint(), pointSetting.getGetNewPoint()); - transferPoint += calculatePoint(pointSetting.getGetRegisPointGift(), appUser.getTotalRegisterPoint(), pointSetting.getRegisPoint()); - transferPoint += calculatePoint(pointSetting.getWorkPointGift(), appUser.getTotalSharePoint() + appUser.getTotalSignPoint() + appUser.getTotalHourPoint(), pointSetting.getWorkPoint()); - - return transferPoint; - } - - private long calculatePoint(Integer settingValue, double userValue, double pointValue) { - if (settingValue == 1) { - try { - double result = userValue * (pointValue / 100.0); - return Math.round(result); - } catch (ArithmeticException e) { - return 0; - } - } - return 0; - } - @Override -- Gitblit v1.7.1