puzhibing
2024-12-28 56d62d9edb0dda9ae678dcea2323144db5d11c22
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java
@@ -362,6 +362,8 @@
            userPoint.setCreateTime(LocalDateTime.now());
            userPoint.setAppUserId(appUser.getId());
            userPointService.save(userPoint);
            //变更等级
            vipUpgrade(appUser.getId());
         }
         //拉新分佣
         if(null != appUser2){
@@ -384,9 +386,30 @@
               userPoint.setCreateTime(LocalDateTime.now());
               userPoint.setAppUserId(appUser2.getId());
               userPointService.save(userPoint);
               //变更等级
               vipUpgrade(appUser2.getId());
            }
            //处理会员等级
            vipUpgrade(appUser2.getId());
            if(null != appUser2.getInviteUserId()){
               AppUser appUser3 = this.getById(appUser2.getInviteUserId());
               appUser3.setLavePoint(appUser3.getLavePoint() + newPoint);
               appUser3.setAvailablePoint(appUser3.getAvailablePoint() + newPoint1);
               appUser3.setTotalInvitePoint(appUser3.getTotalInvitePoint() + newPoint);
               appUser3.setTotalPoint(appUser3.getTotalPoint() + newPoint);
               this.updateById(appUser3);
               if(newPoint > 0){
                  UserPoint userPoint = new UserPoint();
                  userPoint.setType(3);
                  userPoint.setHistoricalPoint(appUser3.getLavePoint() - newPoint);
                  userPoint.setVariablePoint(newPoint);
                  userPoint.setBalance(appUser3.getLavePoint());
                  userPoint.setCreateTime(LocalDateTime.now());
                  userPoint.setAppUserId(appUser3.getId());
                  userPointService.save(userPoint);
                  //变更等级
                  vipUpgrade(appUser3.getId());
               }
            }
         }
         
         //获取微信推广二维码
@@ -439,6 +462,7 @@
   /**
    * 会员等级变化
    */
   @Override
   public void vipUpgrade(Long id){
      AppUser appUser = this.getById(id);
      Integer vipId = appUser.getVipId();
@@ -683,6 +707,8 @@
               userPoint.setCreateTime(LocalDateTime.now());
               userPoint.setAppUserId(appUser.getId());
               userPointService.save(userPoint);
               //变更等级
               vipUpgrade(appUser.getId());
            }
         }else{
            redisService.setCacheObject("ONLINE_" + userid, duration, 15L, TimeUnit.MINUTES);