课程

课程

获取课程信息

GET /course_sets/{id}

权限

  • 不需要认证
  • 普通用户可以获得published状态的课程 [TODO]
  • 管理员用户可以获得任何状态的课程 [TODO]

响应

成功响应CourseSet结构体

字段 描述
id int string 课程ID
title string 标题
subtitle string 副标题
type enum{normal,live,liveOpen,open} 课程类型 normal:普通课程 live:直播课程 liveOpen:直播公开课 open:公开课
tags list<Tag> 标签
category Category 分类
serializeMode enum{none,serialized,finished} 连载课程 none:非连载 serialized:连载中 finished:连载结束
status enum{draft,published,closed} 状态, 普通用户只能看到published的课程
summary string 课程摘要
goals list<string> 课程目标
audiences list<string> 课程适合人群
cover Picture 课程封面图片地址
ratingNum int string 评价人数
rating float string 评价平均分
noteNum int string 笔记数量
studentNum int string 学员数量
recommended bool 是否推荐课程
recommendedSeq int string 推荐序号
recommendedTime datetime 推荐时间
orgId int string 组织机构ID
orgCode string 组织机构编码
discountId int string 打折活动ID
discount int string 折扣量
maxRate int string 最大可被虚拟币抵扣百分比
hitNum int string 课程查看次数
materialNum int string 资料数量
parentId int string 父课程ID
locked bool 课程锁定状态
maxCoursePrice float string 已发布教学计划的最高价格
minCoursePrice float string 已发布教学计划的最低价格
maxOriginCoursePrice float string 已发布教学计划的最高原价格
minOriginCoursePrice float string 已发布教学计划的最低原价格
creator SimpleUser 课程创建者
createdTime datetime 创建时间
updatedTime datetime 最后更新时间
teachers list<SimpleUser> 教师

错误

失败响应Error结构体,错误码有

Code 错误说明 HTTP状态码
10 课程不存在 404

获取全部课程列表

GET /course_sets

权限

  • Access-Token认证方式可以获得任何状态的课程

参数

字段 是否必填 描述
filter enum{normal,lease} 课程类型, 默认normal,租赁课程lease
categoryId int string 分类ID,默认all
orgIds int string 部门id(eg:1,2,3)
status int string 课程状态,未发布draft,已发布published,已关闭closed
title string 课程标题
creatorName string 创建者用户名(eg:admin)
offset int string 分页偏移值, 默认0
limit int string 每一页数量, 默认10

响应

成功响应pagelist<CourseSet>结构体

获取课程列表

GET /course_sets

权限

  • 需要认证
  • 普通用户可以获得public状态的课程
  • Access-Token认证方式可以获得任何状态的课程

参数

字段 是否必填 描述
type enum{normal,live,liveOpen,open} 课程类型, 默认normal
categoryId int string 分类ID,默认all
title string 课程标题
sort string 排序字段 'createdTime','updatedTime','recommendedSeq',
'hitNum','recommendedTime','ratincourg','studentNum'
offset int string 分页偏移值, 默认0
limit int string 每一页数量, 默认10

响应

成功响应pagelist<CourseSet>结构体

课程成员

获取课程所有学员(去重)

GET /course_sets/{courseSetId}/latest_members

权限

  • 不需要认证

参数

字段 是否必填 描述
offset int string 分页偏移值,默认0
limit int string 每一页数量,默认10

响应

成功响应list<CourseMember>结构体

字段 描述
id int string 成员ID
courseSetId int string 课程ID
courseId int string 教学计划ID
user SimpleUser 用户信息
deadline datetime 到期时间
levelId int string vipID
learnedNum int string 已学任务数量
noteNum int string 笔记数量
noteLastUpdateTime datetime 笔记数量
isLearned bool 是否学完
finishedTime datetime 何时完成计划
role enum{teacher,student} 角色
locked bool 是否被锁
createdTime datetime 加入时间
lastLearnTime datetime 最近学习时间
lastViewTime datetime 最近观看视频时间
access Access 是否可以继续学习 success:可以 course.unpublished:课程未发布 course.expired:学习有效期已过 course.not_arrive:未到授课时间 member.expired:学员有效期已到 vip.member_expired:vip过期 vip.level_not_exist:vip等级不存在 vip.level_low:等级过低

教学计划

获取单个教学计划

GET /courses/{id}

权限

  • 不需要认证用户

响应

成功响应Course结构体

