import request from '@/utils/request'
// 分页查询考试专业
export function examElExamResultScorePageType(data) {
  return request({
    url: '/exam/elExamResult/score-page_type',
    method: 'post',
    data: data
  })
}
// 分页查询证书模板
export function examElCertificateTemplatePage(data) {
  return request({
    url: '/exam/elCertificateTemplate/page',
    method: 'post',
    data: data
  })
}
// 查询证书模板列表
export function examElCertificateTemplateList(data) {
  return request({
    url: '/exam/elCertificateTemplate/list',
    method: 'post',
    data: data
  })
}
// 查询全部考试类型
export function examElExamTypeList(data) {
  return request({
    url: '/exam/elExamType/list',
    method: 'post',
    data: data
  })
}
// 编辑考试类别
export function examElExamTypeBbatchSave(data) {
  return request({
    url: '/exam/elExamType/batch-save',
    method: 'post',
    data: data
  })
}
// 获取当前登录用户的部门列表
export function systemDeptCurrentDept(data) {
  return request({
    url: '/system/dept/currentDept',
    method: 'post',
    data: data
  })
}
// 新增证书模板
export function examElCertificateTemplateAdd(data) {
  return request({
    url: '/exam/elCertificateTemplate/add',
    method: 'post',
    data: data
  })
}
// 修改证书模板
export function examElCertificateTemplateEdit(data) {
  return request({
    url: '/exam/elCertificateTemplate/edit',
    method: 'post',
    data: data
  })
}
// 删除证书模板
export function examElCertificateTemplateDel(data) {
  return request({
    url: '/exam/elCertificateTemplate/del',
    method: 'post',
    data: data
  })
}
// 查询全部专业类别
export function examElDisciplineTypeList(data) {
  return request({
    url: '/exam/elDisciplineType/list',
    method: 'post',
    data: data
  })
}
// 编辑专业类别
export function examElDisciplineTypeBatchSave(data) {
  return request({
    url: '/exam/elDisciplineType/batch-save',
    method: 'post',
    data: data
  })
}
// 修改专业类别
export function examElDisciplineTypeEdit(data) {
  return request({
    url: '/exam/elDisciplineType/edit',
    method: 'post',
    data: data
  })
}
// 删除专业类别
export function examElDisciplineTypeDel(data) {
  return request({
    url: '/exam/elDisciplineType/del',
    method: 'post',
    data: data
  })
}

