|
|
@@ -4,6 +4,7 @@ import nju.seec.helper.aspect.auth.Auth;
|
|
|
import nju.seec.helper.controller.response.PageResourceResponse;
|
|
|
import nju.seec.helper.controller.response.ResourceResponse;
|
|
|
import nju.seec.helper.dto.LoginUser;
|
|
|
+import nju.seec.helper.dto.ModifySlideDTO;
|
|
|
import nju.seec.helper.dto.SlideDTO;
|
|
|
import nju.seec.helper.service.SlideService;
|
|
|
import nju.seec.helper.util.enums.UserType;
|
|
|
@@ -16,6 +17,8 @@ import javax.validation.Valid;
|
|
|
import java.util.List;
|
|
|
|
|
|
/**
|
|
|
+ * 幻灯片
|
|
|
+ *
|
|
|
* @author cst
|
|
|
*/
|
|
|
@RestController
|
|
|
@@ -27,6 +30,9 @@ public class SlideController {
|
|
|
this.slideService = slideService;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 教师创建幻灯片
|
|
|
+ */
|
|
|
@Auth(roles = UserType.TEACHER, message = "创建幻灯片")
|
|
|
@PostMapping
|
|
|
public ResourceResponse<SlideVO> createSlide(LoginUser user,
|
|
|
@@ -35,6 +41,20 @@ public class SlideController {
|
|
|
return ResourceResponse.of(slideVO);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 教师修改幻灯片
|
|
|
+ */
|
|
|
+ @Auth(roles = UserType.TEACHER, message = "修改幻灯片")
|
|
|
+ @PutMapping
|
|
|
+ public ResourceResponse<SlideVO> modifySlide(LoginUser user,
|
|
|
+ @Valid @RequestBody ModifySlideDTO modifySlideDTO) {
|
|
|
+ SlideVO slideVO = slideService.modifySlide(user, modifySlideDTO);
|
|
|
+ return ResourceResponse.of(slideVO);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 教师获取幻灯片
|
|
|
+ */
|
|
|
@Auth(roles = UserType.TEACHER, message = "获取幻灯片列表")
|
|
|
@GetMapping
|
|
|
public PageResourceResponse<SlideVO> teacherGetSlides(LoginUser user,
|
|
|
@@ -44,6 +64,9 @@ public class SlideController {
|
|
|
return PageResourceResponse.of(slideVOList, pageable.getPageNumber(), pageable.getPageSize());
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 学生基于课程获取幻灯片
|
|
|
+ */
|
|
|
@Auth(roles = UserType.STUDENT, message = "获取幻灯片列表")
|
|
|
@GetMapping("/course/{courseId}")
|
|
|
public PageResourceResponse<SlideVO> studentGetSlides(LoginUser user,
|
|
|
@@ -54,8 +77,11 @@ public class SlideController {
|
|
|
return PageResourceResponse.of(slideVOList, pageable.getPageNumber(), pageable.getPageSize());
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 获取幻灯片链接
|
|
|
+ */
|
|
|
@Auth(roles = {UserType.TEACHER, UserType.STUDENT}, message = "获取幻灯片链接")
|
|
|
- @GetMapping("/url/{slideId}")
|
|
|
+ @GetMapping("/{slideId}/url")
|
|
|
public ResourceResponse<String> getSlideUrl(LoginUser user,
|
|
|
@PathVariable Integer slideId) {
|
|
|
String slideUrl = slideService.getSlideUrl(user, slideId);
|