字段 描述
id int string 教学计划ID
courseSet SimpleCourseSet 课程
title string 教学计划标题
learnMode string 学习模式
learningExpiryDate ExpiryDate 学习有效期
summary string 教学计划简介
goals list<string> 教学计划目标
audiences list<string> 教学计划适合人群
isDefault int string 是否是默认教学计划
maxStudentNum int string 最大允许加入学员
status string 教学计划状态
creator SimpleUser 教学计划创建者
isFree int string 是否免费
price float string 价格
originPrice float string 价格
enableFinish bool 是否允许学员强制完成任务, 1:表示不限制 0:表示限制
vipLevelId int string vipId
tryLookable int string 是否允许试看
tryLookLength int string 允许试看时长
watchLimit int string 观看次数
services list<Service> 承诺服务
taskNum int string 总任务数
publishedTaskNum int string 发布的任务数
studentNum int string 学员数
teachers list<SimpleUser> 教师
parentId int string 父计划ID
createdTime datetime 创建时间
updatedTime datetime 最后更新时间
access Access 是否可加入课程 success:可以加入 user.not_login:用户未登录 user.locked:用户被锁 course.unpublished:课程未发布 course.closed:课程已关闭 course.not_buyable:课程被设置不可加入 course.buy_expired:购买有效期已过 course.expired:学习有效期已过 course.only_vip_join_way:只能通过VIP加入

ExpiryDate结构体

字段 描述
expired bool 是否已过期
expiryMode enum{days,date} 教学计划到期模式 days:指定天数后过期 date:指定的时间过期
expiryDays int string 到期天数
expiryStartDate datetime 到期开始时间
expiryEndDate datetime 到期结束时间

Service结构体

字段 描述
code string 服务编码
shortName string 短名称
fullName string 长名称
summary string 描述信息

Access结构体

字段 描述
code string 编码
msg string 信息

错误

失败响应Error结构体,错误码有

Code 错误说明 HTTP状态码
10 教学计划不存在 404

获取课程已发布的教学计划

GET /course_sets/{course_setId}/courses

权限

  • 不需要认证用户

响应

成功响应list<Course>结构体

错误

失败响应Error结构体,错误码有:

Code 错误说明 HTTP状态码
10 课程不存在 404

获取我加入的教学计划

GET /me/course_sets/{courseSetId}/course_members

权限

  • 认证用户

响应

成功响应list<CourseMember>结构体

教学计划成员

加入教学计划,成为学员

POST /courses/{id}/members

权限

  • 需要认证用户

响应

加入成功返回CourseMember

加入失败返回空对象

错误

失败响应Error结构体,错误码有:

Code 错误说明 HTTP状态码
10 教学计划不存在 404

获取教学计划学员

GET /courses/{courseId}/members

权限

  • 不认证用户

参数

字段 是否必填 描述
role enum{student,teacher} 角色,默认查询所有角色
offset int string 分页偏移值, 默认0
limit int string 每一页数量, 默认10

响应

成功响应list<CourseMember>结构体

获取单个教学计划成员

GET /me/course_members/{courseId}

权限

  • 认证用户

响应

成功响应CourseMember结构体

教学计划任务

获取单个任务

GET /courses/{courseId}/tasks/{taskId}

权限

  • 需要认证

响应

成功响应CourseTask结构体

字段 描述
id int string 任务ID
title string 任务标题
isFree int string 是否免费
isOptional int string 是否选修
startTime datetime 直播开始时间
endTime datetime 直播结束时间
mode string 任务模式
status string 任务状态
type int string 任务类型
length int string 视频时长(秒)
result SimpleTaskResult 任务结果 传入token,才有这个属性
lock bool 任务是否被锁住 传入token,才有这个属性
activity Activity 活动

Activity 结构体

字段 描述
id int string ID
remark string 描述信息
replayStatus enum{ungenerated,generating,generated} 直播回放状态
finishType string 任务完成类型
finishDetail string 任务完成条件

获取教学计划的目录列表

GET /courses/{id}/items

权限

  • 不需要认证

参数

字段 是否必填 描述
onlyPublished int string onlyPublished=1,过滤掉未发布的任务

响应

成功响应CourseItem结构体

字段 描述
type enum{task,chapter,unit} 类型
number int string 显示的数字
seq int string 任务的顺序
title string 标题
task CourseTask 任务

错误

失败响应Error结构体,错误码有

Code 错误说明 HTTP状态码
10 教学计划不存在 404

获取计划下的第一个试看任务

GET /courses/{id}/trial_tasks/first

权限

  • 不需要用户认证

响应

成功响应CourseTask

错误

失败响应Error结构体,错误码有

Code 错误说明 HTTP状态码
10 计划不存在 404

错误

失败响应Error结构体,错误码有

