Skip to content

考试相关

本章节专注于描述考试和练习相关的API,专为管理员和子管理员设计,用于维护和管理考试及练习内容。

提示消息

部分接口已实现缓存处理,可不限次数请求,默认空闲两小时失效。

question/get | exam/get

题库

题库列表:questionBank/listpage

请求参数类型描述必填
idInteger主键
nameString (16)名称
curPageInteger当前第几页
pageSizeInteger每页多少条
响应参数类型描述
codeInteger响应码
msgString响应消息
data.totalInteger总行数
data.list[]Object[]分页列表
data.list[].idInteger主键
data.list[].nameString名称
data.list[].createUserNameString创建用户
data.list[].objectiveNumString客观题数量
data.list[].subjectiveNumInteger主观题数量
data.list[].singleNumInteger单选题数量
data.list[].multipleNumInteger多选题数量
data.list[].fillBlankSubNumInteger主观填空题数量
data.list[].fillBlankObjNumInteger客观填空题数量
data.list[].judgeNumInteger判断题数量
data.list[].qaSubNumInteger主观问答题数量
data.list[].qaObjNumInteger客观问答题数量
data.list[].questionNumInteger试题数量
data.list[].updateTimeDate更新时间
data.list[].shareAuthInteger共享权限(0:私有;1:只读;2:读写;)

题库添加:questionBank/add

请求参数类型描述必填
nameString (16)名称
shareAuthInteger共享权限(0:私有;1:只读;2:读写;)
响应参数类型描述
codeInteger响应码
msgString响应消息
dataInteger题库ID

题库修改:questionBank/edit

请求参数类型描述必填
idInteger主键
nameString (16)名称

题库删除:questionBank/del

请求参数类型描述必填
idInteger主键

题库详情:questionBank/get

请求参数类型描述必填
idInteger主键
响应参数类型描述
codeInteger响应码
msgString响应消息
data.idInteger题库id
data.nameString题库名称
data.shareAuthInteger共享权限(1:私有;2:只读;3:读写;)(V6.0.0新增)
data.createUserIdInteger创建用户ID(只能对自己的题库进行权限设置)
data.filesObject[]附件数组(V6.1.0新增)
data.files[].idInteger附件ID(相关参考资料)
data.files[].nameString附件名称

题库详情:questionBank/share(V6.0.0新增)

请求参数类型描述必填
idInteger主键
shareAuthInteger共享权限(1:私有;2:只读;3:读写;)

题库资料添加:questionBank/docAdd(V6.1.0新增)

  • 练习答错时,回显相关企业资料片段
请求参数类型描述必填
idInteger主键
fileIdInteger附件ID

题库资料删除:questionBank/docDel(V6.1.0新增)

请求参数类型描述必填
idInteger主键
fileIdInteger附件ID

试题

试题列表:question/listpage

请求参数类型描述必填
questionBankIdInteger题库id
questionBankNameString题库名称
idInteger编号(主键)
titleString题干
typeInteger类型(1:单选;2:多选;3:填空;4:判断;5:问答)
scoreDouble分值
markTypeInteger阅卷类型(1:客观题;2:主观题)
exIdsString排除的试题IDS(英文逗号分割)
stateInteger状态(0:删除;1:发布;);默认查询1;参数为0则查询最近7天已删除的试题
curPageInteger当前第几页
pageSizeInteger每页多少条
响应参数类型描述
codeInteger响应码
msgString响应消息
data.totalInteger总行数
data.list[]Object[]分页列表
data.list[].idInteger主键
data.list[].typeInteger类型(1:单选;2:多选;3:填空;4:判断;5:问答)
data.list[].titleString题干
data.list[].imgFileIdsInteger[]图片附件IDS(V5.2.0新增)
data.list[].videoFileIdInteger视频附件ID(V5.5.5新增)
data.list[].markTypeInteger阅卷类型(1:客观题;2:主观题)
data.list[].stateInteger状态(0:删除;1:发布;)
data.list[].analysisString解析
data.list[].questionBankIdInteger题库ID
data.list[].questionBankNameInteger题库名称
data.list[].scoreDouble分值
data.list[].markOptionsInteger[]分值选项
data.list[].options[]Object[]单多选选项(type=1,2时有效)
data.list[].answers[]String[]答案(如果是填空或智能问答,会有多个答案)
data.list[].scores[]Double[]答案分值(如果是填空或智能问答,表示每空分值;如果是多选,表示漏选分值)
data.list[].updateUserNameString更新用户名称

