package com.dsh.activity.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.dsh.activity.entity.BenefitsVideos; import com.dsh.activity.model.BenefitsVideoClassificationListVo; import com.dsh.activity.model.BenefitsVideosInfoVo; import com.dsh.activity.model.BenefitsVideosListVo; import com.dsh.activity.service.BenefitsVideosService; import com.dsh.activity.util.ResultUtil; import com.dsh.activity.util.TokenUtil; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; @RestController @RequestMapping("") public class BenefitVideoController { @Autowired private BenefitsVideosService bfvService; @Autowired private TokenUtil tokenUtil; @PostMapping("base/benefitVideo/getList") public BenefitsVideos getVideosWithIds(@RequestBody Integer id){ return bfvService.getOne(new QueryWrapper().eq("id",id).eq("state",1)); } @ResponseBody @PostMapping("/api/benefitsVideo/queryClassificationBenefitsVideosList") @ApiOperation(value = "获取视频列表", tags = {"APP-线上课得积分", "APP-看视频得奖励"}) @ApiImplicitParams({ @ApiImplicitParam(value = "位置(1=线上课得积分,2=看视频得奖励)", name = "position", dataType = "int", required = true), @ApiImplicitParam(value = "搜索内容", name = "search", dataType = "string", required = false), @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) public ResultUtil> queryClassificationBenefitsVideosList(Integer position, String search){ try { Integer uid = tokenUtil.getUserIdFormRedis(); if(null == uid){ return ResultUtil.tokenErr(); } List listVos = bfvService.queryClassificationBenefitsVideosList(uid, position, search); return ResultUtil.success(listVos); }catch (Exception e){ e.printStackTrace(); return ResultUtil.runErr(); } } @ResponseBody @PostMapping("/api/benefitsVideo/queryBenefitsVideosList") @ApiOperation(value = "获取视频列表", tags = {"APP-线上课得积分", "APP-看视频得奖励"}) @ApiImplicitParams({ @ApiImplicitParam(value = "视频分类id", name = "classificationId", dataType = "int", required = true), @ApiImplicitParam(value = "页码,首页1", name = "pageSize", dataType = "int", required = true), @ApiImplicitParam(value = "页条数", name = "pageNo", dataType = "int", required = true), @ApiImplicitParam(value = "搜索内容", name = "search", dataType = "string", required = false), @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) public ResultUtil> queryBenefitsVideosList(Integer classificationId, String search, Integer pageSize, Integer pageNo){ try { Integer uid = tokenUtil.getUserIdFormRedis(); if(null == uid){ return ResultUtil.tokenErr(); } List benefitsVideosListVos = bfvService.queryBenefitsVideosList(uid, classificationId, search, pageSize, pageNo); return ResultUtil.success(benefitsVideosListVos); }catch (Exception e){ e.printStackTrace(); return ResultUtil.runErr(); } } @ResponseBody @PostMapping("/api/benefitsVideo/queryBenefitsVideosInfo") @ApiOperation(value = "获取视频详情", tags = {"APP-线上课得积分", "APP-看视频得奖励"}) @ApiImplicitParams({ @ApiImplicitParam(value = "视频id", name = "id", dataType = "int", required = true), @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) public ResultUtil queryBenefitsVideosInfo(Integer id){ try { Integer uid = tokenUtil.getUserIdFormRedis(); if(null == uid){ return ResultUtil.tokenErr(); } BenefitsVideosInfoVo benefitsVideosInfoVo = bfvService.queryBenefitsVideosInfo(uid, id); return ResultUtil.success(benefitsVideosInfoVo); }catch (Exception e){ e.printStackTrace(); return ResultUtil.runErr(); } } @ResponseBody @PostMapping("/api/benefitsVideo/receiveAward") @ApiOperation(value = "观看视频结束后领取奖励", tags = {"APP-线上课得积分", "APP-看视频得奖励"}) @ApiImplicitParams({ @ApiImplicitParam(value = "视频id", name = "id", dataType = "int", required = true), @ApiImplicitParam(name = "Authorization", value = "用户token(Bearer +token)", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....") }) public ResultUtil receiveAward(Integer id) { try { Integer uid = tokenUtil.getUserIdFormRedis(); if(null == uid){ return ResultUtil.tokenErr(); } bfvService.receiveAward(uid, id); return ResultUtil.success(); }catch (Exception e){ e.printStackTrace(); return ResultUtil.runErr(); } } }