package com.ruoyi.inventory.domain.enums;

/** 盘点计划状态 */
public enum InventoryPlanStatus {
    /** 盘点编制 */
    PLAN_REDACT(0, "盘点编制"),
    /** 盘点执行 */
    PLAN_EXECUTE(1, "盘点执行"),
    /** 盘点完毕 */
    PLAN_FINISH(2, "盘点完毕"),
    /** 盘点暂停 */
    PLAN_SUSPEND(3, "盘点暂停");

    /** 特定代码 */
    private final Integer code;

    /** 名称 */
    private final String name;

    InventoryPlanStatus(Integer code, String name) {
        this.code = code;
        this.name = name;
    }

    public Integer getCode() {
        return code;
    }

    public String getName() {
        return name;
    }

    /**
     * 根据特定代码返回名称
     *
     * @param code 特定代码
     * @return 名称/null
     */
    public static String getName(Integer code) {
        for (InventoryPlanStatus value : InventoryPlanStatus.values()) {
            if (value.code.equals(code)) {
                return value.getName();
            }
        }
        return null;
    }
}
