package com.hzs.common.core.enums;

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

/**
 * @Description: 商品单位类型
 * @Author: yuhui
 * @Time: 2022/9/2 14:03
 * @Classname: EUnit
 * @PackageName: com.hzs.common.core.enums
 */
@AllArgsConstructor
@Getter
public enum EUnit {
    /**
     * 盒
     */
    BOX(1, "盒", 0, EnumsPrefixConstants.UNIT + 1),

    /**
     * 个
     */
    ALONE(2, "个", 0, EnumsPrefixConstants.UNIT + 2),

    /**
     * 件
     */
    PIECE(3, "件", 0, EnumsPrefixConstants.UNIT + 3);


    /**
     * 实际值
     */
    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 EUnit getEnumByValue(int value) {
        if (BOX.getValue() == value) {
            return BOX;
        } else if (ALONE.getValue() == value) {
            return ALONE;
        }else if (PIECE.getValue() == value) {
            return PIECE;
        }
        return BOX;
    }
}
