13693261870
2 天以前 169d7d0cecd3e50aca33d42cc38230dd8aeb5770
se-common/src/main/java/com/terra/common/service/CommonService.java
@@ -2,6 +2,7 @@
import com.terra.common.entity.all.RedisCacheKey;
import com.terra.common.entity.all.SettingData;
import com.terra.common.entity.all.StaticData;
import com.terra.common.entity.lf.TokenPo;
import com.terra.common.entity.lf.UserPo;
import com.terra.common.helper.StringHelper;
@@ -11,6 +12,9 @@
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.concurrent.TimeUnit;
/**
@@ -20,10 +24,11 @@
@Component
public class CommonService {
    @Resource
    RedisService redisService;
    CommonMapper mapper;
    @Resource
    CommonMapper mapper;
    RedisService redisService;
    public UserPo getCurrentUser(HttpServletRequest req) {
        String token = WebHelper.getToken(req);
@@ -76,4 +81,45 @@
        return po;
    }
    /**
     * 用户ID是/否禁用
     */
    public boolean isUidDisable(UserPo ue) {
        String key = RedisCacheKey.signPwdError(ue.getUid());
        Object objCount = redisService.get(key);
        return null != objCount && (int) objCount >= SettingData.PWD_ERR_COUNT;
    }
    public List<String> selectIpList(Integer type) {
        String key = RedisCacheKey.blacklistKey(type.toString());
        Object obj = redisService.get(key);
        if (obj instanceof List<?>) {
            return (List<String>) obj;
        }
        List<String> list = mapper.selectIpList(type);
        if (list != null && !list.isEmpty()) {
            redisService.put(key, list, SettingData.CACHE_EXPIRE, TimeUnit.MINUTES);
        }
        return list;
    }
    public List<String> selectPerms(String uid) {
        String key = RedisCacheKey.permsPermsKey(uid);
        Object obj = redisService.get(key);
        if (obj instanceof List<?>) {
            return (List<String>) obj;
        }
        List<String> list = mapper.selectPerms(uid);
        if (list != null && !list.isEmpty()) {
            redisService.put(key, list, SettingData.CACHE_EXPIRE, TimeUnit.MINUTES);
        }
        return list;
    }
}