package com.fizz.business.constants.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 异常错误码枚举
 */
@Getter
public enum ExceptionCodeEnum {
    // System-level errors / 系统级错误
    SYSTEM_ERROR("SYS_500", "System error"),
    SERVICE_UNAVAILABLE("SYS_503", "Service unavailable"),

    // Business-level errors / 业务级错误
    DATA_NOT_FOUND("BIZ_404", "Data not found"),
    DATA_VALIDATION_FAILED("BIZ_400", "Data validation failed"),
    UNAUTHORIZED_ACCESS("BIZ_401", "Unauthorized access"),

    // Default error / 默认错误
    ERROR("ERR_500", "Unknown error");

    private final String code;
    private final String message;

    ExceptionCodeEnum(String code, String message) {
        this.code = code;
        this.message = message;
    }
}
