From d37ac1b495dd070e37209527bbedc1ce0730951a Mon Sep 17 00:00:00 2001 From: puzhibing <393733352@qq.com> Date: 星期三, 01 一月 2025 15:16:41 +0800 Subject: [PATCH] 修改bug --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java | 30 +++++++++++++++++++++--------- 1 files changed, 21 insertions(+), 9 deletions(-) diff --git a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java index aeeceef..afae1bf 100644 --- a/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java +++ b/ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java @@ -312,7 +312,7 @@ appUser.setTotalDistributionAmount(BigDecimal.ZERO); appUser.setBalance(BigDecimal.ZERO); //新用户才能奖励积分,老用户注销重新注册没有 - AppUser old = this.getOne(new LambdaQueryWrapper<AppUser>().eq(AppUser::getPhone, registerAccount.getPhone()).eq(AppUser::getDelFlag, 0)); + long old = this.count(new LambdaQueryWrapper<AppUser>().eq(AppUser::getPhone, registerAccount.getPhone()).eq(AppUser::getDelFlag, 0)); R<PointSetting> pointSettingR = pointSettingClient.getPointSetting(1); if (R.isError(pointSettingR)){ throw new RuntimeException("获取积分设置失败"); @@ -322,14 +322,17 @@ throw new RuntimeException("积分设置不存在"); } Integer regisPoint = pointSetting.getRegisPoint(); - if(null == old){ - Integer regisPoint1 = regisPoint; + if(0 == old){ + Integer regisPoint1 = 0; //计算可用积分比例 if(1 == pointSetting.getGetRegisPointOpen()){ - regisPoint1 = new BigDecimal(regisPoint1).multiply(pointSetting.getGetRegisPoint().divide(new BigDecimal(100))).intValue(); + regisPoint1 = new BigDecimal(regisPoint).multiply(pointSetting.getGetRegisPoint().divide(new BigDecimal(100))).intValue(); } appUser.setLavePoint(regisPoint); appUser.setAvailablePoint(regisPoint1); + if(null != pointSetting && 1 == pointSetting.getGetRegisPointGift()){ + appUser.setTransferablePoint(regisPoint1); + } appUser.setTotalRegisterPoint(regisPoint); appUser.setTotalPoint(regisPoint); } @@ -352,7 +355,7 @@ } this.save(appUser); //增加积分变动记录 - if(null == old && regisPoint > 0){ + if(0 == old && regisPoint > 0){ //构建积分流水记录 UserPoint userPoint = new UserPoint(); userPoint.setType(7); @@ -368,12 +371,15 @@ //拉新分佣 if(null != appUser2){ Integer newPoint = pointSetting.getNewPoint(); - Integer newPoint1 = newPoint; + Integer newPoint1 = 0; if(1 == pointSetting.getGetRegisPointOpen()){ - newPoint1 = new BigDecimal(newPoint1).multiply(pointSetting.getGetRegisPoint().divide(new BigDecimal(100))).intValue(); + newPoint1 = new BigDecimal(newPoint).multiply(pointSetting.getGetRegisPoint().divide(new BigDecimal(100))).intValue(); } appUser2.setLavePoint(appUser2.getLavePoint() + newPoint); appUser2.setAvailablePoint(appUser2.getAvailablePoint() + newPoint1); + if(null != pointSetting && 1 == pointSetting.getGetRegisPointGift()){ + appUser2.setTransferablePoint(appUser2.getTransferablePoint() + newPoint1); + } appUser2.setTotalInvitePoint(appUser2.getTotalInvitePoint() + newPoint); appUser2.setTotalPoint(appUser2.getTotalPoint() + newPoint); this.updateById(appUser2); @@ -394,6 +400,9 @@ AppUser appUser3 = this.getById(appUser2.getInviteUserId()); appUser3.setLavePoint(appUser3.getLavePoint() + newPoint); appUser3.setAvailablePoint(appUser3.getAvailablePoint() + newPoint1); + if(null != pointSetting && 1 == pointSetting.getGetRegisPointGift()){ + appUser3.setTransferablePoint(appUser3.getTransferablePoint() + newPoint1); + } appUser3.setTotalInvitePoint(appUser3.getTotalInvitePoint() + newPoint); appUser3.setTotalPoint(appUser3.getTotalPoint() + newPoint); this.updateById(appUser3); @@ -688,14 +697,17 @@ PointSetting pointSetting = pointSettingClient.getPointSetting(appUser.getVipId()).getData(); if(null != pointSetting){ int hourPoint = pointSetting.getHourPoint().intValue(); - int hourPoint1 = hourPoint; + int hourPoint1 = 0; if(1 == pointSetting.getWorkPointOpen()){ - hourPoint1 = new BigDecimal(hourPoint1).multiply(pointSetting.getWorkPoint().divide(new BigDecimal(100))).intValue(); + hourPoint1 = new BigDecimal(hourPoint).multiply(pointSetting.getWorkPoint().divide(new BigDecimal(100))).intValue(); } Integer lavePoint = appUser.getLavePoint(); appUser.setTotalPoint(appUser.getTotalPoint() + hourPoint); appUser.setLavePoint(appUser.getLavePoint() + hourPoint); appUser.setAvailablePoint(appUser.getAvailablePoint() + hourPoint1); + if(null != pointSetting && 1 == pointSetting.getWorkPointGift()){ + appUser.setTransferablePoint(appUser.getTransferablePoint() + hourPoint1); + } appUser.setTotalHourPoint(appUser.getTotalHourPoint() + hourPoint); this.updateById(appUser); //添加积分变动记录 -- Gitblit v1.7.1