package com.cf.imes.module.system.enums.customplateno;

import cn.hutool.core.util.ObjectUtil;
import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * @author Gqr
 * @since 2024/11/19 9:40
 */
@AllArgsConstructor
public enum ResetModeEnum {
    /**
     * 不清零，累加
     */
    ACCUMULATION(0),

    /**
     * 按位数
     */
    DIGIT(1),

    /**
     * 按年
     */
    YEAR(2),

    /**
     * 按月
     */
    MONTH(3),

    /**
     * 按天
     */
    DAY(4),

    /**
     * 按订单
     */
    ORDER(5),

    /**
     * 按房间
     */
    ROOM(6),

    /**
     * 按柜体
     */
    BODY(7);

    @Getter
    private int mode;

    /**
     * 根据mode获取对应枚举
     *
     * @param mode
     * @return
     */
    public static ResetModeEnum getByMode(int mode) {
        for (ResetModeEnum modeEnum : ResetModeEnum.values()) {
            if (ObjectUtil.equal(modeEnum.getMode(), mode)) {
                return modeEnum;
            }
        }
        return null;
    }
}
