Browse Source

登录调整、新增的拜访流程调整

contract
Yen 2 years ago
parent
commit
2f2a58fbaa
  1. 7
      src/main/java/com/qs/serve/common/framework/security/filter/SecurityRequestFilter.java
  2. 8
      src/main/java/com/qs/serve/controller/WxSvcLoginApi.java

7
src/main/java/com/qs/serve/common/framework/security/filter/SecurityRequestFilter.java

@ -153,12 +153,7 @@ public class SecurityRequestFilter extends OncePerRequestFilter {
return; return;
} }
if(SecurityContextHolder.getContext().getAuthentication()==null){ if(SecurityContextHolder.getContext().getAuthentication()==null){
UserDetails userDetails = null; UserDetails userDetails = sysUserService.getLoginUserById(userId);
if(userType.equals(LoginUserType.SYS_USER.getCode())
||userType.equals(LoginUserType.SYS_SUP_USER.getCode())){
//后台管理员登录
userDetails = sysUserService.getLoginUserById(userId);
}
if(userDetails==null){ if(userDetails==null){
HttpResponsePrintUtil.print2(response,401,"登录信息无效,请重新登录"); HttpResponsePrintUtil.print2(response,401,"登录信息无效,请重新登录");
//return解决:security.access.AccessDeniedException //return解决:security.access.AccessDeniedException

8
src/main/java/com/qs/serve/controller/WxSvcLoginApi.java

@ -102,13 +102,15 @@ public class WxSvcLoginApi {
redisService.set(key, JsonUtil.objectToJson(loginUser.loginUserDTO()),2, TimeUnit.DAYS); redisService.set(key, JsonUtil.objectToJson(loginUser.loginUserDTO()),2, TimeUnit.DAYS);
objectMap.put("token",token); objectMap.put("token",token);
String sysUserId = "1";
Map<String,Object> tokenMap = new HashMap<>(10); Map<String,Object> tokenMap = new HashMap<>(10);
String client = "wx_app"; String client = "wx_app";
String redisKey = StringUtils.format(RedisCacheKeys.LOGIN_KEY_APP,client,loginUser.getUserId()); String redisKey = StringUtils.format(RedisCacheKeys.LOGIN_KEY_APP,client,sysUserId);
String pctoken = JwtUtils.generateToken(loginUser.getUserId(),loginUser.getTypeFlag(),client); String pctoken = JwtUtils.generateToken(sysUserId,loginUser.getTypeFlag(),client);
redisService.set(redisKey,pctoken); redisService.set(redisKey,pctoken);
tokenMap.put("token", pctoken); tokenMap.put("token", pctoken);
tokenMap.put("userId", loginUser.getUserId()); tokenMap.put("userId", sysUserId);
tokenMap.put("IP", loginUser.getLoginIp()); tokenMap.put("IP", loginUser.getLoginIp());
tokenMap.put("tenant", sysTenantMapper.selectById(loginUser.getTenant())); tokenMap.put("tenant", sysTenantMapper.selectById(loginUser.getTenant()));
tokenMap.put("loginType",client); tokenMap.put("loginType",client);

Loading…
Cancel
Save