试题添加:question/add

请求参数类型描述必填
typeInteger类型(1:单选;2:多选;3:填空;4:判断;5:问答)
titleText题干
imgFileIdsInteger[]图片附件ID(V5.2.0新增)
videoFileIdInteger视频附件ID(V5.5.0新增)
markTypeInteger阅卷类型(1:客观题;2:主观题)
analysisText解析
questionBankIdInteger题库ID
scoreDouble分数
markOptions[]Integer[]分数选项(1:漏选得分;2:答案无顺序;3:大小写不敏感;)
options[]String[]选项,type为1,2时有效,len <= 7
answers[]String[]答案(如果是填空或智能问答,会有多个答案)
scores[]Double[]答案分值(如果是填空或智能问答,表示每空分值;如果是多选,表示漏选分值)

试题修改:question/edit

请求参数类型描述必填
idInteger主键
typeInteger类型(修改无效)
其他字段同question/add

试题删除:question/del

请求参数类型描述必填
idsInteger[]试题IDS

试题移动:question/move(V5.3.0新增)

请求参数类型描述必填
idInteger[]主键
questionBankIdInteger题库ID

试题获取:question/get

提示消息

已实现缓存处理,可不限次数请求,默认空闲两小时失效。

请求参数类型描述必填
idInteger主键
响应参数类型描述
codeInteger响应码
msgString响应消息
data.idInteger主键
data.typeInteger类型(1:单选;2:多选;3:填空;4:判断;5:问答
data.titleText题干
data.options[]String[]选项,type为1,2时有效,len <= 7
data.markTypeInteger阅卷类型(1:客观题;2:主观题)
data.analysisText解析
data.questionBankIdInteger题库ID
data.scoreDouble分数
data.markOptions[]Integer[]分数选项(1:漏选得分;2:答案无顺序;3:大小写不敏感;)
data.answers[]String[]答案(如果是填空或智能问答,会有多个答案)
data.scores[]Double[]答案分值(如果是填空或智能问答,表示每空分值;如果是多选,表示漏选分值)
data.stateInteger状态(0:删除;1:发布;)
data.imgFileIdsInteger[]图片IDS(V5.2.0新增)
data.videoFileIdInteger视频附件ID(V5.5.0新增)

试题复制:question/copy

请求参数类型描述必填
idInteger主键

试题移动:question/move

请求参数类型描述必填
idsInteger[]IDS
questionBankIdInteger题库ID

试题恢复:question/restore(V6.2.0新增)

请求参数类型描述必填
idsInteger[]回收站恢复误删试题

试题清空:question/clear(V6.2.0新增)

请求参数类型描述必填
questionBankIdInteger题库ID(由题库清空接口迁移过来)

考试

考试列表:exam/listpage

请求参数类型描述必填
nameString (16)名称
genTypeInteger组卷方式(1:人工组卷;2:随机组卷)
loginTypeInteger登录方式(1:正常登录;2:临时登录;)
markStateInteger阅卷状态(1:未阅卷;2:阅卷中;3:已阅卷;)
markTypeInteger阅卷方式(1:客观题;2:主观题;)
isLimitInteger是否限时考试(0:不限时;1:限时)
stateInteger考试状态(1:发布;2:暂停)
curPageInteger当前第几页
pageSizeInteger每页多少条
响应参数类型描述
codeInteger响应码
msgString响应消息
data.totalInteger总行数
data.list[]Object[]分页列表
data.list[].idInteger主键
data.list[].nameString名称
data.list[].startTimeDate开始时间
data.list[].endTimeDate结束时间
data.list[].markStartTimeDate阅卷开始时间
data.list[].markEndTimeDate阅卷结束时间
data.list[].passScoreDouble及格分数
data.list[].totalScoreDouble总分数
data.list[].stateInteger考试状态
data.list[].markStateInteger阅卷方式(1:客观题;2:主观题;)
data.list[].scoreStateInteger成绩查询状态(1:考试结束后;2:不公布;3:交卷后)
data.list[].rankStateInteger排名状态(1:公布;2:不公布)
data.list[].genTypeInteger组卷方式(1:人工组卷;2:随机组卷)
data.list[].markTypeInteger阅卷方式(1:客观题;2:主观题;)
data.list[].sxesInteger[]防作弊(1:试题乱序;2:选项乱序;)
data.list[].anonStateInteger[]匿名阅卷(1:是;2:否)
data.list[].loginTypeInteger登录方式(1:账号登录;2:临时登录;)
data.list[].limitMinuteInteger限制时长(分钟)
data.list[].userNumInteger用户数量
data.list[].markUserNumInteger阅卷用户数量

考试发布:exam/publish

  • 请求数据格式为json,请设置HTTP请求头:{ Content-Type: application/json }
json
{
    "id": null, // 考试ID(修改时用)
    "name": "考试-2023-04-01",// 考试名称
    "loginType": 1,// 登录方式(1:正常登录;2:临时登录;)
    "paperName": "试卷-2023-04-01",// 试卷试卷名称
    "genType": 1, // 组卷方式(1:人工组卷;2:随机组卷)
    "passScore": 14,// 及格分数
    "sxes": [2, 1],// 防作弊(1:试题乱序;2:选项乱序;3:禁止考试中切屏;4:禁止浏览器调试;5:试卷水印);genType == 1没有1
    "scoreState": 3,// 成绩查询状态(1:考试结束后;2:不公布;3:交卷后)
    "rankState": 1,// 排名状态(1:公布;2:不公布)
    "examQuestions": [{// genType == 1有效(固定组卷)
        "type": 1,// 类型 (1:章节;2:试题)
        "chapterName": "单选题",// 章节名称
        "chapterTxt": ""// 章节描述(非必填)
    }, {
        "type": 2,// 类型 (1:章节;2:试题) 试题数据格式参考question/add接口
        "questionType": 1,// 试题类型(1:单选;2:多选;3:填空;4:判断;5:问答)
        "markType": 1,//  阅卷类型(1:客观题;2:主观题)
        "title": "这是一道单选题的题干,简单写法",// 题干
        "imgFileIds": [21994],// 图片附件IDS(V5.2.0新增)
        "videoFileId": 21995,// 视频附件ID(V5.2.0新增)
        "score": 1,// 分数
        "answers": ["B"],// 答案
        "scores": [],// 分数(非必填,默认为1分)
        "options": ["单选题的A选项", "单选题的B选项", "单选题的C选项", "单选题的D选项"],// 选项
    },],
    "examRules": [{// genType == 1有效(随机组卷)
        "type": 1,// 类型 (1:章节;2:试题)
        "chapterName": "单选题",// 章节名称
        "chapterTxt": ""// 章节描述
    }, {
        "type": 2,// 类型 (1:章节;2:试题)
        "questionBankId": 5,// 题库ID
        "questionType": 1,// 试题类型(1:单选;2:多选;3:填空;4:判断;5:问答)
        "markType": 1,//  阅卷类型(1:客观题;2:主观题),1有效
        "markOptions": [],//  阅卷选项(2:答案无顺序;3:不分大小写;) questionType == 3,23有效;questionType == 5,3有效
        "num": 10,// 题数
        "score": 1,// 分数
        "scores": []// questionType == 2有效,漏选分数
    }],
    "userIds": [1229, 1228, 1193, 1201, 1209],// 用户IDS
    "orgIds": [3, 69],// 机构IDS
    "makrUser": [3, 69],// 阅卷用户IDS
    "totalScore": 24,// 总分
    "markType": 2,// 阅卷类型(1:客观题;2:主观题)
    "startTime": "2023-04-01 08:00:00",// 考试开始时间
    "endTime": "2023-04-01 10:00:00",// 考试结束时间
    "markStartTime": "2023-04-01 14:00:00",// 阅卷开始时间
    "markEndTime": "2023-04-01 18:00:00",// 阅卷结束时间
    "limitMinute": 60, // 限制分钟(考试开始时间由用户第一次打开试卷时计时))
    "retakeNum": 0, // 重考次数(V5.5.0新增)
}
响应参数类型描述
codeInteger响应码
msgString响应消息
dataString进度条ID。建议每隔1秒请求一次,获取进度参考:progressBar/get

考试试卷:exam/paper

请求参数类型描述
idInteger主键
响应参数类型描述
codeInteger响应码
msgString响应消息
data.idInteger主键
data.nameString考试名称
data.paperNameString试卷名称
data.markTypeInteger阅卷类型
data.startTimeDate考试开始时间
data.endTimeDate考试结束时间
data.markStartTimeDate阅卷开始时间
data.markEndTimeDate阅卷结束时间
data.genTypeInteger组卷方式(1:人工组卷;2:随机组卷)
data.showTypeInteger展示方式(1:整卷展示;3:单题展示;)暂无用
data.loginTypeInteger登录方式(1:正常登录;2:临时登录;)
data.passScoreInteger及格分数
data.anonStateInteger匿名阅卷状态(1:是;2:否)
data.scoreStateInteger成绩查询状态(1:考试结束后;2:不公布;3:交卷后)
data.rankStateInteger排名状态(1:公布;2:不公布)
data.sxesInteger[]防作弊(1:试题乱序;2:选项乱序;)
data.stateInteger状态(0:删除;1:发布;2:暂停;)
data.examQuestionsObject[]参考 exam/publish 接口
data.examRulesObject[]参考 exam/publish 接口
data.examUserIdsInteger[]考试用户IDS
data.limitMinuteInteger限制分钟(考试开始时间由用户第一次打开试卷时计时,如果为0表示考试时间内不限时)
data.retakeNumInteger重考次数(V5.5.0新增)

考试试卷预览:exam/preview-paper(V6.2.0新增)

  • 创建考试前预览效果,比如随机组卷,随机选项,试卷水印
  • 参考:exam/publish;exam/paper;

考试用户:exam/user(V5.3.0新增)

请求参数类型描述
idInteger主键
响应参数类型描述
codeInteger响应码
msgString响应消息
data[].userIdInteger考试用户ID
data[].answerStateInteger及格状态

考试删除:exam/del

请求参数类型描述必填
idInteger主键

考试获取:exam/get

请求参数类型描述
idInteger主键
响应参数类型描述
codeInteger响应码
msgString响应消息
data.idInteger主键
data.nameString考试名称
data.paperNameString试卷名称
data.startTimeDate考试开始时间
data.endTimeDate考试结束时间
data.markStartTimeDate阅卷开始时间
data.markEndTimeDate阅卷结束时间
data.markStateInteger阅卷状态(1:未阅卷;2:阅卷中;3:已阅卷;)
data.scoreStateInteger成绩查询状态(1:考试结束后;2:不公布;3:交卷后)
data.rankStateInteger排名状态(1:公布;2:不公布)
data.anonStateInteger匿名阅卷状态(1:是;2:否)
data.passScoreDouble及格分数
data.totalScoreDouble总分数
data.markTypeInteger阅卷方式(1:客观题;2:主观题;)
data.loginTypeInteger登录方式(1:正常登录;2:临时登录;)
data.genTypeInteger组卷方式(1:人工组卷;2:随机组卷)
data.sxesInteger[]防作弊(1:试题乱序;2:选项乱序;)
data.stateInteger状态(0:删除;1:发布;)
data.userNumInteger考试人数
data.userIdsInteger[]用户IDS
data.orgIdsInteger[]机构IDS
data.limitMinuteInteger限制时长(分钟)
data.retakeNumInteger重考次数(V5.5.0新增)

考试获取:exam/exam-get(V5.2.0新增)

请求参数类型描述
nameString用于临时登录考试
响应参数类型描述
codeInteger响应码
msgString响应消息
data.idInteger主键
data.nameString考试名称
data.loginTypeInteger登录方式(1:正常登录;2:临时登录;)
data.startTimeDate开始时间
data.endTimeDate结束时间

考试变更时间:exam/time

请求参数类型描述必填
idInteger主键
timeTypeInteger状态 【1:考试开始时间;2:考试结束时间;3:阅卷开始时间;4:阅卷结束时间】
minuteInteger分钟数(提前用负数、延后用整数)

考试暂停:exam/pause

请求参数类型描述必填
idInteger主键,如果正常则变更为冻结;如果冻结则变更为正常

考试用户添加:exam/user-add(V5.2.0新增)

请求参数类型描述必填
idInteger主键
orgIdsInteger[]机构IDS
userIdsInteger[]用户IDS

考试成绩状态:exam/score

请求参数类型描述必填
idInteger主键,如果正常则变更为冻结;如果冻结则变更为正常
scoreStateInteger成绩状态(1:考试结束后;2:不公布;3:交卷后)

考试排名状态:exam/rank

请求参数类型描述必填
idInteger主键,如果正常则变更为冻结;如果冻结则变更为正常
rankStateInteger排名状态(1:公布;2:不公布)

考试阅卷协助:exam/assist

请求参数类型描述必填
idInteger主键
markUserIdsInteger[]阅卷用户IDS,角色为阅卷用户

考试阅卷用户列表:exam/mark-user-list

请求参数类型描述必填
idInteger主键
响应参数类型描述
codeInteger响应码
msgString响应消息
data[]Object[]任意数组
data[].idInteger考试名称
data[].nameString试卷名称

练习(V5.4.0重新实现)

练习列表:exer/listpage

提示消息

管理员看所有练习;子管理员看自己创建的练习;考试用户看管理员或子管理员分配的练习;

请求参数类型描述必填
idInteger主键(V5.6.0新增)
nameString (16)名称
stateInteger状态(1:发布;2:暂停)
curPageInteger当前第几页
pageSizeInteger每页多少条
响应参数类型描述
codeInteger响应码
msgString响应消息
data.totalInteger总行数
data.list[]Object[]分页列表
data.list[].idInteger主键
data.list[].nameString名称
data.list[].questionBankIdsInteger[]题库IDS(管理员和子管理员有效,V5.6.0更新为多个题库)
data.list[].orgIdsInteger[]机构IDS(管理员和子管理员有效)
data.list[].userIdsInteger[]用户IDS(管理员和子管理员有效)
data.list[].stateInteger状态(1:发布;2:暂停)
data.list[].commentStateInteger评论状态(1:是;2:否)(V6.0.0重新实现)
data.list[].updateTimeDate更新时间
data.list[].createUserNameString创建用户名称
data.list[].objectiveNumInteger客观题数量(V5.6.0新增)
data.list[].subjectiveNumInteger主观题数量(V5.6.0新增)
data.list[].singleNumInteger单选题数量(V5.6.0新增)
data.list[].multipleNumInteger多选题数量(V5.6.0新增)
data.list[].fillBlankObjNumInteger客观填空题数量(V5.6.0新增)
data.list[].fillBlankSubNumInteger主观填空题数量(V5.6.0新增)
data.list[].judgeNumInteger判断题数量(V5.6.0新增)
data.list[].qaObjNumInteger客观问答题数量(V5.6.0新增)
data.list[].qaSubNumInteger主观问答题数量(V5.6.0新增)

练习添加:exer/add

请求参数类型描述必填
nameString练习名称
questionBankIdsInteger[]题库IDS(V5.6.0更新为多选)
orgIdsInteger[]练习机构IDS
userIdsInteger[]练习用户IDS

练习修改:exer/edit

请求参数类型描述必填
idInteger练习ID
nameString练习名称
orgIdsInteger[]练习机构IDS
userIdsInteger[]练习用户IDS

练习删除:exer/del

练习获取:exer/get

请求参数类型描述必填
idInteger主键
响应参数类型描述
codeInteger响应码
msgString响应消息
data.idInteger主键
data.nameString名称
data.questionBanks[]Object[]题库数组(V5.6.0更新为多选)
data.questionBanks[].idInteger题库ID
data.questionBanks[].nameString题库名称
data.orgs[]Object[]机构数组
data.orgs[].idInteger机构ID
data.orgs[].nameString机构名称
data.users[]Object[]用户数组
data.users[].idInteger用户ID
data.users[].nameString用户名称
data.stateInteger状态(1:发布;2:暂停)
data.commentStateInteger评论状态(1:是;2:否)

练习发布状态:exer/state

请求参数类型描述必填
idInteger练习主键,如果发布则变为暂停,如果暂停则变为发布。

练习评论状态:exer/commentState(V6.0.0重新实现)

请求参数类型描述必填
idInteger练习主键,如果评论开启则关闭,否则相反。

评论

评论列表:/api/comment/listpage(V6.2.0新增)

请求参数类型描述必填
userNameString考试用户姓名
contentString评论内容
questionTitleString试题题干
curPageInteger当前第几页
pageSizeInteger每页多少条
响应参数类型描述
codeInteger响应码
msgString响应消息
data.totalInteger总行数
data.list[]Object[]分页列表
data.list[].idInteger主键
data.list[].contentString评论内容
data.list[].likeNumInteger点赞数量
data.list[].parentIdInteger上级评论ID
data.list[].createTimeDate创建时间
data.list[].userNameString考试用户姓名
data.list[].questionTitleString试题题干
data.list[].replyUserNameString回复用户姓名

评论删除:/api/comment/del(V6.2.0新增)

请求参数类型描述必填
idInteger评论主键。如果选择的一级节点,则删除所有二级节点

提示消息

删除评论时会级联删除该评论的所有回复。

响应参数类型描述
codeInteger响应码
msgString响应消息

课程(V6.1.0新增)

课程列表:course/listpage

提示消息

管理员看所有课程;子管理员看自己创建的课程和有权限的课程;

请求参数类型描述必填
idInteger主键
nameString (16)名称
stateInteger状态(1:发布;2:暂停)
curPageInteger当前第几页
pageSizeInteger每页多少条
响应参数类型描述
codeInteger响应码
msgString响应消息
data.totalInteger总行数
data.list[]Object[]分页列表
data.list[].idInteger主键
data.list[].nameString名称
data.list[].contentString简介
data.list[].shareAuthInteger共享权限(1:私有;2:只读;3:读写;)
data.list[].stateInteger状态(0:删除;1:正常;2:暂停)
data.list[].updateTimeString更新时间
data.list[].createUserNameString创建用户名称
data.list[].orgIdsInteger[]机构IDS
data.list[].userIdsInteger[]用户IDS
data.list[].courseMaterialNumInteger课程数量
data.list[].questionNumInteger试题数量(所有课程下的所有试题)

课程添加:course/add

请求参数类型描述必填
nameString(16)名称
contentString(128)简介
orgIdsInteger[]课程机构IDS
userIdsInteger[]课程用户IDS

课程添加:course/edit

请求参数类型描述必填
idInteger主键
nameString(16)名称
contentString(128)简介
orgIdsInteger[]课程机构IDS
userIdsInteger[]课程用户IDS

课程删除:course/del

请求参数类型描述必填
idInteger主键

课程获取:course/get

请求参数类型描述必填
idInteger主键
响应参数类型描述
codeInteger响应码
msgString响应消息
data.idInteger主键
data.nameString名称
data.contentString简介
data.stateInteger状态(0:删除;1:正常;2:暂停)
data.shareAuthInteger共享权限(1:私有;2:只读;3:读写;)
data.orgs[]Object[]机构数组
data.orgs[].idInteger机构ID
data.orgs[].nameString机构名称
data.users[]Object[]用户数组
data.users[].idInteger用户ID
data.users[].nameString用户名称

课程发布状态:course/state

请求参数类型描述必填
idInteger课程主键,如果发布则变为暂停,如果暂停则变为发布。

课程详情:course/share

请求参数类型描述必填
idInteger主键
shareAuthInteger共享权限(1:私有;2:只读;3:读写;)

课程资料列表:course-material/listpage

请求参数类型描述必填
courseIdInteger课程ID
nameString (16)名称
curPageInteger当前第几页
pageSizeInteger每页多少条
响应参数类型描述
codeInteger响应码
msgString响应消息
data.totalInteger总行数
data.list[]Object[]分页列表
data.list[].idInteger主键
data.list[].nameString名称
data.list[].contentString简介
data.list[].videoTimeLocalTime视频时长(HH:mm:ss)
data.list[].questionNumInteger试题数量
data.list[].updateUserNameString更新用户名称
data.list[].noInteger第几小节

课程资料添加:course-material/add

请求参数类型描述必填
courseIdInteger课程ID
videoFileIdInteger视频附件ID
nameString名称
contentString简介
courseTimesLocalTime[]课程时间数组(HH:mm:ss)
questionIdsInteger[]试题数组(业务场景为在看视频学习时,指定时间弹出试题进行答题)
noInteger第几小节

课程资料修改:course-material/edit

  • 注意:对任意字段的修改,都会导致用户需要重新学习(复制新版本删除旧版本)
请求参数类型描述必填
courseIdInteger课程ID
videoFileIdInteger视频附件ID
nameString名称
contentString简介
courseTimesLocalTime[]课程时间数组(HH:mm:ss)
questionIdsInteger[]试题数组(业务场景为在看视频学习时,指定时间弹出试题进行答题)
noInteger第几小节

课程资料删除:course-material/del

请求参数类型描述必填
idInteger主键

课程资料获取:course-material/get

请求参数类型描述必填
idInteger主键
响应参数类型描述
codeInteger响应码
msgString响应消息
data.idInteger主键
data.nameString名称
data.contentString简介
data.videoFileIdInteger视频附件ID
data.noInteger第几小节
data.courseQuestions[]Object[]课程试题数组
data.courseQuestions[].courseTimeLocalTime课程时间(HH:mm:ss)
data.courseQuestions[].questionIdInteger试题ID
data.courseQuestions[].questionTitleString试题标题

小猫考试