From 60e726c81966b042db4f7b108d06bd36109794de Mon Sep 17 00:00:00 2001 From: huliguo <2023611923@qq.com> Date: 星期三, 18 六月 2025 12:21:11 +0800 Subject: [PATCH] 抽奖管理、一键同步 --- ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java | 48 +++++++++++++++++++++++++++--------------------- 1 files changed, 27 insertions(+), 21 deletions(-) diff --git a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java index 3b17bbd..fc63adc 100644 --- a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java +++ b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/service/TokenService.java @@ -1,17 +1,7 @@ package com.ruoyi.common.security.service; -import java.util.HashMap; -import java.util.Map; -import java.util.concurrent.TimeUnit; -import javax.servlet.http.HttpServletRequest; - -import com.ruoyi.common.core.constant.Constants; -import com.ruoyi.system.api.model.AppMiniLoginVo; -import com.ruoyi.system.api.model.OauthUserVo; -import com.ruoyi.system.api.model.QwH5LoginVo; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; import com.ruoyi.common.core.constant.CacheConstants; +import com.ruoyi.common.core.constant.Constants; import com.ruoyi.common.core.constant.SecurityConstants; import com.ruoyi.common.core.utils.JwtUtils; import com.ruoyi.common.core.utils.ServletUtils; @@ -20,7 +10,17 @@ import com.ruoyi.common.core.utils.uuid.IdUtils; import com.ruoyi.common.redis.service.RedisService; import com.ruoyi.common.security.utils.SecurityUtils; +import com.ruoyi.system.api.model.AppMiniLoginVo; import com.ruoyi.system.api.model.LoginUser; +import com.ruoyi.system.api.model.OauthUserVo; +import com.ruoyi.system.api.model.QwH5LoginVo; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; + +import javax.servlet.http.HttpServletRequest; +import java.util.HashMap; +import java.util.Map; +import java.util.concurrent.TimeUnit; /** * token验证处理 @@ -37,7 +37,7 @@ protected static final long MILLIS_MINUTE = 60 * MILLIS_SECOND; - private final static long expireTime = CacheConstants.EXPIRATION; + private final static long EXPIRE_TIME = CacheConstants.EXPIRATION; private final static String ACCESS_TOKEN = CacheConstants.LOGIN_TOKEN_KEY; @@ -66,7 +66,7 @@ // 接口返回信息 Map<String, Object> rspMap = new HashMap<String, Object>(); rspMap.put("access_token", JwtUtils.createToken(claimsMap)); - rspMap.put("expires_in", expireTime); + rspMap.put("expires_in", EXPIRE_TIME); return rspMap; } @@ -81,6 +81,8 @@ // 接口返回信息 Map<String, Object> rspMap = new HashMap<String, Object>(); //用户为空只返回openid + rspMap.put("mobile",""); + rspMap.put("access_token", ""); if(appMiniLoginVo.getSysUser()!=null){ loginUser.setSysUser(appMiniLoginVo.getSysUser()); String token = IdUtils.fastUUID(); @@ -95,11 +97,13 @@ claimsMap.put(SecurityConstants.DETAILS_USER_ID, userId); claimsMap.put(SecurityConstants.DETAILS_USERNAME, userName); claimsMap.put(SecurityConstants.LOGIN_FROM, Constants.FROM_MINI_APP); + if(StringUtils.isNotBlank(appMiniLoginVo.getMobile())){ + rspMap.put("mobile",appMiniLoginVo.getMobile() ); + }else{ + rspMap.put("mobile",""); + } rspMap.put("access_token", JwtUtils.createToken(claimsMap)); - rspMap.put("expires_in", expireTime); - } - if(StringUtils.isNotBlank(appMiniLoginVo.getMobile())){ - rspMap.put("mobile",appMiniLoginVo.getMobile() ); + rspMap.put("expires_in", EXPIRE_TIME); } rspMap.put("wx_unionid", appMiniLoginVo.getWxUnionid()); rspMap.put("mini_openid", appMiniLoginVo.getMiniOpenid()); @@ -121,7 +125,7 @@ loginUser.setUsername(userName); loginUser.setIpaddr(IpUtils.getIpAddr()); refreshToken(loginUser); - + // Jwt存储信息 Map<String, Object> claimsMap = new HashMap<String, Object>(); claimsMap.put(SecurityConstants.USER_KEY, token); @@ -131,8 +135,10 @@ // 接口返回信息 OauthUserVo oauthUserVo = new OauthUserVo(); oauthUserVo.setShopId(qwH5LoginVo.getShopId()); + oauthUserVo.setShopNum(qwH5LoginVo.getShopNum()); + oauthUserVo.setShopName(qwH5LoginVo.getShopName()); oauthUserVo.setToken(JwtUtils.createToken(claimsMap)); - oauthUserVo.setExpiresIn(expireTime); + oauthUserVo.setExpiresIn(EXPIRE_TIME); oauthUserVo.setUserid(qwH5LoginVo.getUserid()); oauthUserVo.setMobile(qwH5LoginVo.getMobile()); return oauthUserVo; @@ -229,10 +235,10 @@ public void refreshToken(LoginUser loginUser) { loginUser.setLoginTime(System.currentTimeMillis()); - loginUser.setExpireTime(loginUser.getLoginTime() + expireTime * MILLIS_MINUTE); + loginUser.setExpireTime(loginUser.getLoginTime() + EXPIRE_TIME * MILLIS_MINUTE); // 根据uuid将loginUser缓存 String userKey = getTokenKey(loginUser.getToken()); - redisService.setCacheObject(userKey, loginUser, expireTime, TimeUnit.MINUTES); + redisService.setCacheObject(userKey, loginUser, EXPIRE_TIME, TimeUnit.MINUTES); } private String getTokenKey(String token) -- Gitblit v1.7.1