feat(wechat-auth): 实现微信同一OpenId下多用户切换功能

1. 新增用户实体字段IsLastOnline标记上次在线用户
2. 重构微信登录逻辑,返回同一OpenId下的所有用户列表而非单用户
3. 新增SwitchUserAsync服务方法与控制器接口,支持同OpenId下切换用户
4. 添加用户实体到输出DTO的映射工具方法
5. 实现切换用户时的身份校验、Token刷新与在线状态更新
This commit is contained in:
glz
2026-06-03 18:28:45 +08:00
parent 32989e1fa0
commit 018d7e1733
5 changed files with 202 additions and 33 deletions

View File

@ -14,4 +14,12 @@ public interface IWeChatAuthService : IBaseService<Users>
/// <param name="input">登录输入(含微信 code</param>
/// <returns>登录结果(含 Token 和用户信息)</returns>
Task<WeChatLoginOutput> LoginAsync(WeChatLoginInput input);
/// <summary>
/// 切换用户(同一 OpenId 下切换身份)
/// </summary>
/// <param name="currentUserId">当前登录用户ID</param>
/// <param name="input">切换用户输入</param>
/// <returns>切换结果(含新 Token 和目标用户详情)</returns>
Task<WeChatSwitchUserOutput> SwitchUserAsync(long currentUserId, WeChatSwitchUserInput input);
}