package com.starry.admin.modules.shop.module.enums;

import com.starry.admin.common.exception.CustomException;
import lombok.Getter;

/**
 * 优惠券折扣类型枚举。
 */
@Getter
public enum CouponDiscountType {

    /**
     * 满减券（固定金额抵扣）。
     */
    FULL_REDUCTION("0"),

    /**
     * 折扣券（按比例折扣）。暂未支持具体计算逻辑。
     */
    PERCENTAGE("1");

    private final String code;

    CouponDiscountType(String code) {
        this.code = code;
    }

    public static CouponDiscountType fromCode(String code) {
        for (CouponDiscountType value : values()) {
            if (value.code.equals(code)) {
                return value;
            }
        }
        throw new CustomException("不支持的优惠券折扣类型: " + code);
    }
}
