add(接口):添加授权、用户、好友关系服务接口

This commit is contained in:
2025-10-28 16:52:59 +08:00
parent d85e906b39
commit c67c666135
20 changed files with 967 additions and 8 deletions
@@ -0,0 +1,39 @@
using IM_API.Dtos;
using IM_API.Models;
namespace IM_API.Interface.Services
{
public interface IAuthService
{
/// <summary>
/// 登录
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
Task<LoginDto> LoginAsync(LoginRequestDto dto);
/// <summary>
/// 注册
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
Task<UserInfoDto> RegisterAsync(RegisterRequestDto dto);
/// <summary>
/// 生成登录凭证
/// </summary>
/// <param name="user"></param>
/// <returns></returns>
string GenerateToken(User user);
/// <summary>
/// 验证登录凭证
/// </summary>
/// <param name="token"></param>
/// <returns></returns>
int? ValidateToken(string token);
/// <summary>
/// 刷新令牌
/// </summary>
/// <param name="refreshToken"></param>
/// <returns></returns>
LoginDto RefreshToken(string refreshToken);
}
}
@@ -0,0 +1,32 @@
using IM_API.Dtos;
using IM_API.Models;
namespace IM_API.Interface.Services
{
public interface IFriendSerivce
{
/// <summary>
/// 获取好友列表
/// </summary>
/// <param name="userId">指定用户</param>
/// <param name="page">当前页</param>
/// <param name="limit">分页大小</param>
/// <returns></returns>
Task<List<UserInfoDto>> GetFriendListAsync(int userId,int page,int limit);
/// <summary>
/// 新增好友请求
/// </summary>
/// <param name="friendRequest"></param>
/// <returns></returns>
Task<bool> SendFriendRequestAsync(FriendRequestDto friendRequest);
/// <summary>
/// 获取好友请求
/// </summary>
/// <param name="userId"></param>
/// <param name="isReceived">是否为接受请求方</param>
/// <param name="page"></param>
/// <param name="limit"></param>
/// <returns></returns>
Task<Friendrequest> GetFriendRequestListAsync(int userId,bool isReceived,int page,int limit);
}
}
@@ -0,0 +1,39 @@
using IM_API.Dtos;
using IM_API.Models;
namespace IM_API.Interface.Services
{
public interface IUserService
{
/// <summary>
/// 获取用户信息
/// </summary>
/// <param name="userId"></param>
/// <returns></returns>
Task<UserInfoDto> GetUserInfoAsync(int userId);
/// <summary>
/// 用户名查找用户
/// </summary>
/// <param name="username"></param>
/// <returns></returns>
Task<UserInfoDto> GetUserInfoByUsernameAsync(string username);
/// <summary>
/// 更新用户信息
/// </summary>
/// <param name="dto"></param>
/// <returns></returns>
Task<UserInfoDto> UpdateUserAsync(UpdateUserDto dto);
/// <summary>
/// 重置用户密码
/// </summary>
/// <param name="password"></param>
/// <returns></returns>
Task<bool> ResetPasswordAsync(string password);
/// <summary>
/// 更新用户在线状态
/// </summary>
/// <param name="onlineStatus"></param>
/// <returns></returns>
Task<bool> UpdateOlineStatusAsync(UserOnlineStatus onlineStatus);
}
}