// 查询基础配置 1.分级要求配置 2.学时积分配置 3.其他配置
export function examElConfigValueMap(query) {
  return request({
    url: '/exam/elConfig/value-map',
    method: 'get',
    params: query
  })
}
// 保存基础配置
export function examElConfigSave(data) {
  return request({
    url: '/exam/elConfig/save',
    method: 'post',
    data: data
  })
}
//查询知识点树
export function examElKnowledgePointTreeList(data) {
  return request({
    url: '/exam/elKnowledgePoint/tree-list',
    method: 'post',
    data: data
  })
}
//添加知识点
export function examElKnowledgePointAdd(data) {
  return request({
    url: '/exam/elKnowledgePoint/add',
    method: 'post',
    data: data
  })
}
//批量添加知识点
export function examElKnowledgePointBatchAdd(data) {
  return request({
    url: '/exam/elKnowledgePoint/batch-add',
    method: 'post',
    data: data
  })
}
//编辑知识点
export function examElKnowledgePointEdit(data) {
  return request({
    url: '/exam/elKnowledgePoint/edit',
    method: 'post',
    data: data
  })
}
//删除知识点
export function examElKnowledgePointDel(data) {
  return request({
    url: '/exam/elKnowledgePoint/del',
    method: 'post',
    data: data
  })
}
//查询课件列表
export function examElCoursewarePage(data) {
  return request({
    url: '/exam/elCourseware/page',
    method: 'post',
    data: data
  })
}
//删除课件
export function examElCoursewareDel(data) {
  return request({
    url: '/exam/elCourseware/del',
    method: 'post',
    data: data
  })
}
//新增课件
export function examElCoursewareAdd(data) {
  return request({
    url: '/exam/elCourseware/add',
    method: 'post',
    data: data
  })
}
//编辑课件
export function examElCoursewareEdit(data) {
  return request({
    url: '/exam/elCourseware/edit',
    method: 'post',
    data: data
  })
}
//学时换算方法
export function examElCoursewareCalculateLearningReward(data) {
  return request({
    url: '/exam/elCourseware/calculateLearningReward',
    method: 'post',
    data: data
  })
}
//课件详情
export function examElCoursewareDetail(query) {
  return request({
    url: '/exam/elCourseware/detail',
    method: 'get',
    params: query
  })
}
//课程列表
export function examElCoursePage(data) {
  return request({
    url: '/exam/elCourse/page',
    method: 'post',
    data: data
  })
}
//课程删除
export function examElCourseDel(data) {
  return request({
    url: '/exam/elCourse/del',
    method: 'post',
    data: data
  })
}
//课程新增
export function examElCourseAdd(data) {
  return request({
    url: '/exam/elCourse/add',
    method: 'post',
    data: data
  })
}
//课程编辑
export function examElCourseEdit(data) {
  return request({
    url: '/exam/elCourse/edit',
    method: 'post',
    data: data
  })
}
//课程详情
export function examElCourseDetail(query) {
  return request({
    url: '/exam/elCourse/detail',
    method: 'get',
    params: query
  })
}
//课程复制
export function examElCourseCopy(data) {
  return request({
    url: '/exam/elCourse/copy',
    method: 'post',
    data: data
  })
}
//试题管理列表
export function examElQuestionBankList(data) {
  return request({
    url: '/exam/elQuestionBank/list',
    method: 'post',
    data: data
  })
}
//试题管理新增
export function examElQuestionBankAdd(data) {
  return request({
    url: '/exam/elQuestionBank/add',
    method: 'post',
    data: data
  })
}
//试题管理编辑
export function examElQuestionBankEdit(data) {
  return request({
    url: '/exam/elQuestionBank/edit',
    method: 'post',
    data: data
  })
}
//试题管理删除
export function examElQuestionBankDel(data) {
  return request({
    url: '/exam/elQuestionBank/del',
    method: 'post',
    data: data
  })
}
//试题管理详情
export function examElQuestionBankDetail(query) {
  return request({
    url: '/exam/elQuestionBank/detail',
    method: 'get',
    params: query
  })
}
//试卷详情
export function examElPaperDetail(query) {
  return request({
    url: '/exam/elPaper/detail',
    method: 'get',
    params: query
  })
}
//试卷列表
export function examElPaperPage(data) {
  return request({
    url: '/exam/elPaper/page',
    method: 'post',
    data: data
  })
}
//试卷新增
export function examElPaperAdd(data) {
  return request({
    url: '/exam/elPaper/add',
    method: 'post',
    data: data
  })
}
//试卷编辑
export function examElPaperEdit(data) {
  return request({
    url: '/exam/elPaper/edit',
    method: 'post',
    data: data
  })
}
//试卷删除
export function examElPaperDel(data) {
  return request({
    url: '/exam/elPaper/del',
    method: 'post',
    data: data
  })
}
//试卷复制
export function examElPaperCopy(data) {
  return request({
    url: '/exam/elPaper/copy',
    method: 'post',
    data: data
  })
}
//查询知识点下题目数量
export function examElQuestionBankKnowledgePointCount(query) {
  return request({
    url: '/exam/elQuestionBank/knowledge-point-count',
    method: 'get',
    params: query
  })
}
//考试安排详情
export function examElExamDetail(query) {
  return request({
    url: '/exam/elExam/detail',
    method: 'get',
    params: query
  })
}
//考试安排列表
export function examElExamPage(data) {
  return request({
    url: '/exam/elExam/page',
    method: 'post',
    data: data
  })
}
//考试安排新增
export function examElExamAdd(data) {
  return request({
    url: '/exam/elExam/add',
    method: 'post',
    data: data
  })
}
//考试安排编辑
export function examElExamEdit(data) {
  return request({
    url: '/exam/elExam/edit',
    method: 'post',
    data: data
  })
}
//考试安排复制
export function examElExamCopy(data) {
  return request({
    url: '/exam/elExam/copy',
    method: 'post',
    data: data
  })
}
//考试安排删除
export function examElExamDel(data) {
  return request({
    url: '/exam/elExam/del',
    method: 'post',
    data: data
  })
}
//考试安排创建补考
export function examElExamMakeupAdd(data) {
  return request({
    url: '/exam/elExam/makeup-add',
    method: 'post',
    data: data
  })
}
//分级下拉列表
export function laboratoryLevelConfigGetLevelTitleList(data) {
  return request({
    url: '/laboratory/levelConfig/getLevelTitleList',
    method: 'post',
    data: data
  })
}
//考试安排查询补考候选人
export function examElExamMakeupCandidates(data) {
  return request({
    url: '/exam/elExam/makeup-candidates',
    method: 'post',
    data: data
  })
}
//考试安排查询已开始补考的候选人
export function examElExamMakeupResults(data) {
  return request({
    url: '/exam/elExam/makeup-results',
    method: 'post',
    data: data
  })
}
//考试结果列表
export function examElExamResultPage(data) {
  return request({
    url: '/exam/elExamResult/page',
    method: 'post',
    data: data
  })
}
//考试成绩明细列表
export function examElExamResultScorePage(data) {
  return request({
    url: '/exam/elExamResult/score-page',
    method: 'post',
    data: data
  })
}
//用户类别下拉列表
export function systemUserGetCategories(data) {
  return request({
    url: '/system/user/getCategories',
    method: 'post',
    data: data
  })
}
//学年下拉列表
export function systemUserGetAcademicYear(data) {
  return request({
    url: '/system/user/getAcademicYear',
    method: 'post',
    data: data
  })
}
//查询指定用户列表
export function systemUserGetUserDataByParam(data) {
  return request({
    url: '/system/user/getUserDataByParam',
    method: 'post',
    data: data
  })
}
//查询指定范围列表
export function systemUserGetRuleDataByParam(data) {
  return request({
    url: '/system/user/getRuleDataByParam',
    method: 'post',
    data: data
  })
}
//查询考卷左侧数据
export function examElExamAttemptReviewSidebar(data) {
  return request({
    url: '/exam/elExamAttempt/review-sidebar',
    method: 'post',
    data: data
  })
}
//查询考卷右侧题目数据
export function examElExamAttemptReviewQuestion(data) {
  return request({
    url: '/exam/elExamAttempt/review-question',
    method: 'post',
    data: data
  })
}
//管理端刷题练习列表
export function examElPracticeStatPage(data) {
  return request({
    url: '/exam/elPracticeStat/page',
    method: 'post',
    data: data
  })
}
//管理端刷题练习-学习统计
export function examElPracticeStatDetail(data) {
  return request({
    url: '/exam/elPracticeStat/detail',
    method: 'post',
    data: data
  })
}
//分页查询考试奖励记录
export function examElExamResultRewardPage(data) {
  return request({
    url: '/exam/elExamResult/reward-page',
    method: 'post',
    data: data
  })
}
//学习任务列表
export function examUserCourseLearningList(data) {
  return request({
    url: '/exam/user/course/learning/list',
    method: 'post',
    data: data
  })
}
//知识学习列表
export function examUserCoursewareLearningList(data) {
  return request({
    url: '/exam/user/courseware/learning/list',
    method: 'post',
    data: data
  })
}
//刷题练习列表
export function examUserPracticeList(data) {
  return request({
    url: '/exam/user/practice/list',
    method: 'post',
    data: data
  })
}
//考试/类型数量列表
export function examUserExamTypeSelectExamType(data) {
  return request({
    url: '/exam/user/examType/selectExamType',
    method: 'post',
    data: data
  })
}
//在线考试列表
export function examUserExamList(data) {
  return request({
    url: '/exam/user/exam/list',
    method: 'post',
    data: data
  })
}
//模拟考试列表
export function examUserExamMockList(data) {
  return request({
    url: '/exam/user/exam/mockList',
    method: 'post',
    data: data
  })
}
//我的成绩列表
export function examElExamUserResultMyScoreListPage(data) {
  return request({
    url: '/exam/elExamUserResult/myScoreListPage',
    method: 'post',
    data: data
  })
}
//考试记录列表
export function examElUserExamAttemptAttemptRecord(data) {
  return request({
    url: '/exam/elUserExamAttempt/attemptRecord',
    method: 'post',
    data: data
  })
}
//考试类型下所有错题列表
export function examElExamAttemptAnswerExamAnswer(data) {
  return request({
    url: '/exam/elExamAttemptAnswer/examAnswer',
    method: 'post',
    data: data
  })
}
//单一考试下错题列表
export function examElExamAttemptAnswerAttemptAnswer(data) {
  return request({
    url: '/exam/elExamAttemptAnswer/attemptAnswer',
    method: 'post',
    data: data
  })
}
//知识点下错题列表
export function examUserPracticeWrongQuestions(data) {
  return request({
    url: '/exam/user/practice/wrongQuestions',
    method: 'post',
    data: data
  })
}

