package com.mindskip.xzs.service;
|
|
import com.mindskip.xzs.domain.ExamPaper;
|
import com.mindskip.xzs.domain.ExamPaperClasses;
|
import com.mindskip.xzs.domain.User;
|
import com.mindskip.xzs.domain.exam.ExamClassShortInfo;
|
import com.mindskip.xzs.domain.other.KeyValue;
|
import com.mindskip.xzs.viewmodel.admin.exam.ExamPaperEditRequestVM;
|
import com.mindskip.xzs.viewmodel.admin.exam.ExamPaperPageRequestVM;
|
import com.mindskip.xzs.viewmodel.student.dashboard.PaperFilter;
|
import com.mindskip.xzs.viewmodel.student.dashboard.PaperInfo;
|
import com.mindskip.xzs.viewmodel.student.exam.ExamPaperPageVM;
|
import com.github.pagehelper.PageInfo;
|
|
import java.util.List;
|
|
/**
|
* @version 2.2.0
|
* @description: 试卷
|
* Copyright (C), 2020-2021, 武汉思维跳跃科技有限公司
|
* @date 2021 /9/7 9:45
|
*/
|
public interface ExamPaperService extends BaseService<ExamPaper> {
|
|
/**
|
* 试卷分页
|
*
|
* @param requestVM the request vm
|
* @return the page info
|
*/
|
PageInfo<ExamPaper> page(ExamPaperPageRequestVM requestVM);
|
|
/**
|
* 管理端试卷分页
|
*
|
* @param requestVM the request vm
|
* @return the page info
|
*/
|
PageInfo<ExamPaper> adminPage(ExamPaperPageRequestVM requestVM);
|
|
/**
|
* 任务试卷分页
|
*
|
* @param requestVM the request vm
|
* @return the page info
|
*/
|
PageInfo<ExamPaper> taskExamPage(ExamPaperPageRequestVM requestVM);
|
|
/**
|
* 学生端试卷分页
|
*
|
* @param requestVM the request vm
|
* @return the page info
|
*/
|
PageInfo<ExamPaper> studentPage(ExamPaperPageVM requestVM);
|
|
/**
|
* 班级试卷分页
|
*
|
* @param requestVM the request vm
|
* @return the page info
|
*/
|
PageInfo<ExamPaper> studentClassesPage(ExamPaperPageVM requestVM);
|
|
/**
|
* 试卷编辑
|
*
|
* @param examPaperEditRequestVM the exam paper edit request vm
|
* @param user the user
|
* @return the exam paper
|
*/
|
ExamPaper savePaperFromVM(ExamPaperEditRequestVM examPaperEditRequestVM, User user);
|
|
/**
|
* 试卷查询
|
*
|
* @param id the id
|
* @return the exam paper edit request vm
|
*/
|
ExamPaperEditRequestVM examPaperToVM(Integer id);
|
|
/**
|
* 首页试卷
|
*
|
* @param paperFilter the paper filter
|
* @return the list
|
*/
|
List<PaperInfo> indexPaper(PaperFilter paperFilter);
|
|
/**
|
* 班级试卷
|
*
|
* @param cIds the c ids
|
* @return the list
|
*/
|
List<ExamClassShortInfo> classesPaper(List<Integer> cIds);
|
|
/**
|
* 查询所有试卷数量
|
*
|
* @return the integer
|
*/
|
Integer selectAllCount();
|
|
/**
|
* 查询月时间数量
|
*
|
* @return the list
|
*/
|
List<Integer> selectMothCount();
|
|
/**
|
* 根据试卷id获取班级试卷
|
*
|
* @param paperId the paper id
|
* @return the exam paper classes by paper id
|
*/
|
List<ExamPaperClasses> getExamPaperClassesByPaperId(Integer paperId);
|
|
/**
|
* 获取班级试卷数量
|
*
|
* @param classIds the class ids
|
* @return the paper class count
|
*/
|
List<KeyValue> getPaperClassCount(List<Integer> classIds);
|
|
/**
|
* 智能训练试卷数量
|
*
|
* @param userId the user id
|
* @return the random paper count
|
*/
|
Integer getRandomPaperCount(Integer userId);
|
}
|