Преглед на файлове

improvement: 修改RestfulApi路径

ChenSiTong преди 6 години
родител
ревизия
9d97b1b175
променени са 21 файла, в които са добавени 108 реда и са изтрити 115 реда
  1. 19 22
      src/main/java/nju/seec/helper/controller/CourseController.java
  2. 1 1
      src/main/java/nju/seec/helper/controller/CourseFileController.java
  3. 4 3
      src/main/java/nju/seec/helper/controller/NoticeController.java
  4. 24 23
      src/main/java/nju/seec/helper/controller/QuizController.java
  5. 27 29
      src/main/java/nju/seec/helper/controller/SlideController.java
  6. 4 0
      src/main/java/nju/seec/helper/controller/response/PageResponse.java
  7. 0 3
      src/main/java/nju/seec/helper/dto/course/CourseDTO.java
  8. 0 3
      src/main/java/nju/seec/helper/dto/notice/NoticeDTO.java
  9. 0 3
      src/main/java/nju/seec/helper/dto/quiz/QuizDTO.java
  10. 3 1
      src/main/java/nju/seec/helper/dto/quiz/QuizStudentAnswerDTO.java
  11. 0 3
      src/main/java/nju/seec/helper/dto/slide/SlideDTO.java
  12. 0 2
      src/main/java/nju/seec/helper/dto/slide/SlideFileDTO.java
  13. 0 2
      src/main/java/nju/seec/helper/dto/slide/SlideStateDTO.java
  14. 2 1
      src/main/java/nju/seec/helper/service/CourseService.java
  15. 3 2
      src/main/java/nju/seec/helper/service/NoticeService.java
  16. 2 1
      src/main/java/nju/seec/helper/service/QuizService.java
  17. 6 3
      src/main/java/nju/seec/helper/service/SlideService.java
  18. 2 2
      src/main/java/nju/seec/helper/service/impl/CourseServiceImpl.java
  19. 3 3
      src/main/java/nju/seec/helper/service/impl/NoticeServiceImpl.java
  20. 2 2
      src/main/java/nju/seec/helper/service/impl/QuizServiceImpl.java
  21. 6 6
      src/main/java/nju/seec/helper/service/impl/SlideServiceImpl.java

+ 19 - 22
src/main/java/nju/seec/helper/controller/CourseController.java

