From a23f0ba99b7e3c1ad270dd5a263a6b48b4b8fb6f Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期四, 16 一月 2025 20:48:43 +0800 Subject: [PATCH] 修改bug --- ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/service/impl/AppUserServiceImpl.java | 30 +++++++++++++++--------------- 1 files changed, 15 insertions(+), 15 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 899ca9e..bb4bdf1 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 @@ -898,13 +898,13 @@ Long userid = tokenService.getLoginUserApplet().getUserid(); Object cacheObject = redisService.getCacheObject("ONLINE_" + userid); if(null == cacheObject){ - redisService.setCacheObject("ONLINE_" + userid, 0, 15L, TimeUnit.MINUTES); + redisService.setCacheObject("ONLINE_" + userid, System.currentTimeMillis(), 1L, TimeUnit.HOURS); }else{ - Integer duration = (Integer) cacheObject; - duration += 10; + Long duration = (Long) cacheObject; + long time = (System.currentTimeMillis() - duration) / 3600000; //满足一个小时,开始发放积分,计时归0 - if(60 >= duration){ - redisService.setCacheObject("ONLINE_" + userid, 0, 15L, TimeUnit.MINUTES); + if(1 >= time){ + redisService.setCacheObject("ONLINE_" + userid, System.currentTimeMillis(), 1L, TimeUnit.HOURS); AppUser appUser = this.getById(userid); PointSetting pointSetting = pointSettingClient.getPointSetting(appUser.getVipId()).getData(); if(null != pointSetting){ @@ -924,19 +924,19 @@ appUser.setTotalHourPoint(appUser.getTotalHourPoint() + hourPoint); this.updateById(appUser); //添加积分变动记录 - UserPoint userPoint = new UserPoint(); - userPoint.setType(6); - userPoint.setHistoricalPoint(lavePoint); - userPoint.setVariablePoint(hourPoint); - userPoint.setBalance(appUser.getLavePoint()); - userPoint.setCreateTime(LocalDateTime.now()); - userPoint.setAppUserId(appUser.getId()); - userPointService.save(userPoint); + if(hourPoint > 0){ + UserPoint userPoint = new UserPoint(); + userPoint.setType(6); + userPoint.setHistoricalPoint(lavePoint); + userPoint.setVariablePoint(hourPoint); + userPoint.setBalance(appUser.getLavePoint()); + userPoint.setCreateTime(LocalDateTime.now()); + userPoint.setAppUserId(appUser.getId()); + userPointService.save(userPoint); + } //变更等级 vipUpgrade(appUser.getId()); } - }else{ - redisService.setCacheObject("ONLINE_" + userid, duration, 15L, TimeUnit.MINUTES); } } } -- Gitblit v1.7.1