namespace YBEE.EQM.Application;

/// <summary>
/// 用户登录认证服务
/// </summary>
public interface ISysAuthService
{
    /// <summary>
    /// 账户密码登录
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task<AuthOutput> LoginByAccount(LoginInput input);
    /// <summary>
    /// 退出登录
    /// </summary>
    /// <returns></returns>
    Task Logout();
    /// <summary>
    /// 获取当前登录用户信息
    /// </summary>
    /// <returns></returns>
    Task<LoginOutput> GetLoginUser();
    /// <summary>
    /// 获取图形验证码
    /// </summary>
    /// <returns></returns>
    Task<GeneralCaptchaOutput> GetCaptcha();
    /// <summary>
    /// 验证图形验证码
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    Task<GeneralCaptchaOutput> VerifyCaptcha(GeneralCaptchaInput input);
    /// <summary>
    /// 获取临时密码
    /// </summary>
    /// <param name="input"></param>
    /// <returns></returns>
    List<string> GetTempPassword(List<string> input);
}