IQuestionService.java 2.1 KB
package com.skua.modules.edu.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.skua.modules.edu.entity.Question;
import com.baomidou.mybatisplus.extension.service.IService;
import com.skua.modules.edu.vo.PaperRandomVO;
import com.skua.modules.edu.vo.QuestionExcel;

import java.util.List;

/**
 * 在线考试-试题
 */
public interface IQuestionService extends IService<Question> {

    /***
     * 分页检索
     * @param page
     * @param questionDB
     * @return
     */
    public IPage<Question> queryPageList(Page<Question> page, Question questionDB) ;

    public List<Question> selectQuestionList(Question questionDB);
    /***
     * 添加试题 以及试题选项
     * @param question
     * @return
     */
    public  int saveQuestion(Question question);

    /***
     * 修改试题 以及试题选项
     * @param question
     * @return
     */
    public boolean updateQuestion(Question question) throws Exception ;


    /***
     * 修改试题 以及试题选项
     * @param id
     * @return
     */
    public Question queryById(String  id);


    /***
     * 校验 试题是否被试卷使用,如果使用返回true,未使用返回false
     * @param questionId
     * @return
     */
    public boolean checkByPaper(String questionId);

    /**
     * 批量导入
     * @param listQuestions
     * @param dbId
     */
    public void batchImportExcel(List<QuestionExcel> listQuestions, String dbId);

    /***
     * 批量送审
     * @param ids
     * @param auditStatus
     */
    int batchSendAudit(String ids, String auditStatus);

    /***
     * 审批
     * @param question
     */
    int auditQuestion(Question question);

    /**
     * 批量审批
     * @param ids
     * @param approveState
     * @param approveMessage
     * @return
     */
    String auditBatchQuestion(String ids, String approveState, String approveMessage);

    /***
     * 随机组卷的试题集合
     * @param paperRandomVO
     * @return
     */
    List<Question> randomQuestion(PaperRandomVO paperRandomVO);
}