live-forum/server/webapi/LiveForum/LiveForum.WebApi/Controllers/UserFollowController.cs
2026-03-24 11:27:37 +08:00

47 lines
1.5 KiB
C#

using LiveForum.Code.Base;
using LiveForum.IService.Users;
using LiveForum.Model.Dto.UserFollow;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
namespace LiveForum.WebApi.Controllers
{
/// <summary>
/// 用户关注相关接口
/// </summary>
/// <param name="userFollow"></param>
[Route("api/[controller]/[action]")]
[ApiController]
public class UserFollowController(IUserFollowService userFollow) : ControllerBase
{
/// <summary>
/// 关注/取消关注用户
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
[HttpPost]
[Authorize]
public Task<BaseResponse<FollowUserRespDto>> FollowUser([FromBody] FollowUserReq request) => userFollow.FollowUser(request);
/// <summary>
/// 获取关注列表
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
[HttpGet]
[Authorize]
public Task<BaseResponse<GetUserFollowingRespDto>> GetUserFollowing([FromQuery] GetUserFollowingReq request) => userFollow.GetUserFollowing(request);
/// <summary>
/// 获取粉丝列表
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
[HttpGet]
[Authorize]
public Task<BaseResponse<GetUserFollowersRespDto>> GetUserFollowers([FromQuery] GetUserFollowersReq request) => userFollow.GetUserFollowers(request);
}
}