namespace HuanMeng.DotNetCore.Base;
/// <summary>
/// 响应编码参考，实际的项目使用可以自行定义
/// 基本规则：
/// 成功：大于等于0ResponseCode
/// 失败：小于0
/// </summary>

public enum ResponseCode
{
    // 成功响应码
    /// <summary>
    /// 成功
    /// </summary>
    Success = 0,

    /// <summary>
    /// 正在处理中
    /// </summary>
    Processing = 102,

    /// <summary>
    /// 开始排队
    /// </summary>
    StartQueue = 201,

    // 失败响应码
    /// <summary>
    /// 通用错误
    /// </summary>
    Error = -1,

    /// <summary>
    /// 参数错误
    /// </summary>
    ParamError = -2,

    /// <summary>
    /// 没找到数据记录
    /// </summary>
    NotFoundRecord = -3,

    /// <summary>
    /// 数据为null
    /// </summary>
    NullOrEmpty = -4,

    /// <summary>
    /// Sign签名错误
    /// </summary>
    SignError = -999,

    /// <summary>
    /// jwt用户签名错误
    /// </summary>
    JwtError = -998,

    // 客户端错误响应码
    /// <summary>
    /// 用户未登录
    /// </summary>
    UserNotLogin = 400,

    /// <summary>
    /// 用户验证失败
    /// </summary>
    Unauthorized = 401,

    /// <summary>
    /// 用户登录过期
    /// </summary>
    LoginExpired = 402,

    /// <summary>
    /// 余额不足
    /// </summary>
    NotMoney = 403,

    /// <summary>
    /// 重复请求
    /// </summary>
    ManyRequests = 429,

    // 其他错误响应码
    /// <summary>
    /// 手机号异常
    /// </summary>
    PhoneNumberException = 530,

    /// <summary>
    /// 当日手机号发送已到达上限
    /// </summary>
    PhoneNumberMaxException = 531,
}
