package com.hzs.common.core.enums;

import com.hzs.common.core.constant.EnumsPrefixConstants;
import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 注册权限枚举类
 *
 * @author hzs
 */
@AllArgsConstructor
@Getter
public enum ERegistrationAuthority {

    /**
     * 普通用户
     */
    ORDINARY(0, "普通用户", 0, EnumsPrefixConstants.REGISTRATION_AUTHORITY + "0"),

    /**
     * 普通代理
     */
    DECLARATION(1, "普通代理", 0, EnumsPrefixConstants.REGISTRATION_AUTHORITY + "1"),

    /**
     * 区域仓库
     */
    SERVICE(2, "区域仓库", 0, EnumsPrefixConstants.REGISTRATION_AUTHORITY + "2"),

    ;

    /**
     * 实际值
     */
    private final int value;
    /**
     * 显示标签
     */
    private final String label;
    /**
     * 是否启用（0=是,1=否） -- 来源EYesNo
     */
    private final int enable;
    /**
     * 国际化翻译key值
     */
    private final String key;

    /**
     * 根据枚举值获取枚举
     *
     * @param value 枚举值
     * @return
     */
    public static ERegistrationAuthority getEnumByValue(int value) {
        for (ERegistrationAuthority eApproveStatus : ERegistrationAuthority.values()) {
            if (eApproveStatus.getValue() == value) {
                return eApproveStatus;
            }
        }
        return null;
    }

}
