CourseWareController.java 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. package cn.seecoder.courselearning.controller;
  2. import cn.seecoder.courselearning.service.CourseWareService;
  3. import cn.seecoder.courselearning.vo.CourseWareVO;
  4. import cn.seecoder.courselearning.vo.ResultVO;
  5. import org.springframework.web.bind.annotation.*;
  6. import javax.annotation.Resource;
  7. import java.util.List;
  8. @RestController
  9. @RequestMapping("/course_ware")
  10. public class CourseWareController {
  11. @Resource
  12. private CourseWareService courseWareService;
  13. /**
  14. * 获取单个课件的信息
  15. * @param uid 用户id
  16. * @param courseWareId 课件id
  17. */
  18. @GetMapping("/{courseWareId}")
  19. public CourseWareVO getCourseWare(@RequestParam(required = false, defaultValue = "") Integer uid,
  20. @PathVariable Integer courseWareId) {
  21. return courseWareService.getCourseWare(uid, courseWareId);
  22. }
  23. /**
  24. * 获取课件列表
  25. * 如果带参数uid,则需要判断该用户是否购买过课程
  26. * @param uid 用户id
  27. * @param courseId 课程id
  28. */
  29. @GetMapping("/course/{courseId}")
  30. public List<CourseWareVO> getCourseWares(@RequestParam(required = false, defaultValue = "") Integer uid,
  31. @PathVariable Integer courseId) {
  32. return courseWareService.getAllCourseWare(uid, courseId);
  33. }
  34. /**
  35. * 教师创建课件
  36. * @param courseWare 课件VO
  37. */
  38. @PostMapping("/create")
  39. public ResultVO<CourseWareVO> createCourseWare(@RequestBody CourseWareVO courseWare){
  40. return courseWareService.createCourseWare(courseWare);
  41. }
  42. /**
  43. * 教师更新课件
  44. * @param courseWare 课件VO
  45. */
  46. @PostMapping("/update")
  47. public ResultVO<CourseWareVO> updateCourseWare(@RequestBody CourseWareVO courseWare){
  48. return courseWareService.updateCourseWare(courseWare);
  49. }
  50. /**
  51. * 教师删除课件
  52. * @param courseWareId 课件Id
  53. */
  54. @PostMapping("/delete/{courseWareId}")
  55. public ResultVO<String> deleteCourseWare(@PathVariable Integer courseWareId){
  56. return courseWareService.deleteCourseWare(courseWareId);
  57. }
  58. }