@@ -54,10 +54,11 @@ public class CourseController {
      * 教师修改课程
      */
     @Auth(roles = UserType.TEACHER, message = "修改课程")
-    @PutMapping
+    @PutMapping("/{courseId}")
     public CourseVO modifyCourse(LoginUser user,
+                                 @PathVariable Long courseId,
                                  @Validated(Modify.class) @RequestBody CourseDTO courseDTO) {
-        return courseService.modifyCourse(user, courseDTO);
+        return courseService.modifyCourse(user, courseId, courseDTO);
     }
 
     /**
@@ -74,7 +75,7 @@ public class CourseController {
      * 学生退课
      */
     @Auth(roles = UserType.STUDENT, message = "退课")
-    @PostMapping("/quit/{courseId}")
+    @PostMapping("/{courseId}/quit")
     public void quitCourse(LoginUser user,
                            @PathVariable Long courseId) {
         courseService.quitCourse(user, courseId);
@@ -83,7 +84,7 @@ public class CourseController {
     /**
      * 获取课程信息(无需登录)
      */
-    @GetMapping
+    @GetMapping("/all")
     public PageResponse<CourseVO> getCourses(@RequestParam(required = false, defaultValue = "") String key,
                                              @PageableDefault(Integer.MAX_VALUE) Pageable pageable) {
         return PageResponse.of(courseService.getCourses(key, pageable));
@@ -92,23 +93,19 @@ public class CourseController {
     /**
      * 教师获取所创课程
      */
-    @Auth(roles = UserType.TEACHER, message = "获取所创课程")
-    @GetMapping("/teacher")
-    public PageResponse<CourseVO> teacherGetCourses(LoginUser user,
-                                                    @RequestParam(required = false, defaultValue = "") String key,
-                                                    @PageableDefault(Integer.MAX_VALUE) Pageable pageable) {
-        return PageResponse.of(courseService.teacherGetCourses(user, key, pageable));
-    }
-
-    /**
-     * 学生获取所选课程
-     */
-    @Auth(roles = UserType.STUDENT, message = "获取所选课程")
-    @GetMapping("/student")
-    public PageResponse<CourseVO> studentGetCourses(LoginUser user,
-                                                    @RequestParam(required = false, defaultValue = "") String key,
-                                                    @PageableDefault(Integer.MAX_VALUE) Pageable pageable) {
-        return PageResponse.of(courseService.studentGetCourses(user, key, pageable));
+    @Auth(roles = {UserType.TEACHER, UserType.STUDENT}, message = "获取课程列表")
+    @GetMapping
+    public PageResponse<CourseVO> getCourses(LoginUser user,
+                                             @RequestParam(required = false, defaultValue = "") String key,
+                                             @PageableDefault(Integer.MAX_VALUE) Pageable pageable) {
+        switch (user.getType()) {
+            case TEACHER:
+                return PageResponse.of(courseService.teacherGetCourses(user, key, pageable));
+            case STUDENT:
+                return PageResponse.of(courseService.studentGetCourses(user, key, pageable));
+            default:
+                return PageResponse.empty();
+        }
     }
 
     /**
@@ -130,7 +127,7 @@ public class CourseController {
     }
 
     @Auth(roles = UserType.TEACHER, message = "获取选课名单")
-    @GetMapping("/{courseId}/choose-student")
+    @GetMapping("/{courseId}/students")
     public PageResponse<UserVO> getChooseStudents(LoginUser user,
                                                   @PathVariable Long courseId,
                                                   @RequestParam(required = false, defaultValue = "") String key,

+ 1 - 1
src/main/java/nju/seec/helper/controller/CourseFileController.java

@@ -16,7 +16,7 @@ import org.springframework.web.bind.annotation.*;
  * @author cst
  */
 @RestController
-@RequestMapping("/api/courseFile")
+@RequestMapping("/api/course-file")
 public class CourseFileController {
     private final CourseFileService courseFileService;
 

+ 4 - 3
src/main/java/nju/seec/helper/controller/NoticeController.java

@@ -30,14 +30,15 @@ public class NoticeController {
     @PostMapping
     public NoticeVO createNotice(LoginUser user,
                                  @Validated(Create.class) @RequestBody NoticeDTO noticeDTO) {
-        return noticeService.create(user, noticeDTO);
+        return noticeService.createNotice(user, noticeDTO);
     }
 
     @Auth(roles = UserType.TEACHER, message = "修改公告")
-    @PutMapping
+    @PutMapping("/{noticeId}")
     public NoticeVO modifyNotice(LoginUser user,
+                                 @PathVariable Long noticeId,
                                  @Validated(Modify.class) @RequestBody NoticeDTO noticeDTO) {
-        return noticeService.modify(user, noticeDTO);
+        return noticeService.modifyNotice(user, noticeId, noticeDTO);
     }
 
     @Auth(roles = UserType.TEACHER, message = "删除公告")

+ 24 - 23
src/main/java/nju/seec/helper/controller/QuizController.java

@@ -13,6 +13,7 @@ import nju.seec.helper.util.enums.QuizState;
 import nju.seec.helper.util.enums.UserType;
 import nju.seec.helper.vo.quiz.QuizStudentAnswerVO;
 import nju.seec.helper.vo.quiz.QuizVO;
+import org.springframework.data.domain.Page;
 import org.springframework.data.domain.Pageable;
 import org.springframework.data.web.PageableDefault;
 import org.springframework.validation.annotation.Validated;
@@ -38,39 +39,39 @@ public class QuizController {
     }
 
     /**
-     * 老师基于课件获取测试列表
+     * 基于课件获取测试列表
      */
-    @Auth(roles = UserType.TEACHER, message = "获得测试列表")
-    @GetMapping("/teacher/slide/{slideId}")
-    public PageResponse<QuizVO> teacherGetQuizzesBySlide(LoginUser user,
+    @Auth(roles = {UserType.TEACHER, UserType.STUDENT}, message = "获得测试列表")
+    @GetMapping("/slide/{slideId}")
+    public PageResponse<QuizVO> getQuizzesBySlide(LoginUser user,
                                                          @PathVariable Long slideId,
                                                          @RequestParam(required = false, defaultValue = "") String key,
                                                          @PageableDefault(Integer.MAX_VALUE) Pageable pageable) {
-        return PageResponse.of(quizService.teacherGetQuizzesBySlide(user, slideId, key, pageable));
+        switch (user.getType()) {
+            case TEACHER:
+                return PageResponse.of(quizService.teacherGetQuizzesBySlide(user, slideId, key, pageable));
+            case STUDENT:
+                return PageResponse.of(quizService.studentGetQuizzesBySlide(user, slideId, key, pageable));
+            default:
+                return PageResponse.empty();
+        }
     }
 
     /**
-     * 学生基于课件获取测试列表
-     */
-    @Auth(roles = UserType.STUDENT, message = "获得测试列表")
-    @GetMapping("/student/slide/{slideId}")
-    public PageResponse<QuizVO> studentGetQuizzesBySlide(LoginUser user,
-                                                         @PathVariable Long slideId,
-                                                         @RequestParam(required = false, defaultValue = "") String key,
-                                                         @PageableDefault(Integer.MAX_VALUE) Pageable pageable) {
-        return PageResponse.of(quizService.studentGetQuizzesBySlide(user, slideId, key, pageable));
-    }
-
-    /**
-     * 学生基于状态获取测试列表
+     * 基于状态获取测试列表
      */
     @Auth(roles = UserType.STUDENT, message = "获取测试列表")
-    @GetMapping("/student")
+    @GetMapping("/state")
     public PageResponse<QuizVO> studentGetQuizzesByState(LoginUser user,
                                                          QuizState state,
                                                          @RequestParam(required = false, defaultValue = "") String key,
                                                          @PageableDefault(Integer.MAX_VALUE) Pageable pageable) {
-        return PageResponse.of(quizService.studentGetQuizzesByState(user, state, key, pageable));
+        switch (user.getType()) {
+            case STUDENT:
+                return PageResponse.of(quizService.studentGetQuizzesByState(user, state, key, pageable));
+            default:
+                return PageResponse.empty();
+        }
     }
 
     /**
@@ -95,9 +96,9 @@ public class QuizController {
      * 修改测试 (仅限未开始时可以修改)
      */
     @Auth(roles = {UserType.TEACHER}, message = "修改测试")
-    @PutMapping
-    public QuizVO updateQuiz(LoginUser user, @Validated(Modify.class) @RequestBody QuizDTO quizDTO) {
-        return quizService.modifyQuiz(user, quizDTO);
+    @PutMapping("/{quizId}")
+    public QuizVO updateQuiz(LoginUser user, @PathVariable Long quizId, @Validated(Modify.class) @RequestBody QuizDTO quizDTO) {
+        return quizService.modifyQuiz(user, quizId, quizDTO);
     }
 
     /**

+ 27 - 29
src/main/java/nju/seec/helper/controller/SlideController.java

@@ -46,30 +46,33 @@ public class SlideController {
      * 教师修改课件
      */
     @Auth(roles = UserType.TEACHER, message = "修改课件")
-    @PutMapping
+    @PutMapping("/{slideId}")
     public SlideVO modifySlide(LoginUser user,
+                               @PathVariable Long slideId,
                                @Validated(Modify.class) @RequestBody SlideDTO slideDTO) {
-        return slideService.modifySlide(user, slideDTO);
+        return slideService.modifySlide(user, slideId, slideDTO);
     }
 
     /**
      * 教师修改课件状态
      */
     @Auth(roles = UserType.TEACHER, message = "修改课件状态")
-    @PutMapping("/state")
+    @PutMapping("/{slideId}/state")
     public void modifySlideState(LoginUser user,
+                                 @PathVariable Long slideId,
                                  @Validated @RequestBody SlideStateDTO slideStateDTO) {
-        slideService.modifySlideState(user, slideStateDTO);
+        slideService.modifySlideState(user, slideId, slideStateDTO);
     }
 
     /**
      * 教师修改课件文件
      */
     @Auth(roles = UserType.TEACHER, message = "修改课件文件")
-    @PutMapping("/file")
+    @PutMapping("/{slideId}/file")
     public void modifySlideFile(LoginUser user,
+                                @PathVariable Long slideId,
                                 @Validated SlideFileDTO slideFileDTO) {
-        slideService.modifySlideFile(user, slideFileDTO);
+        slideService.modifySlideFile(user, slideId, slideFileDTO);
     }
 
     /**
@@ -86,35 +89,30 @@ public class SlideController {
      * 教师获取课件
      */
     @Auth(roles = UserType.TEACHER, message = "获取课件")
-    @GetMapping("/teacher")
-    public PageResponse<SlideVO> teacherGetSlides(LoginUser user,
-                                                  @RequestParam(required = false, defaultValue = "") String key,
-                                                  @PageableDefault(size = Integer.MAX_VALUE) Pageable pageable) {
+    @GetMapping
+    public PageResponse<SlideVO> getSlides(LoginUser user,
+                                           @RequestParam(required = false, defaultValue = "") String key,
+                                           @PageableDefault(size = Integer.MAX_VALUE) Pageable pageable) {
         return PageResponse.of(slideService.teacherGetSlides(user, key, pageable));
     }
 
     /**
-     * 教师基于课程获取课件
+     * 基于课程获取课件
      */
     @Auth(roles = UserType.TEACHER, message = "获取课件")
-    @GetMapping("/teacher/course/{courseId}")
-    public PageResponse<SlideVO> teacherGetSlidesByCourse(LoginUser user,
-                                                          @PathVariable Long courseId,
-                                                          @RequestParam(required = false, defaultValue = "") String key,
-                                                          @PageableDefault(size = Integer.MAX_VALUE) Pageable pageable) {
-        return PageResponse.of(slideService.teacherGetSlidesByCourse(user, courseId, key, pageable));
-    }
-
-    /**
-     * 学生基于课程获取课件
-     */
-    @Auth(roles = UserType.STUDENT, message = "获取课件")
-    @GetMapping("/student/course/{courseId}")
-    public PageResponse<SlideVO> studentGetSlidesByCourse(LoginUser user,
-                                                          @PathVariable Long courseId,
-                                                          @RequestParam(required = false, defaultValue = "") String key,
-                                                          @PageableDefault(size = Integer.MAX_VALUE) Pageable pageable) {
-        return PageResponse.of(slideService.studentGetSlidesByCourse(user, courseId, key, pageable));
+    @GetMapping("/course/{courseId}")
+    public PageResponse<SlideVO> getSlidesByCourse(LoginUser user,
+                                                   @PathVariable Long courseId,
+                                                   @RequestParam(required = false, defaultValue = "") String key,
+                                                   @PageableDefault(size = Integer.MAX_VALUE) Pageable pageable) {
+        switch (user.getType()) {
+            case TEACHER:
+                return PageResponse.of(slideService.teacherGetSlidesByCourse(user, courseId, key, pageable));
+            case STUDENT:
+                return PageResponse.of(slideService.studentGetSlidesByCourse(user, courseId, key, pageable));
+            default:
+                return PageResponse.empty();
+        }
     }
 
     /**

+ 4 - 0
src/main/java/nju/seec/helper/controller/response/PageResponse.java

@@ -20,6 +20,10 @@ public class PageResponse<T> {
         return new PageResponse<>(page.getContent(), PageInfo.of(page.getNumber(), page.getSize(), page.getTotalPages(), page.getTotalElements()));
     }
 
+    public static <T> PageResponse<T> empty() {
+        return PageResponse.of(Page.empty());
+    }
+
     @Data
     @AllArgsConstructor(access = AccessLevel.PRIVATE)
     public static class PageInfo {

+ 0 - 3
src/main/java/nju/seec/helper/dto/course/CourseDTO.java

@@ -1,7 +1,6 @@
 package nju.seec.helper.dto.course;
 
 import lombok.Data;
-import nju.seec.helper.dto.groups.Modify;
 import org.hibernate.validator.constraints.Length;
 
 import javax.validation.constraints.NotBlank;
@@ -14,8 +13,6 @@ import java.io.Serializable;
 @Data
 public class CourseDTO implements Serializable {
     private static final long serialVersionUID = 4747833899049996472L;
-    @NotNull(message = "缺少课程ID", groups = Modify.class)
-    private Long id;
     @NotBlank(message = "课程名不能为空")
     @Length(max = 50, message = "课程名长度不能超过50")
     private String name;

+ 0 - 3
src/main/java/nju/seec/helper/dto/notice/NoticeDTO.java

@@ -2,7 +2,6 @@ package nju.seec.helper.dto.notice;
 
 import lombok.Data;
 import nju.seec.helper.dto.groups.Create;
-import nju.seec.helper.dto.groups.Modify;
 import org.hibernate.validator.constraints.Length;
 
 import javax.validation.constraints.NotBlank;
@@ -15,8 +14,6 @@ import java.io.Serializable;
 @Data
 public class NoticeDTO implements Serializable {
     private static final long serialVersionUID = 5254633675811687992L;
-    @NotNull(message = "缺少公告ID", groups = Modify.class)
-    private Long id;
     @NotNull(message = "缺少课程ID", groups = Create.class)
     private Long courseId;
     @NotBlank(message = "标题不能为空")

+ 0 - 3
src/main/java/nju/seec/helper/dto/quiz/QuizDTO.java

@@ -2,7 +2,6 @@ package nju.seec.helper.dto.quiz;
 
 import lombok.Data;
 import nju.seec.helper.dto.groups.Create;
-import nju.seec.helper.dto.groups.Modify;
 import nju.seec.helper.util.enums.QuizType;
 import org.hibernate.validator.constraints.Length;
 
@@ -20,8 +19,6 @@ import java.util.List;
 @Data
 public class QuizDTO implements Serializable {
     private static final long serialVersionUID = -5856536594930871925L;
-    @NotNull(message = "缺少测试ID", groups = Modify.class)
-    private Long id;
     @NotBlank(message = "测试名不能为空")
     @Length(max = 50, message = "测试名长度不能超过50")
     private String name;

+ 3 - 1
src/main/java/nju/seec/helper/dto/quiz/QuizStudentAnswerDTO.java

@@ -4,13 +4,15 @@ import lombok.Data;
 
 import javax.validation.constraints.NotEmpty;
 import javax.validation.constraints.NotNull;
+import java.io.Serializable;
 import java.util.Map;
 
 /**
  * @author cst
  */
 @Data
-public class QuizStudentAnswerDTO {
+public class QuizStudentAnswerDTO implements Serializable {
+    private static final long serialVersionUID = -5846899734313166305L;
     @NotNull(message = "缺少测试ID")
     private Long quizId;
 

+ 0 - 3
src/main/java/nju/seec/helper/dto/slide/SlideDTO.java

@@ -2,7 +2,6 @@ package nju.seec.helper.dto.slide;
 
 import lombok.Data;
 import nju.seec.helper.dto.groups.Create;
-import nju.seec.helper.dto.groups.Modify;
 import nju.seec.helper.util.enums.SlideState;
 import org.hibernate.validator.constraints.Length;
 import org.springframework.web.multipart.MultipartFile;
@@ -17,8 +16,6 @@ import java.io.Serializable;
 @Data
 public class SlideDTO implements Serializable {
     private static final long serialVersionUID = -4127324852405823476L;
-    @NotNull(message = "缺少课件ID", groups = Modify.class)
-    private Long id;
     @NotNull(message = "缺少课程ID", groups = Create.class)
     private Long courseId;
     @NotBlank(message = "课件名不能为空")

+ 0 - 2
src/main/java/nju/seec/helper/dto/slide/SlideFileDTO.java

@@ -12,8 +12,6 @@ import java.io.Serializable;
 @Data
 public class SlideFileDTO implements Serializable {
     private static final long serialVersionUID = -3477483332353577715L;
-    @NotNull(message = "缺少课件ID")
-    private Long id;
     @NotNull(message = "缺少文件")
     private MultipartFile file;
 }

+ 0 - 2
src/main/java/nju/seec/helper/dto/slide/SlideStateDTO.java

@@ -12,8 +12,6 @@ import java.io.Serializable;
 @Data
 public class SlideStateDTO implements Serializable {
     private static final long serialVersionUID = 8163158733090757629L;
-    @NotNull(message = "缺少课件ID")
-    private Long id;
     @NotNull(message = "缺少状态")
     private SlideState state;
 }

+ 2 - 1
src/main/java/nju/seec/helper/service/CourseService.java

@@ -25,10 +25,11 @@ public interface CourseService {
      * 修改课程
      *
      * @param user
+     * @param courseId
      * @param courseDTO
      * @return
      */
-    CourseVO modifyCourse(LoginUser user, CourseDTO courseDTO);
+    CourseVO modifyCourse(LoginUser user, Long courseId, CourseDTO courseDTO);
 
     /**
      * 删除课程(伪删除)

+ 3 - 2
src/main/java/nju/seec/helper/service/NoticeService.java

@@ -17,16 +17,17 @@ public interface NoticeService {
      * @param noticeDTO
      * @return
      */
-    NoticeVO create(LoginUser user, NoticeDTO noticeDTO);
+    NoticeVO createNotice(LoginUser user, NoticeDTO noticeDTO);
 
     /**
      * 修改公告
      *
      * @param user
+     * @param noticeId
      * @param noticeDTO
      * @return
      */
-    NoticeVO modify(LoginUser user, NoticeDTO noticeDTO);
+    NoticeVO modifyNotice(LoginUser user, Long noticeId, NoticeDTO noticeDTO);
 
     /**
      * 取得公告

+ 2 - 1
src/main/java/nju/seec/helper/service/QuizService.java

@@ -31,10 +31,11 @@ public interface QuizService {
      * 修改测试
      *
      * @param user
+     * @param quizId
      * @param quizDTO
      * @return
      */
-    QuizVO modifyQuiz(LoginUser user, QuizDTO quizDTO);
+    QuizVO modifyQuiz(LoginUser user, Long quizId, QuizDTO quizDTO);
 
     /**
      * 删除测试

+ 6 - 3
src/main/java/nju/seec/helper/service/SlideService.java

@@ -25,26 +25,29 @@ public interface SlideService {
      * 修改课件
      *
      * @param user
+     * @param slideId
      * @param slideDTO
      * @return
      */
-    SlideVO modifySlide(LoginUser user, SlideDTO slideDTO);
+    SlideVO modifySlide(LoginUser user, Long slideId, SlideDTO slideDTO);
 
     /**
      * 修改课件状态
      *
      * @param user
+     * @param slideId
      * @param slideStateDTO
      */
-    void modifySlideState(LoginUser user, SlideStateDTO slideStateDTO);
+    void modifySlideState(LoginUser user, Long slideId, SlideStateDTO slideStateDTO);
 
     /**
      * 修改课件文件
      *
      * @param user
+     * @param slideId
      * @param slideFileDTO
      */
-    void modifySlideFile(LoginUser user, SlideFileDTO slideFileDTO);
+    void modifySlideFile(LoginUser user, Long slideId, SlideFileDTO slideFileDTO);
 
     /**
      * 删除课件(伪删除)

+ 2 - 2
src/main/java/nju/seec/helper/service/impl/CourseServiceImpl.java

@@ -57,8 +57,8 @@ public class CourseServiceImpl implements CourseService {
 
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public CourseVO modifyCourse(LoginUser user, CourseDTO courseDTO) {
-        Course course = courseDAO.findCourseById(courseDTO.getId());
+    public CourseVO modifyCourse(LoginUser user, Long courseId, CourseDTO courseDTO) {
+        Course course = courseDAO.findCourseById(courseId);
 
         // 检查
         AuthUtils.checkDataAuth(user.getId(), course.getTeacher().getId(), "您无权修改该课程");

+ 3 - 3
src/main/java/nju/seec/helper/service/impl/NoticeServiceImpl.java

@@ -41,7 +41,7 @@ public class NoticeServiceImpl implements NoticeService {
 
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public NoticeVO create(LoginUser user, NoticeDTO noticeDTO) {
+    public NoticeVO createNotice(LoginUser user, NoticeDTO noticeDTO) {
         Course course = courseDAO.findCourseById(noticeDTO.getCourseId());
         AuthUtils.checkDataAuth(user.getId(), course.getTeacher().getId(), "您无权创建该课程的公告");
         Notice notice = new Notice()
@@ -57,8 +57,8 @@ public class NoticeServiceImpl implements NoticeService {
 
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public NoticeVO modify(LoginUser user, NoticeDTO noticeDTO) {
-        Notice notice = noticeDAO.findNoticeById(noticeDTO.getId());
+    public NoticeVO modifyNotice(LoginUser user, Long noticeId, NoticeDTO noticeDTO) {
+        Notice notice = noticeDAO.findNoticeById(noticeId);
         AuthUtils.checkDataAuth(user.getId(), notice.getTeacherId(), "您无权修改该公告");
         notice.setTitle(noticeDTO.getTitle())
                 .setContent(noticeDTO.getContent());

+ 2 - 2
src/main/java/nju/seec/helper/service/impl/QuizServiceImpl.java

@@ -76,8 +76,8 @@ public class QuizServiceImpl implements QuizService {
 
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public QuizVO modifyQuiz(LoginUser user, QuizDTO quizDTO) {
-        Quiz quiz = quizDAO.findQuizById(quizDTO.getId());
+    public QuizVO modifyQuiz(LoginUser user, Long quizId, QuizDTO quizDTO) {
+        Quiz quiz = quizDAO.findQuizById(quizId);
 
         AuthUtils.checkDataAuth(user.getId(), quiz.getId(), "您无权修改该测试");
         checkSubmit(quiz);

+ 6 - 6
src/main/java/nju/seec/helper/service/impl/SlideServiceImpl.java

@@ -101,8 +101,8 @@ public class SlideServiceImpl implements SlideService {
 
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public SlideVO modifySlide(LoginUser user, SlideDTO slideDTO) {
-        Slide slide = slideDAO.findSlideById(slideDTO.getId());
+    public SlideVO modifySlide(LoginUser user, Long slideId, SlideDTO slideDTO) {
+        Slide slide = slideDAO.findSlideById(slideId);
         AuthUtils.checkDataAuth(user.getId(), slide.getTeacher().getId(), "您无权修改该课件");
 
         checkSameName(slide.getId(), slide.getCourse().getId(), slideDTO.getName());
@@ -135,8 +135,8 @@ public class SlideServiceImpl implements SlideService {
 
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public void modifySlideState(LoginUser user, SlideStateDTO slideStateDTO) {
-        Slide slide = slideDAO.findSlideById(slideStateDTO.getId());
+    public void modifySlideState(LoginUser user, Long slideId, SlideStateDTO slideStateDTO) {
+        Slide slide = slideDAO.findSlideById(slideId);
         AuthUtils.checkDataAuth(user.getId(), slide.getTeacher().getId(), "您无权修改该课件状态");
 
         slide.setState(slideStateDTO.getState());
@@ -155,8 +155,8 @@ public class SlideServiceImpl implements SlideService {
     @Transactional(rollbackFor = Exception.class)
     @SneakyThrows
     @Override
-    public void modifySlideFile(LoginUser user, SlideFileDTO slideFileDTO) {
-        Slide slide = slideDAO.findSlideById(slideFileDTO.getId());
+    public void modifySlideFile(LoginUser user, Long slideId, SlideFileDTO slideFileDTO) {
+        Slide slide = slideDAO.findSlideById(slideId);
         AuthUtils.checkDataAuth(user.getId(), slide.getTeacher().getId(), "您无权修改该课件文件");
 
         MultipartFile file = slideFileDTO.getFile();