namespace Health.Infrastructure.Services;

/// <summary>
/// 短信验证码服务（开发阶段直接返回成功）
/// </summary>
public sealed class SmsService
{
    /// <summary>
    /// 发送验证码（开发阶段不做真实发送）
    /// </summary>
    public Task<bool> SendCodeAsync(string phone, string code)
    {
        // 开发阶段：直接在控制台输出，不做真实发送
        Console.WriteLine($"[SMS DEV] 发送验证码到 {phone}: {code}");
        return Task.FromResult(true);
    }

    /// <summary>
    /// 生成 6 位随机数字验证码
    /// </summary>
    public string GenerateCode()
    {
        // Next(min, max) 的 max 是 exclusive 的，所以用 1000000 保证 6 位
        return Random.Shared.Next(100000, 1000000).ToString();
    }
}
