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

55 lines
1.8 KiB
C#

using LiveForum.Code.Base;
using LiveForum.IService.Home;
using LiveForum.Model.Dto.Home;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
namespace LiveForum.WebApi.Controllers
{
/// <summary>
/// 首页相关接口
/// </summary>
/// <param name="homeService"></param>
[Route("api/[controller]/[action]")]
[ApiController]
public class HomeController(IHomeService homeService) : ControllerBase
{
/// <summary>
/// 获取首页主播榜单
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
[HttpGet]
public Task<BaseResponse<GetRankingsRespDto>> Rankings([FromQuery] GetRankingsReq request)
=> homeService.GetRankings(request);
/// <summary>
/// 获取更多排行榜(分页)
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
[HttpGet]
public Task<BaseResponse<GetRankingsMoreRespDto>> RankingsMore([FromQuery] GetRankingsMoreReq request)
=> homeService.GetRankingsMore(request);
/// <summary>
/// 获取直播中主播列表(分页)
/// </summary>
/// <param name="request">请求参数</param>
/// <returns></returns>
[HttpGet]
public Task<BaseResponse<GetLiveStreamersRespDto>> LiveStreamers([FromQuery] GetLiveStreamersReq request)
=> homeService.GetLiveStreamers(request);
/// <summary>
/// 获取主播榜单分类列表
/// </summary>
/// <returns></returns>
[HttpGet]
public Task<BaseResponseList<StreamerCategoryDto>> StreamerCategories()
=> homeService.GetStreamerCategories();
}
}