From 08f1b1f1804a8bd833d42f257908d80e88387b55 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期五, 14 三月 2025 11:27:47 +0800 Subject: [PATCH] 3.5增加登录验证、修改密码、人员列表调整 --- flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java | 70 ++++++++++++++++++++++++++++++---- 1 files changed, 61 insertions(+), 9 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 65a692f..70888b1 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,11 @@ 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 com.dg.core.service.ISysUserRecordService; import org.apache.catalina.connector.ResponseFacade; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -15,10 +18,8 @@ import javax.servlet.http.HttpServletResponse; import java.lang.reflect.Method; import java.nio.charset.StandardCharsets; -import java.text.SimpleDateFormat; -import java.time.ZoneId; -import java.util.Calendar; -import java.util.Date; +import java.time.LocalDateTime; +import java.util.List; /** * 自定义拦截器,判断此次请求是否有权限 @@ -33,6 +34,15 @@ @Autowired com.dg.core.service.ISysUserService IUserService; + + /** + * 花城e+用户接口 + */ + @Autowired + IHuaChengSysUserService iHuaChengSysUserService; + + @Autowired + private ISysUserRecordService iSysUserRecordService; @Override public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { @@ -52,11 +62,53 @@ if(StringUtils.isEmpty(token)) { - //花城e+ token if (manager.checkHCToken(HCtoken)) { //如果token验证成功,权限检查通过,将token对应的用户id存在request中,便于之后注入 request.setAttribute(Constant.CURRENT_USER_ID, manager.getHCUserId(HCtoken)); -// SysUser ss = IUserService.selectData(manager.getHCUserId(HCtoken)+""); + System.out.println("花城用户id:"+manager.getHCUserId(HCtoken)); + List<HuaChengSysUser> list=iHuaChengSysUserService.selectData(manager.getHCUserId(HCtoken)+"","",""); + HuaChengSysUser huaChengSysUser=null; + + if(list!=null || list.size()>0 ) + { + huaChengSysUser=list.get(0); + } + + if(huaChengSysUser!=null && !StringUtils.isEmpty(huaChengSysUser.getUserId()) ) + { + SysUser sysUser = IUserService.selectData(null,huaChengSysUser.getPhone(),null); + if(sysUser==null) + { + //本地没有此用户 新用户 + SysUser newSysUser=new SysUser(); + //默认 1系统后台用户 + newSysUser.setUserType("4"); + newSysUser.setRoleIds("4"); + newSysUser.setIsDivisionHead("2"); + 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); + } + else + { + if(StringUtils.isEmpty(sysUser.getOpenid())) + { + sysUser.setOpenid(huaChengSysUser.getOpenid()); + IUserService.updateConfig(sysUser); + } + } + //新增浏览记录 + iSysUserRecordService.add(sysUser); + //删除因为token问题产出的重复脏数据 + iSysUserRecordService.deleteDistinct(); + } + return true; } @@ -71,8 +123,8 @@ } } - if(!StringUtils.isEmpty(token)) - { +// if(!StringUtils.isEmpty(token)) +// { //如果验证token失败,并且方法或类注明了Authorization,返回401错误 if (method.getAnnotation(Authorization.class) != null || bean.getClass().getAnnotation(Authorization.class) != null) @@ -85,7 +137,7 @@ facade.getWriter().write(reponse); return false; } - } +// } return true; } } \ No newline at end of file -- Gitblit v1.7.1