| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140 |
- package com.njuzr.eaibackend.controller;
- import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
- import com.njuzr.eaibackend.dto.CourseDTO;
- import com.njuzr.eaibackend.dto.EnrollDTO;
- import com.njuzr.eaibackend.po.Course;
- import com.njuzr.eaibackend.po.User;
- import com.njuzr.eaibackend.service.CourseService;
- import com.njuzr.eaibackend.vo.CourseVO;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.security.access.prepost.PreAuthorize;
- import org.springframework.validation.annotation.Validated;
- import org.springframework.web.bind.annotation.*;
- /**
- * @author: Leonezhurui
- * @Date: 2024/3/5 - 16:34
- * @Package: EAI-Backend
- */
- @RestController
- @RequestMapping("/api/course")
- public class CourseController {
- private final CourseService courseService;
- @Autowired
- public CourseController(CourseService courseService) {
- this.courseService = courseService;
- }
- /**
- * 分页返回所有的课程信息
- * @return
- */
- @GetMapping("/findAll")
- public MyResponse findAllCourses(
- @RequestParam(value = "page", defaultValue = "1") int currentPage,
- @RequestParam(value = "size", defaultValue = "10") int pageSize
- ) {
- return MyResponse.success("");
- }
- // @GetMapping()
- // public MyResponse searchCourses(
- // @RequestParam String courseName,
- // @RequestParam String
- // ) {
- //
- // }
- /**
- * 根据学生Id获取其所选的所有课程的信息
- * @param studentId
- * @return
- */
- @GetMapping("/byStudent/{studentId}")
- public MyResponse findByStudentId(
- @PathVariable Long studentId,
- @RequestParam(defaultValue = "0") int page,
- @RequestParam(defaultValue = "10") int size
- ) {
- return MyResponse.success("");
- }
- /**
- * 根据老师Id获取的其所创建的所有课程信息
- * @param teacherId
- * @return
- */
- @PreAuthorize("hasRole('TEACHER')")
- @GetMapping("/byTeacher/{teacherId}")
- public MyResponse findByTeacherId(
- @PathVariable Long teacherId,
- @RequestParam(defaultValue = "0") int page,
- @RequestParam(defaultValue = "10") int size
- ) {
- return MyResponse.success("");
- }
- /**
- * 根据课程Id,获取某个课程的详细信息
- * @param courseId
- * @param currentPage
- * @param pageSize
- * @return
- */
- @GetMapping("/{courseId}")
- public MyResponse findByCourseId(
- @PathVariable Long courseId,
- @RequestParam(value = "page", defaultValue = "1") int currentPage,
- @RequestParam(value = "size", defaultValue = "10") int pageSize
- ) {
- Page<Course> page = new Page<>(currentPage, pageSize);
- return MyResponse.success("");
- }
- /**
- * 创建课程
- * @param courseDTO
- * @return
- */
- @PreAuthorize("hasRole('TEACHER') or hasRole('ADMIN')")
- @PostMapping
- public MyResponse createCourse(@Validated @RequestBody CourseDTO courseDTO) {
- CourseVO courseVO = courseService.createCourse(courseDTO);
- return MyResponse.success(courseVO);
- }
- @PutMapping
- public MyResponse updateCourse(@RequestBody CourseDTO courseDTO) {
- return MyResponse.success("");
- }
- @PutMapping("/enrollCode")
- public MyResponse updateEnrollCode(@RequestParam String enrollCode) {
- return MyResponse.success("");
- }
- @DeleteMapping
- public MyResponse deleteCourse(@RequestParam Long courseId) {
- return MyResponse.success("");
- }
- /**
- * 选课,通过studentId和courseId,完成选课
- * @param enrollDTO
- * @return
- */
- @PostMapping("/enroll")
- public MyResponse enroll(@RequestBody EnrollDTO enrollDTO) {
- return MyResponse.success("");
- }
- }
|