//我的证书列表
export function examUserCertificateList(data) {
  return request({
    url: '/exam/user/certificate/list',
    method: 'post',
    data: data
  })
}
//查询考试剩余时间
export function examUserExamGetExamSurplusTime(data) {
  return request({
    url: '/exam/user/exam/getExamSurplusTime',
    method: 'post',
    data: data
  })
}
//开始考试-生成id
export function examUserExamStart(data) {
  return request({
    url: '/exam/user/exam/start',
    method: 'post',
    data: data
  })
}
//保存单题答案
export function examUserExamAnswerSave(data) {
  return request({
    url: '/exam/user/exam/answer/save',
    method: 'post',
    data: data
  })
}
//交卷
export function examUserExamSubmit(data) {
  return request({
    url: '/exam/user/exam/submit',
    method: 'post',
    data: data
  })
}
//刷题提交
export function examUserPracticeSubmit(data) {
  return request({
    url: '/exam/user/practice/submit',
    method: 'post',
    data: data
  })
}
//刷题获取左侧数据
export function examUserPracticePanel(query) {
  return request({
    url: '/exam/user/practice/panel',
    method: 'get',
    params: query
  })
}
//刷题获取右侧数据
export function examUserPracticeQuestionDetail(query) {
  return request({
    url: '/exam/user/practice/questionDetail',
    method: 'get',
    params: query
  })
}
//课程下的课件列表
export function examUserCourseLearningCoursewareList(query) {
  return request({
    url: '/exam/user/course/learning/coursewareList',
    method: 'get',
    params: query
  })
}
//课件学习完成确认
export function examUserCoursewareLearningConfirmCompletion(data) {
  return request({
    url: '/exam/user/courseware/learning/confirmCompletion',
    method: 'post',
    data: data
  })
}
//重新开始学习课件
export function examUserCoursewareLearningRestart(query) {
  return request({
    url: '/exam/user/courseware/learning/restart',
    method: 'get',
    params: query
  })
}
//上报课件学习进度
export function examUserCoursewareLearningReportProgress(data) {
  return request({
    url: '/exam/user/courseware/learning/reportProgress',
    method: 'post',
    data: data
  })
}
//开始训练获取-左侧题目列表
export function examUserPracticeTrainPanel(data) {
  return request({
    url: '/exam/user/practice/train/panel',
    method: 'post',
    data: data
  })
}
//根据课件ID查询课件信息
export function examUserCoursewareLearningDetail(query) {
  return request({
    url: '/exam/user/courseware/learning/detail',
    method: 'get',
    params: query
  })
}
//查询可用知识点列表
export function examUserCoursewareLearningKnowledgePoints(query) {
  return request({
    url: '/exam/user/courseware/learning/knowledgePoints',
    method: 'get',
    params: query
  })
}

