using Microsoft.AspNetCore.Mvc; using ZR.LiveForum.Model.Liveforum.Dto; using ZR.LiveForum.Model.Liveforum; using ZR.Service.Liveforum.ILiveforumService; //创建时间:2025-11-16 namespace ZR.Admin.WebApi.Controllers.Liveforum { /// /// 点赞表,存储用户对帖子和评论的点赞记录 /// [Route("liveforum/tlikes")] public class T_LikesController : BaseController { /// /// 点赞表,存储用户对帖子和评论的点赞记录接口 /// private readonly IT_LikesService _T_LikesService; public T_LikesController(IT_LikesService T_LikesService) { _T_LikesService = T_LikesService; } /// /// 查询点赞表,存储用户对帖子和评论的点赞记录列表 /// /// /// [HttpGet("list")] [ActionPermissionFilter(Permission = "tlikes:list")] public IActionResult QueryT_Likes([FromQuery] T_LikesQueryDto parm) { var response = _T_LikesService.GetList(parm); return SUCCESS(response); } /// /// 查询点赞表,存储用户对帖子和评论的点赞记录详情 /// /// /// [HttpGet("{Id}")] [ActionPermissionFilter(Permission = "tlikes:query")] public IActionResult GetT_Likes(long Id) { var response = _T_LikesService.GetInfo(Id); var info = response.Adapt(); return SUCCESS(info); } /// /// 添加点赞表,存储用户对帖子和评论的点赞记录 /// /// [HttpPost] [ActionPermissionFilter(Permission = "tlikes:add")] [Log(Title = "点赞表,存储用户对帖子和评论的点赞记录", BusinessType = BusinessType.INSERT)] public IActionResult AddT_Likes([FromBody] T_LikesDto parm) { var modal = parm.Adapt().ToCreate(HttpContext); var response = _T_LikesService.AddT_Likes(modal); return SUCCESS(response); } /// /// 更新点赞表,存储用户对帖子和评论的点赞记录 /// /// [HttpPut] [ActionPermissionFilter(Permission = "tlikes:edit")] [Log(Title = "点赞表,存储用户对帖子和评论的点赞记录", BusinessType = BusinessType.UPDATE)] public IActionResult UpdateT_Likes([FromBody] T_LikesDto parm) { if (parm.Id == 0) { throw new CustomException(ResultCode.CUSTOM_ERROR, "请求参数为空"); } var oldal = _T_LikesService.GetById(parm.Id); if (oldal == null) { throw new CustomException(ResultCode.CUSTOM_ERROR, "数据不存在"); } var modal = parm.Adapt(oldal); var response = _T_LikesService.UpdateT_Likes(modal); return ToResponse(response); } /// /// 删除点赞表,存储用户对帖子和评论的点赞记录 /// /// [HttpPost("delete/{ids}")] [ActionPermissionFilter(Permission = "tlikes:delete")] [Log(Title = "点赞表,存储用户对帖子和评论的点赞记录", BusinessType = BusinessType.DELETE)] public IActionResult DeleteT_Likes([FromRoute]string ids) { var idArr = Tools.SplitAndConvert(ids); return ToResponse(_T_LikesService.Delete(idArr)); } } }