package com.hollywood.manage.controller; import com.hollywood.common.redis.RedisAutoTemplate; import com.hollywood.manage.query.TVideoQuery; import com.hollywood.manage.service.TVideoService; import com.hollywood.manage.vo.TVideoVO; import com.hollywood.common.basic.ApiResult; import com.hollywood.common.basic.PageInfo; import com.hollywood.common.model.TVideo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.Set; /** *

* 短视频管理 前端控制器 *

* * @author xiaochen * @since 2024-02-29 */ @Api(tags = "短视频管理") @RestController @RequestMapping("/tVideo") public class TVideoController { private final TVideoService videoService; @Autowired private RedisAutoTemplate redisAutoTemplate; @Autowired public TVideoController(TVideoService videoService) { this.videoService = videoService; } /** * 获取短视频管理分页列表 */ @ApiOperation(value = "获取短视频管理分页列表") @PostMapping(value = "/pageList") public ApiResult> pageList(@RequestBody TVideoQuery query) { PageInfo tVideoVOPageInfo = videoService.pageList(query); for (TVideoVO record : tVideoVOPageInfo.getRecords()) { Set goodsUser = redisAutoTemplate.getSet(record.getId()+":video:good:"); record.setLikeCount(goodsUser.size()); } return ApiResult.success(tVideoVOPageInfo); } /** * 获取短视频管理详情 */ @ApiOperation(value = "获取短视频管理详情") @GetMapping(value = "/getDetailById") public ApiResult getDetailById(@RequestParam Long id) { return ApiResult.success(videoService.getById(id)); } /** * 通过id删除短视频 */ @ApiOperation(value = "通过id删除短视频") @DeleteMapping(value = "/deleteById") public ApiResult deleteById(@RequestParam Long id) { return ApiResult.success(videoService.removeById(id)); } /** * 短视频上下架 */ @ApiOperation(value = "短视频上下架") @GetMapping(value = "/upAndDown") public ApiResult upAndDown(@RequestParam Long id, @RequestParam Integer status) { return ApiResult.success(videoService.upAndDown(id,status)); } }