From 072c7650acbdb888c9ead841e6008aee1f2048f2 Mon Sep 17 00:00:00 2001 From: lidongdong <1459917685@qq.com> Date: 星期一, 10 十月 2022 09:18:11 +0800 Subject: [PATCH] 修改小程序 token获取不到用户信息 --- flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java | 37 +++++++++++++++++++++++++++++++++---- 1 files changed, 33 insertions(+), 4 deletions(-) diff --git a/flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java b/flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java index aa5957d..3595f12 100644 --- a/flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java +++ b/flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java @@ -2,8 +2,10 @@ import com.dg.core.Constant; import com.dg.core.annotation.Authorization; +import com.dg.core.db.gen.entity.HuaChengSysUser; import com.dg.core.db.gen.entity.SysUser; import com.dg.core.manager.TokenManager; +import com.dg.core.service.IHuaChengSysUserService; import org.apache.catalina.connector.ResponseFacade; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -15,6 +17,7 @@ import javax.servlet.http.HttpServletResponse; import java.lang.reflect.Method; import java.nio.charset.StandardCharsets; +import java.time.LocalDateTime; /** * 自定义拦截器,判断此次请求是否有权限 @@ -29,6 +32,12 @@ @Autowired com.dg.core.service.ISysUserService IUserService; + + /** + * 花城e+用户接口 + */ + @Autowired + IHuaChengSysUserService iHuaChengSysUserService; @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { @@ -53,7 +62,27 @@ //如果token验证成功,权限检查通过,将token对应的用户id存在request中,便于之后注入 request.setAttribute(Constant.CURRENT_USER_ID, manager.getHCUserId(HCtoken)); System.out.println("花城用户id:"+manager.getHCUserId(HCtoken)); -// SysUser ss = IUserService.selectData(manager.getHCUserId(HCtoken)+""); + SysUser ss = IUserService.selectData(manager.getHCUserId(HCtoken)+""); + if(ss==null) + { + HuaChengSysUser huaChengSysUser=iHuaChengSysUserService.selectData(manager.getHCUserId(HCtoken)+"","",""); + if(huaChengSysUser!=null) + { + //本地没有此用户 新用户 + SysUser newSysUser=new SysUser(); + //默认 1系统后台用户 + newSysUser.setUserType("1"); + newSysUser.setPhonenumber(huaChengSysUser.getPhone()); + newSysUser.setUserId(huaChengSysUser.getUserId()); + newSysUser.setUserName(huaChengSysUser.getNickName()); + newSysUser.setSex(huaChengSysUser.getSex()); + newSysUser.setAvatar(huaChengSysUser.getImageUrl()); + newSysUser.setCreateTime(LocalDateTime.now()); + newSysUser.setUpdateTime(LocalDateTime.now()); + newSysUser.setOpenid(huaChengSysUser.getOpenid()); + IUserService.insertConfig(newSysUser); + } + } return true; } @@ -68,8 +97,8 @@ } } - if(!StringUtils.isEmpty(token)) - { +// if(!StringUtils.isEmpty(token)) +// { //如果验证token失败,并且方法或类注明了Authorization,返回401错误 if (method.getAnnotation(Authorization.class) != null || bean.getClass().getAnnotation(Authorization.class) != null) @@ -81,7 +110,7 @@ facade.setContentLength(reponse.getBytes(StandardCharsets.UTF_8).length); facade.getWriter().write(reponse); return false; - } +// } } return true; } -- Gitblit v1.7.1