luoyb
2021-03-10 f22196a273dae1cc4f67bf6e4806e0e33fae7997
febs-common/febs-common-core/src/main/java/cc/mrbird/febs/common/core/utils/FebsUtil.java
@@ -1,10 +1,13 @@
package cc.mrbird.febs.common.core.utils;
import cc.mrbird.febs.common.core.annotation.FieldInfo;
import cc.mrbird.febs.common.core.entity.CurrentUser;
import cc.mrbird.febs.common.core.entity.FebsAuthUser;
import cc.mrbird.febs.common.core.entity.constant.PageConstant;
import cc.mrbird.febs.common.core.entity.constant.RegexpConstant;
import cc.mrbird.febs.common.core.entity.constant.StringConstant;
import cn.hutool.core.annotation.AnnotationUtil;
import cn.hutool.core.util.ReflectUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.fasterxml.jackson.databind.ObjectMapper;
@@ -29,10 +32,12 @@
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.lang.reflect.Field;
import java.time.LocalDateTime;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.stream.Collectors;
import java.util.stream.IntStream;
/**
@@ -284,7 +289,7 @@
        }
    }
    public static String getUserId(){
    public static String getUserId() {
        return Optional.ofNullable(getCurrentUser())
                .map(u -> u.getUserId().toString())
                .orElse("1");
@@ -345,4 +350,26 @@
    private static LinkedHashMap<String, Object> getAuthenticationDetails() {
        return (LinkedHashMap<String, Object>) getOauth2Authentication().getUserAuthentication().getDetails();
    }
    /**
     * 通过反射拿到注解
     *
     * @param beanClass
     * @return java.lang.String
     * @description
     * @author yz
     * @date 2021/3/7 2:25 下午
     * @method reflectAnnotation
     */
    public static String reflectAnnotation(Class<?> beanClass) {
        Field[] fields = ReflectUtil.getFields(beanClass);
        List<String> list = new ArrayList<>();
        for (Field field : fields) {
            FieldInfo fieldInfo = field.getAnnotation(FieldInfo.class);
            if (null != fieldInfo) {
                list.add(field.getName());
            }
        }
        return list.stream().collect(Collectors.joining(StringConstant.COMMA));
    }
}