SlideService.java 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. package nju.seec.helper.service;
  2. import nju.seec.helper.dto.LoginUser;
  3. import nju.seec.helper.dto.SlideDTO;
  4. import nju.seec.helper.dto.modify.ModifySlideDTO;
  5. import nju.seec.helper.dto.modify.ModifySlideStateDTO;
  6. import nju.seec.helper.vo.SlideVO;
  7. import org.springframework.data.domain.Pageable;
  8. import java.util.List;
  9. /**
  10. * @author cst
  11. */
  12. public interface SlideService {
  13. /**
  14. * 创建幻灯片
  15. *
  16. * @param teacher
  17. * @param slideDTO
  18. * @return
  19. */
  20. SlideVO createSlide(LoginUser teacher, SlideDTO slideDTO);
  21. /**
  22. * 修改幻灯片
  23. *
  24. * @param user
  25. * @param modifySlideDTO
  26. * @return
  27. */
  28. SlideVO modifySlide(LoginUser user, ModifySlideDTO modifySlideDTO);
  29. /**
  30. * 修改幻灯片状态
  31. *
  32. * @param user
  33. * @param modifySlideStateDTO
  34. */
  35. void modifySlideState(LoginUser user, ModifySlideStateDTO modifySlideStateDTO);
  36. /**
  37. * 删除幻灯片(伪删除)
  38. *
  39. * @param user
  40. * @param slideId
  41. */
  42. void removeSlide(LoginUser user, Integer slideId);
  43. /**
  44. * 教师获取幻灯片
  45. *
  46. * @param teacher
  47. * @param key
  48. * @param pageable
  49. * @return
  50. */
  51. List<SlideVO> teacherGetSlides(LoginUser teacher, String key, Pageable pageable);
  52. /**
  53. * 教师基于课程获取幻灯片
  54. *
  55. * @param teacher
  56. * @param courseId
  57. * @param key
  58. * @param pageable
  59. * @return
  60. */
  61. List<SlideVO> teacherGetSlidesByCourse(LoginUser teacher, Integer courseId, String key, Pageable pageable);
  62. /**
  63. * 教师获取幻灯片
  64. *
  65. * @param student
  66. * @param courseId
  67. * @param key
  68. * @param pageable
  69. * @return
  70. */
  71. List<SlideVO> studentGetSlidesByCourse(LoginUser student, Integer courseId, String key, Pageable pageable);
  72. /**
  73. * 获取幻灯片链接
  74. *
  75. * @param user
  76. * @param slideId
  77. * @return
  78. */
  79. String getSlideUrl(LoginUser user, Integer slideId);
  80. }