//查询学年进度列表（从入学年到当前学年，每学年返回状态及通过分数）
export function examElLabEduRelationAcademicYearProgress(query) {
  return request({
    url: '/exam/elLabEduRelation/academicYearProgress',
    method: 'get',
    params: query
  })
}
//查询当前登录用户的实验室绑定状态（仅新入学硕士研究生有数据，其他用户返回 null）
export function examElLabEduRelationBindStatus(query) {
  return request({
    url: '/exam/elLabEduRelation/bindStatus',
    method: 'get',
    params: query
  })
}
//实验室搜索
export function examElLabEduRelationLabLists(query) {
  return request({
    url: '/exam/elLabEduRelation/labLists',
    method: 'get',
    params: query
  })
}
//实验室详情
export function examElLabEduRelationLabDetail(query) {
  return request({
    url: '/exam/elLabEduRelation/labDetail',
    method: 'get',
    params: query
  })
}
//查询实验室负责人 待审批的列表
export function examElLabEduRelationAuditList(data) {
  return request({
    url: '/exam/elLabEduRelation/auditList',
    method: 'post',
    data: data
  })
}
//实验室负责人审批
export function examElLabEduRelationAudit(data) {
  return request({
    url: '/exam/elLabEduRelation/audit',
    method: 'post',
    data: data
  })
}
//实验室申请绑定
export function examElLabEduRelationBind(data) {
  return request({
    url: '/exam/elLabEduRelation/bind',
    method: 'post',
    data: data
  })
}
//实验室管理规定查询
export function laboratoryLabSafeManagerRegulationsDetail(query) {
  return request({
    url: '/laboratory/labSafeManagerRegulations/detail',
    method: 'get',
    params: query
  })
}
//查询各级别研究生初始最低学时配置
export function examElConfigMasterInitMinHour(query) {
  return request({
    url: '/exam/elConfig/masterInitMinHour',
    method: 'get',
    params: query
  })
}
//获取所有专业（id、name、code）
export function systemUserMajorAllMajors(query) {
  return request({
    url: '/system/user/major/allMajors',
    method: 'get',
    params: query
  })
}
//查询毕业报告
export function examElLabEduRelationGraduationReport(query) {
  return request({
    url: '/exam/elLabEduRelation/graduationReport',
    method: 'get',
    params: query
  })
}
//****************************** 统计相关 ******************************/
//考试统计页面学年-学年列表
export function examElStatisticsGetAcademicYear(data) {
  return request({
    url: '/exam/elStatistics/getAcademicYear',
    method: 'post',
    data: data
  })
}
//考试统计列表
export function examElStatisticsExamList(data) {
  return request({
    url: '/exam/elStatistics/exam/list',
    method: 'post',
    data: data
  })
}
//考试统计图表
export function examElStatisticsExamChart(data) {
  return request({
    url: '/exam/elStatistics/exam/chart',
    method: 'post',
    data: data
  })
}
//实验室与人员匹配统计图表数据
export function examElStatisticsLabChart(query) {
  return request({
    url: '/exam/elStatistics/lab/chart',
    method: 'get',
    params: query
  })
}
//实验室与人员匹配统计列表
export function examElStatisticsLabList(data) {
  return request({
    url: '/exam/elStatistics/lab/list',
    method: 'post',
    data: data
  })
}
//学时统计图表
export function examElStatisticsCreditHourChart(data) {
  return request({
    url: '/exam/elStatistics/creditHour/chart',
    method: 'post',
    data: data
  })
}
//学时统计列表
export function examElStatisticsCreditHourList(data) {
  return request({
    url: '/exam/elStatistics/creditHour/list',
    method: 'post',
    data: data
  })
}
//工作台查询考试列表
export function examUserExamStudyTaskList(data) {
  return request({
    url: '/exam/user/exam/studyTaskList',
    method: 'post',
    data: data
  })
}
//工作台按知识点分组查询试题数量
export function examElQuestionBankGroupByKnowledgePoint(data) {
  return request({
    url: '/exam/elQuestionBank/groupByKnowledgePoint',
    method: 'post',
    data: data
  })
}
//确认考试承诺书
export function examUserExamCommitmentConfirm(data) {
  return request({
    url: '/exam/user/exam/commitment/confirm',
    method: 'post',
    data: data
  })
}
//工作台按知识点分组查询试题数量
export function examUserPracticeSummary(query) {
  return request({
    url: '/exam/user/practice/summary',
    method: 'get',
    params: query
  })
}
