KKSU
2024-07-15 4a347c0ab4b88fd792d24d30bed36b1fa769d3a2
src/main/java/cc/mrbird/febs/common/interceptor/LoginInterceptor.java
@@ -4,7 +4,8 @@
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.utils.RedisUtils;
import cc.mrbird.febs.common.utils.SpringContextUtil;
import cc.mrbird.febs.modules.api.entity.MemberEntity;
import cc.mrbird.febs.dapp.entity.DappMemberEntity;
import cc.mrbird.febs.dapp.mapper.DappMemberDao;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.asymmetric.KeyType;
import cn.hutool.crypto.asymmetric.RSA;
@@ -29,27 +30,32 @@
    private final RedisUtils redisUtils = SpringContextUtil.getBean(RedisUtils.class);
    private final DappMemberDao dappMemberDao = SpringContextUtil.getBean(DappMemberDao.class);
    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        String headerToken = request.getHeader("token");
        System.out.println(request.getHeader(":path"));
        String headerToken = request.getHeader("key");
        if (StringUtils.isBlank(headerToken)) {
            responseUnAuth(response);
            return false;
        }
        String token = resolveToken(headerToken);
        if (token == null || AppContants.TIME_OUT.equals(token)) {
            responseUnAuth(response);
            return false;
        }
        String userJsonStr = redisUtils.getString(token);
        String userJsonStr = redisUtils.getString(headerToken);
        if (StringUtils.isBlank(userJsonStr)) {
            responseUnAuth(response);
            return false;
        }
        MemberEntity member = JSON.parseObject(userJsonStr, MemberEntity.class);
        DappMemberEntity member = JSON.parseObject(userJsonStr, DappMemberEntity.class);
        DappMemberEntity memberEntity = dappMemberDao.selectById(member.getId());
        if (memberEntity == null) {
            responseUnAuth(response);
            return false;
        }
        if(AppContants.INT_FLAG_Y != memberEntity.getAccountStatus()){
            responseUnAuth(response);
            return false;
        }
        request.getSession().setAttribute("member", member);
        return true;