智慧保安后台管理-外网项目备份
zhongrj
2023-09-17 8853292babb2ad94de4a3207966f1e83b767cd2d
src/main/java/org/springblade/modules/exam/service/ExamPaperService.java
@@ -4,10 +4,10 @@
 *  Redistribution and use in source and binary forms, with or without
 *  modification, are permitted provided that the following conditions are met:
 *
 *  Redistributions of source code must retain the above copyright notice,
 *  Redistributions of source code must retain the above copyright exam,
 *  this list of conditions and the following disclaimer.
 *  Redistributions in binary form must reproduce the above copyright
 *  notice, this list of conditions and the following disclaimer in the
 *  exam, this list of conditions and the following disclaimer in the
 *  documentation and/or other materials provided with the distribution.
 *  Neither the name of the dreamlu.net developer nor the names of its
 *  contributors may be used to endorse or promote products derived from
@@ -17,25 +17,138 @@
package org.springblade.modules.exam.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService;
import org.springblade.modules.desk.entity.Notice;
import org.springblade.modules.desk.vo.NoticeVO;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springblade.modules.apply.entity.Apply;
import org.springblade.modules.exam.entity.ExamPaper;
import org.springblade.modules.exam.vo.ExamPaperVO;
import org.springblade.modules.exam.entity.ExamSubjectChoices;
import org.springblade.modules.exam.vo.*;
import org.springblade.modules.training.entity.TrainingRegistration;
import java.util.List;
import java.util.Map;
/**
 * 服务类
 *
 * @author Chill
 */
public interface ExamPaperService extends BaseService<ExamPaper> {
public interface ExamPaperService extends IService<ExamPaper> {
   IPage<ExamPaperVO> selectExamPaperPages(IPage<ExamScoreVO> page, ExamPaperVO exam);
   /**
    * 自定义分页
    * @param page
    * @param exam
    * 自定义查询
    * @param page 分页条件
    * @param examPaperVO 查询参数
    * @return
    */
   IPage<ExamPaperVO> selectExamPaperPage(IPage<ExamPaperVO> page, ExamPaperVO exam);
   IPage<ExamPaperVO> selectExamPaperPage(IPage<ExamScoreVO> page, ExamPaperVO examPaperVO);
   ExamPaperSubjectVO queryPagerSubject(ExamPaper paper);
   List<ExamSubjectChoicesVO> queryRandomSubject(ExamPaperVO paper);
   /**
    * 计算成绩返回答案接口
    * @param paper
    * @return
    */
   ExamPaperSubjectVO PagerSubject(ExamPaper paper);
   /**
    * 自定义树
    * @param examPaper
    * @return
    */
    List<ExamPaper> selectExamPaperPageTree(ExamPaper examPaper);
   /**
    * 解除试卷和题目的绑定
    */
   boolean UnbindSubject(String paperid,String subjectid);
   /**
    * 查询考生考试信息
    * @param examPaper 用户id
    * @return
    */
   List<ExamPaperVO> getExamDetail(ExamPaperVO examPaper);
   /**
    * 查询是当前前缀已生成准考证号码最大的一位
    * @param result 前缀
    * @return
    */
    int getCandidateNoCount(String result);
   /**
    * 查询当前考试已报名的人员培训报名数据集合
    * @param id 考试id
    * @return
    */
   List<TrainingRegistration> getTrainList(Long id);
   /**
    * 使用考试名称匹配考试信息
    * @param examName 考试名称
    * @return
    */
   List<ExamPaper> getExamInfoByExamName(String examName);
   /**
    * 根据用户id查询报名信息
    * @param userId 用户id
    * @return
    */
   List<Apply> getApplyDetail(String userId);
   /**
    * 考试中页面刷新,1查询所有的答题信息,2查询所有的已答信息  3其他信息
    * @param examPaperVO 必须包含 scoreId
    * @return
    */
   Map<String,Object> getExamRefreshInfo(ExamPaperVO examPaperVO);
   /**
    * 查询考试统计信息
    * @param examPaperVO
    * @return
    */
   IPage<ExamStatisticsVO> getExamStatistics(IPage<ExamStatisticsVO> page, ExamPaperVO examPaperVO);
   /**
    * 根据考试id 统计查询考试信息
    * @param examPaperVO
    * @return
    */
   IPage<ExamStatisticsVO> getExamInfoByExamId(IPage<ExamStatisticsVO> page, ExamStatisticsVO examPaperVO);
   /**
    * 根据考试id 统计查询考试信息
    * @param examScoreVO
    * @return
    */
   List<ExamStatisticsVO> getExamInfoByExamIdList(ExamScoreVO examScoreVO);
   /**
    * 查询考试成绩明细
    * @param examScoreVO
    * @return
    */
   List<ExamScoreVO> getExamScoreList(ExamScoreVO examScoreVO);
   /**
    * 根据id 取出题目信息(随机取)
    * @param list 题目id集合
    * @param number 题目梳理
    * @return
    */
   List<ExamSubjectChoicesVO> queryRandomSubjectList(List<String> list, int number);
   /**
    * 模拟考试随机抽题,未缴费人员
    * @return
    */
   List<ExamSubjectChoicesVO> simulateQueryRandomSubjectList();
}