using Apimanager_backend.Dtos; using Apimanager_backend.Models; using System.Runtime.CompilerServices; namespace Apimanager_backend.Services { public interface IUserService { /// /// 登录用户,根据用户名和密码进行身份验证。 /// /// 用户名 /// 密码 /// 包含用户信息的 Task LoginAsync(string username, string password); /// /// 发送密码重置邮件到指定邮箱。 /// /// 用户注册的邮箱地址 /// 异步操作 Task SendResetPasswordEmailAsync(string email); /// /// 重置用户密码,验证重置令牌的有效性并更新密码。 /// /// 用户邮箱地址 /// 重置密码的令牌 /// 新的密码 /// 异步操作 Task ResetPasswordAsync(string email, string token, string newPassword); /// /// 获取用户信息。 /// /// 用户名 /// 包含用户信息的 Task GetUserAsync(string username); /// /// 更新用户信息。 /// /// 包含更新信息的 /// 更新后的 Task UpdateUserAsync(UpdateUserDto user); /// /// 删除指定的用户。 /// /// 要删除的用户名 /// 异步操作 Task DeleteUserAsync(string username); /// /// 创建新用户。 /// /// 包含新用户信息的 /// 创建成功的用户信息 Task CreateUserAsync(CreateUserDto user); /// /// 禁用用户,使其无法登录。 /// /// 要禁用的用户名 /// 异步操作 Task BanUserAsync(string username); /// /// 取消禁用用户,恢复登录权限。 /// /// 要取消禁用的用户名 /// 异步操作 Task UnbanUserAsync(string username); /// /// 获取分页的用户列表。 /// /// 要获取的页码,从1开始 /// 每页的用户数量 /// 是否按降序排序 /// 包含用户信息的 Task> GetUsersAsync(int page, int pageSize, bool desc); } }