package nju.seec.helper.service; import nju.seec.helper.entity.Quiz; import nju.seec.helper.util.enums.QuizState; import nju.seec.helper.util.enums.SlideState; import nju.seec.helper.util.enums.UserType; import nju.seec.helper.vo.quiz.QuizVO; import org.springframework.data.domain.Page; import org.springframework.data.domain.Pageable; import org.springframework.transaction.annotation.Transactional; import java.util.Collection; import java.util.List; public interface QuizService { @Transactional Quiz CreateQuiz(String name, Integer uid, SlideState quizTime, Integer slideId, List questions); Page getAllBasicQuizBySlide(Integer slideId, Pageable pageable, QuizState state, Integer uid); QuizVO combineQuiz(Long quizId); QuizVO combineQuizWithAnswer(Long quizId, Integer uid, UserType type); String deleteQuiz(Long quizId); Quiz modifyQuiz(Long quizId, String name, List questions, SlideState quizTime, String slideId); Page getAllBasicQuizByUser(Pageable pageable, QuizState state, Integer uid); }