using QYZH.InteractiveMagazine.Models.Entity;
using QYZH.InteractiveMagazine.Models.WeChat;
namespace QYZH.InteractiveMagazine.IService;
///
/// 微信小程序认证服务
///
public interface IWeChatAuthService : IBaseService
{
///
/// 微信小程序登录(首次创建用户,非首次直接登录)
///
/// 登录输入(含微信 code 和可选的手机号 code)
/// 登录结果(含 Token 和用户信息)
Task LoginAsync(WeChatLoginInput input);
///
/// 微信小程序快捷登录(通过 OpenId 直接登录,用户需已存在)
///
/// 快捷登录输入(含 OpenId)
/// 登录结果(含 Token 和用户列表)
Task QuickLoginAsync(WeChatQuickLoginInput input);
///
/// 切换用户(同一 OpenId 下切换身份)
///
/// 当前登录用户ID
/// 切换用户输入
/// 切换结果(含新 Token 和目标用户详情)
Task SwitchUserAsync(long currentUserId, WeChatSwitchUserInput input);
}