package com.nju.edu.eval.web.controller; import com.nju.edu.eval.aspect.auth.Authorized; import com.nju.edu.eval.data.entity.User; import com.nju.edu.eval.model.vo.course.CourseVO; import com.nju.edu.eval.publicdatas.enums.UserRole; import com.nju.edu.eval.service.CourseService; import com.nju.edu.eval.web.Response; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import springfox.documentation.annotations.ApiIgnore; /** * @author weijin */ @RestController @RequestMapping(path = "/api/course") @Api(tags = {"考试"}) public class CourseController { private final CourseService courseService; @Autowired public CourseController(CourseService courseService) { this.courseService = courseService; } @ApiOperation("创建课程") @PostMapping("") @Authorized(roles = {UserRole.TEACHER, UserRole.HR}) public Response createCourse(@ApiIgnore User user, @RequestBody CourseVO courseVO) { return Response.buildSuccess(courseService.createCourse(courseVO, user.getId())); } @ApiOperation("更新课程") @PutMapping("") @Authorized(roles = {UserRole.TEACHER, UserRole.HR}) public Response updateCourse(@ApiIgnore User user, @RequestBody CourseVO courseVO) { return Response.buildSuccess(courseService.updateCourse(courseVO, user.getId())); } @ApiOperation("根据教师获取课程") @GetMapping("") @Authorized(roles = {UserRole.TEACHER, UserRole.HR}) public Response getCourseByTeacher(@ApiIgnore User user) { return Response.buildSuccess(courseService.getCourseByTeacher(user.getId())); } }