package com.fjhx.enums;

import lombok.Getter;

import java.util.HashMap;

/**
 * 按钮名称
 */
@Getter
public enum ButtonNameEnum {
    // 发起
    START(1, "发起"),
    // 审核
    ADOPT(2, "通过"),
    FAIL(3, "不通过"),
    // 审批
    AGREE(4, "同意"),
    REJECT(5, "驳回"),
    // 办理
    COMPLETE(6, "完成"),
    // 执行分支逻辑
    BRANCH(7, "分支"),

    // 流程未开始
    NOT_STARTED(97, "未开始"),
    // 流程进行中
    HAVE_IN_HAND(98, "进行中"),
    // 结束流程
    END(99, "结束");


    private final Integer type;
    private final String name;

    private static final HashMap<Integer, ButtonNameEnum> map = new HashMap<>();

    ButtonNameEnum(Integer type, String name) {
        this.type = type;
        this.name = name;
    }

    static {
        for (ButtonNameEnum value : ButtonNameEnum.values()) {
            map.put(value.getType(), value);
        }
    }

    /**
     * 根据type获取枚举
     */
    public static ButtonNameEnum get(Integer type) {
        return map.get(type);
    }

    /**
     * 根据type值获取枚举
     */
    public static String getName(Integer type) {
        return map.get(type).getName();
    }

}
