fengjin
2022-10-21 1fb23cbeeaaeda0a66cf8fe8977c3f5915743cc7
flower_city/src/main/java/com/dg/core/interceptor/AuthorizationInterceptor.java
@@ -6,6 +6,7 @@
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;
@@ -39,6 +40,9 @@
    @Autowired
    IHuaChengSysUserService iHuaChengSysUserService;
    @Autowired
    private ISysUserRecordService iSysUserRecordService;
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        //如果不是映射到方法直接通过
@@ -57,16 +61,15 @@
        if(StringUtils.isEmpty(token))
        {
            //花城e+   token
            if (manager.checkHCToken(HCtoken)) {
                //如果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)+"");
                if(ss==null)
                HuaChengSysUser huaChengSysUser=iHuaChengSysUserService.selectData(manager.getHCUserId(HCtoken)+"","","");
                if(huaChengSysUser!=null && huaChengSysUser.getUserId()!=0 )
                {
                    HuaChengSysUser huaChengSysUser=iHuaChengSysUserService.selectData(manager.getHCUserId(HCtoken)+"","","");
                    if(huaChengSysUser!=null)
                    SysUser sysUser = IUserService.selectData(null,huaChengSysUser.getPhone());
                    if(sysUser==null)
                    {
                        //本地没有此用户  新用户
                        SysUser newSysUser=new SysUser();
@@ -82,7 +85,12 @@
                        newSysUser.setOpenid(huaChengSysUser.getOpenid());
                        IUserService.insertConfig(newSysUser);
                    }
                    //新增浏览记录
                    iSysUserRecordService.add(sysUser);
                    //删除因为token问题产出的重复脏数据
                    iSysUserRecordService.deleteDistinct();
                }
                return true;
            }
@@ -110,8 +118,8 @@
                facade.setContentLength(reponse.getBytes(StandardCharsets.UTF_8).length);
                facade.getWriter().write(reponse);
                return false;
//            }
        }
            }
//        }
        return true;
    }
}