package com.sckw.core.web.context;

import com.sckw.core.utils.StringUtils;
import com.sckw.core.web.model.LoginEntInfo;

/**
 * 当前登录用户企业的临时保存容器
 * @Author zhaokang
 * @date 2020/04/13 0021
 */
public class LoginEntHolder {
    private static final ThreadLocal<LoginEntInfo> LONGIN_ENT_HOLDER = new ThreadLocal<LoginEntInfo>();

    /**
     * 赋值
     * @author zhaokang
     * @Date 2020/04/13 0021
     */
    public static void set(LoginEntInfo loginEnterpriseInfo) {
        LONGIN_ENT_HOLDER.set(loginEnterpriseInfo);
    }

    /**
     * 取值
     * @author zhaokang
     * @Date 2020/04/13 0021
     */
    public static LoginEntInfo get() {
        return LONGIN_ENT_HOLDER == null ? null : LONGIN_ENT_HOLDER.get();
    }

    /**
     * 删除保存的用户
     * @author zhaokang
     * @Date 2020/04/13 0021
     */
    public static void remove() {
        LONGIN_ENT_HOLDER.remove();
    }

    /**
     * 用户所属企业id
     * @author zhaokang
     * @Date 2020/04/13 0021
     */
    public static Long getEntId(){
        return LONGIN_ENT_HOLDER.get() == null ? null : LONGIN_ENT_HOLDER.get().getId();
    }

    /**
     * 用户所属企业名称
     * @author zhaokang
     * @Date 2020/04/13 0021
     */
    public static String getFirmName(){
        return LONGIN_ENT_HOLDER.get() == null ? null : LONGIN_ENT_HOLDER.get().getFirmName();
    }

    /**
     * 资料审批状态（1通过、0未审批、2未通过、3审批中）
     * @author zhaokang
     * @Date 2020/04/13 0021
     */
    public static Integer getApproval(){
        return LONGIN_ENT_HOLDER.get() == null ? null : LONGIN_ENT_HOLDER.get().getApproval();
    }

    /**
     * 用户状态（-1删除、0正常、1已锁）
     * @author zhaokang
     * @Date 2020/04/13 0021
     */
    public static Integer getStatus(){
        return LONGIN_ENT_HOLDER.get() == null ? null : LONGIN_ENT_HOLDER.get().getStatus();
    }

    /**
     * 专场标识
     * @author zhaokang
     * @Date 2020/04/13 0021
     */
    public static String getSpecial(){
        return LONGIN_ENT_HOLDER.get() == null ? null : LONGIN_ENT_HOLDER.get().getSpecial();
    }

    /**
     * 是否主平台(不属于专场)
     * @author zk
     * @Date 2023/12/17 0021
     */
    public static boolean getMainPlatform(){
        String pecial = getSpecial();
        return StringUtils.isNotBlank(pecial);
    }

}