Code 错误说明 HTTP状态码
10 教学计划不存在 404

评价

获取计划的所有评价

GET /courses/{id}/reviews

权限

  • 不需要用户认证
  • 公开的评价 -> private = 0

参数

字段 描述
offset int string 分页偏移值, 默认0
limit int string 每一页数量, 默认10

响应

成功响应list<CourseReview>结构体

字段 描述
id int string 评价ID
userId int string 评价人ID
courseId int string 教学计划ID
title string 评价标题
content string 评价内容
rating int string 评价分数
private bool 是否是私有评价
createdTime datetime 创建时间
updatedTime datetime 最后更新时间
parentId int string 父ID
meta string 保存当时用户的学习进度
courseSetId int string 课程ID

错误

失败响应Error结构体,错误码有

Code 错误说明 HTTP状态码
10 教学计划不存在 404

获取课程的所有评价

GET /course_sets/{id}/reviews

权限

  • 不需要用户认证
  • 公开的评价 -> private = 0

参数

字段 描述
offset int string 分页偏移值, 默认0
limit int string 每一页数量, 默认10

响应

成功响应list<CourseReview>结构体

错误

失败响应Error结构体,错误码有

Code 错误说明 HTTP状态码
10 课程不存在 404

学习进度

获取我的教学计划下的学习进度

GET /me/course_learning_progress/{courseId}

权限

  • 需要用户认证

响应

字段 描述
taskCount int string 任务总数
taskResultCount int string 完成的任务数
progress int string 当前学习进度百分比
nextTask CourseTask 下一个学习的任务
taskPerDay int string 任务式课程每日建议学习任务数
planStudyTaskCount int string 计划应学数量
planProgressProgress int string 计划进度
member SimpleCourseMember 成员信息

SimpleCourseMember 结构体

字段 描述
id int string ID
courseId int string 计划ID
deadline datetime 学习有效期

错误

失败响应Error结构体,错误码有

Code 错误说明 HTTP状态码
10 计划不存在 404

课程收藏

我收藏的课程

GET /me/favorite_course_sets

权限

  • 需要认证用户

参数

字段 描述
offset int string 分页偏移值, 默认0
limit int string 每一页数量, 默认10

响应

成功响应pageList<SimpleCourseSet>

字段 描述
id int string ID
title string 标题
subtitle string 副标题
type enum{normal,live,open,liveOpen} 类型
cover [CourseCover#CourseCover] 封面
studentNum int string 学员数量
maxCoursePrice int string 最大价格
minCoursePrice int string 最小价格
maxOriginCoursePrice int string 最高原价格
minOriginCoursePrice int string 最小原价格
discount int string 优惠

是否收藏课程

GET /me/favorite_course_sets/{courseSetId}

权限

  • 需要认证用户

响应:

成功响应

字段 描述
isFavorite bool 是否收藏

收藏课程

POST /me/favorite_course_sets

权限

  • 需要认证用户

参数

字段 是否必填 描述
courseSetId int string 课程ID

响应

成功响应

字段 描述
success bool 收藏是否成功

取消收藏课程

DELETE /me/favorite_course_sets/{courseSetId}

权限

  • 需要认证用户

参数

字段 是否必填 描述
courseSetId int string 课程ID

响应

成功响应

字段 描述
success bool 取消是否成功

退出

退出计划

DELETE /me/course_members/{courseId}

权限

  • 需要认证用户

参数

字段 是否必填 描述
reason string 退出原因

响应

成功响应

字段 描述
success bool 取消是否成功

事件

学习任务

PATCH /courses/{courseId}/tasks/{taskId}/events/{envet:doing,finish}

权限

  • 需要认证用户

参数

字段 是否必填 描述
lastTime timestamp 最近一次记录任务的时间戳

成功响应

字段 描述
result TaskResult 任务结果
event string 任务名称
lastTime timestamp 最近一次记录任务的时间戳
nextTask CourseTask 下一个任务 只有当前任务完成了才有值,否则是null
completionRate int string 课程完成百分比 只有当前任务完成了才有值,否则是null

TaskResult 结构体

字段 描述
id int string 任务结果ID
activityId int string 活动ID
courseId int string 计划ID
courseTaskId int string 任务ID
createdTime datetime 任务开始时间
finishedTime datetime 任务完成时间
status enum{start,finish} 任务的状态
updatedTime enum{start,finish} 最后更新时间
userId enum{start,finish} 用户ID

查看计划

PATCH /courses/{courseId}/events/{event:course_view}

权限

  • 不需要认证

results matching ""

    No results matching ""