酷学院 (Cool College) 学习 API

* 访问学习相关的操作以及数据 * ```{enterprise-id}```可在系统内获取 * 学习的```{plan-id}```可以通过获取学习任务列表的API得到

OpenAPI Specification

coolcollege-default-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: 酷学院 REST 学习 API
  description: 欢迎使用酷学院开放平台Open API 服务
  contact:
    email: service@coolcollege.cn
  version: v2
  x-logo:
    url: https://oss.coolcollege.cn/1553567081676c%402x.png
    backgroundColor: '#9145e6'
servers:
- url: https://openapi.coolcollege.cn/api/v2
tags:
- name: 学习
  description: '* 访问学习相关的操作以及数据

    * ```{enterprise-id}```可在系统内获取

    * 学习的```{plan-id}```可以通过获取学习任务列表的API得到

    '
paths:
  /{enterprise-id}/plans:
    get:
      tags:
      - 学习
      summary: 获取学习任务列表
      description: 获取学习任务列表信息,包含任务的plan id和对应的名称
      parameters:
      - name: page_number
        in: query
        description: 分页的页码,取值为1,2,3...
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: page_size
        in: query
        description: 分页大小,表示每页返回的记录数量
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: begin_time
        in: query
        description: 开始时间
        required: false
        style: form
        explode: true
        example: '2020-08-15'
        schema:
          type: string
      - name: end_time
        in: query
        description: 结束时间
        required: false
        style: form
        explode: true
        example: '2020-08-18'
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    description: 业务code
                    example: '0'
                  message:
                    type: string
                    description: 错误信息
                    example: success
                  data:
                    type: object
                    description: 返回的数据
                    properties:
                      total:
                        type: number
                        description: 任务总数
                        example: 100
                      has_next_page:
                        type: string
                        description: 是否还有下一页,true或者false
                        enum:
                        - 'true'
                        - 'false'
                      plans:
                        type: array
                        description: 任务列表
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                              description: 学习任务的id
                              example: '1790288206508462080'
                            name:
                              type: string
                              description: 学习任务的名称,用户自定义
                              example: 学完这个瘦三斤
                            begin_time:
                              type: timestamp
                              description: 学习任务期限开始时间(13位时间戳)
                              example: 1584857523000
                            end_time:
                              type: timestamp
                              description: 学习任务期限结束时间(13位时间戳)
                              example: 1584857523000
                            supervisor_id_list:
                              type: array
                              description: 监督人ID,数组形式
                              items:
                                type: string
                                description: 监督人ID
                                example: '1789888713963212800'
  /{enterprise-id}/plans/{plan-id}:
    get:
      tags:
      - 学习
      summary: 获取学习任务状态信息
      description: 获取学习任务的监控状态信息
      parameters:
      - name: passing_status
        in: query
        description: 提供结果过滤的参数,过滤条件为是否通过相关
        required: false
        style: form
        explode: true
        schema:
          type: string
          enum:
          - passed
          - failed
          - all
      - name: plan_status
        in: query
        description: 任务状态,通过状态可以筛选任务分类
        required: false
        style: form
        explode: true
        schema:
          type: string
          enum:
          - all
          - ongoing
          - completed
          - overdue
      - name: search_name
        in: query
        description: 通过人员姓名筛选任务结果
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: page_number
        in: query
        description: 分页的页码,取值为1,2,3...
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: page_size
        in: query
        description: 分页大小,表示每页返回的记录数量
        required: false
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    description: 业务code
                    example: '0'
                  message:
                    type: string
                    description: 错误信息
                    example: success
                  data:
                    type: object
                    description: 返回的数据
                    properties:
                      creator_name:
                        type: string
                        description: 任务的创建人姓名
                        example: 张三
                      total:
                        type: number
                        description: 参加任务的总人数
                        example: 37
                      completed:
                        type: number
                        description: 完成任务的人数
                        example: 24
                      ongoing:
                        type: number
                        description: 正在进行任务的人数
                        example: 13
                      overdue:
                        type: number
                        description: 逾期的任务的人数
                        example: 0
                      monitoring_data:
                        type: object
                        description: 监控数据的具体内容
                        properties:
                          has_next_page:
                            type: string
                            description: 是否有下一页,类型为string,值为true或false
                            enum:
                            - 'true'
                            - 'false'
                            example: 'true'
                          data:
                            type: array
                            description: 监控按照学员为维度的数据,数组形式
                            items:
                              type: object
                              properties:
                                user_name:
                                  type: string
                                  description: 学员名字
                                  example: Samus Aran
                                user_id:
                                  type: string
                                  description: 学员的id,也是用户id
                                  example: '1789931551983800320'
                                job_number:
                                  type: string
                                  description: 工号
                                  example: wwwww
                                plan_status:
                                  type: string
                                  description: 当前学员的任务学习状态
                                  enum:
                                  - ongoing
                                  - completed
                                  - overdue
                                  example: completed
                                plan_status_name:
                                  type: string
                                  description: 当前学员的任务学习状态,中文名称,意义与task_status一致
                                  enum:
                                  - 进行中
                                  - 已完成
                                  - 逾期
                                  example: 已完成
                                passing_status:
                                  type: string
                                  description: 通过状态,是否通过
                                  enum:
                                  - passed
                                  - failed
                                  example: passed
                                passing_status_name:
                                  type: string
                                  description: 通过状态,中文名称,意义与passing_status一致
                                  enum:
                                  - 合格
                                  - 不合格
                                  example: 合格
                                department_names:
                                  type: array
                                  description: 当前学员所在部门的名称
                                  items:
                                    type: string
                                    description: 所属部门,一个人可以有多个部门
                                    example: 保卫科
                                position_names:
                                  type: array
                                  description: 当前学员所在岗位的名称
                                  items:
                                    type: string
                                    description: 所属岗位,一个人可以有多个岗位
                                    example: 研发部
                                progress:
                                  type: number
                                  description: 总培训任务进度, 100表示100%
                                  example: 100
                                study_progress:
                                  type: number
                                  description: 学习部分的进度, 100表示100%
                                  example: 100
                                exam_passed:
                                  type: number
                                  description: 及格的场次
                                  example: 1
                                credits:
                                  type: string
                                  description: 学分
                                  example: '22'
                                certificate_name:
                                  type: string
                                  description: 证书名称
                                  example: 工程师认证
                                study_duration:
                                  type: string
                                  description: 学习时长
                                  example: 00:30:00
                                offline_train_duration:
                                  type: string
                                  description: 线下培训时长
                                  example: 00:27:00
                                exam_duration:
                                  type: string
                                  description: 考试时长
                                  example: 00:30:00
                                stage_data:
                                  type: array
                                  description: 分阶段详细进度内容
                                  items:
                                    type: object
                                    description: 每一个阶段的数据
                                    properties:
                                      stage_seq_number:
                                        type: number
                                        description: 阶段顺序号,例如1表示阶段1
                                        example: 1
                                      stage_name:
                                        type: string
                                        description: 用户设置的阶段名称
                                        example: 阶段一
                                      stage_progress:
                                        type: number
                                        description: 阶段完成的进度, 100代表100%
                                        example: 100
                                      elements:
                                        type: array
                                        description: 阶段内的组合元素的数据
                                        items:
                                          type: object
                                          properties:
                                            title:
                                              type: string
                                              description: 阶段元素的名称
                                              example: 20天java从入门到脊柱侧弯
                                            is_exam:
                                              type: string
                                              description: 是否是考试元素
                                              enum:
                                              - 'true'
                                              - 'false'
                                              example: 'true'
                                            exam_passing_status:
                                              type: string
                                              description: 若是考试元素,则此字段有值
                                              enum:
                                              - ''
                                              - passed
                                              - failed
                                              example: passed
                                            element_progress:
                                              type: number
                                              description: 当前元素的完成进度, 100表示100%
                                              example: 100
                                            score:
                                              type: number
                                              description: 得分
                                              example: 100
                                            content_type:
                                              type: string
                                              description: 资源类型
                                              example: course
                                              enum:
                                              - course
                                              - resource
                                              - local_upload
                                              - url
                                              - ding
                                              - exam
                                              - laotoja
                                              - qualification
                                              - questionnaire
                                              - operation
                                              - evaluation
                                              - 'null'
                                            content_type_name:
                                              type: string
                                              description: 资源类型名称
                                              example: 课程
                                              enum:
                                              - 课程
                                              - 课件
                                              - 本地上传
                                              - 图文课
                                              - 钉盘
                                              - 考试
                                              - 线下培训
                                              - 认证
                                              - 问卷
                                              - 实操
                                              - 测评
                                              - 未知
                                            id:
                                              type: string
                                              description: 资源id
                                              example: '1794902443897786368'
                      supervisor_id_list:
                        type: array
                        description: 监督人ID,数组形式
                        items:
                          type: string
                          description: 监督人ID
                          example: '1789888713963212800'
  /{enterprise-id}/study_project_list:
    get:
      tags:
      - 学习
      summary: 获取学习项目信息
      description: 获取学习项目信息
      parameters:
      - name: page_number
        in: query
        description: 分页的页码,取值为1,2,3...
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: page_size
        in: query
        description: 分页大小,表示每页返回的记录数量
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: start_time
        in: query
        description: yyyy-mm-dd格式化的日期
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: end_time
        in: query
        description: yyyy-mm-dd格式化的日期
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: keyword
        in: query
        description: 根据学习项目名称查询
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    description: 业务code
                    example: '0'
                  message:
                    type: string
                    description: 错误信息
                    example: success
                  data:
                    type: object
                    description: 返回的数据
                    properties:
                      total:
                        type: number
                        description: 学习项目总数
                        example: 100
                      has_next_page:
                        type: string
                        description: 是否还有下一页,true或者false
                        enum:
                        - 'true'
                        - 'false'
                      list:
                        type: array
                        description: 学习项目信息
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                              description: 学习项目id
                              example: 6cfb8bd149d048afb43eb6bf39009783
                            title:
                              type: string
                              description: 学习项目名称
                              example: 学习项目
                            create_time:
                              type: number
                              description: 创建时间
                              example: 1617262514000
                            is_free:
                              type: boolean
                              description: true
                            classify_name:
                              type: string
                              description: 资源分类
                              example: 经验分享
                            cover:
                              type: string
                              description: 学习项目封面
                              example: https://oss.coolcollege.cn/1800048808671973376.png
                            need_enroll:
                              type: boolean
                              description: 是否需要报名
                              example: false
                            official_price:
                              type: number
                              description: 市场价
                              example: 100
                            preferential_price:
                              type: number
                              description: 优惠价
                              example: 10
                            lecturer_name:
                              type: string
                              description: 讲师名称
                              example: 崔建中(示例)
                            tags:
                              type: array
                              description: '标签 '
                              items:
                                type: array
                                description: 标签名称
                                example: 管理岗
  /{enterprise-id}/users/{user-id}/score:
    get:
      tags:
      - 学习
      summary: 查询用户的学分
      description: 查询某个用户某年的学分之和
      parameters:
      - name: year
        in: query
        description: 年份
        required: true
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    description: 业务code
                    example: '0'
                  message:
                    type: string
                    description: 错误信息
                    example: success
                  data:
                    type: object
                    description: 返回的数据
                    properties:
                      total_score:
                        type: string
                        description: 总学分
                        example: '12'
  /{enterprise-id}/operations/{approval-id}/approval:
    get:
      tags:
      - 学习
      summary: 查询用户的实操
      description: 查询某个用户实操详情
      parameters:
      - name: submit_user_id
        in: query
        description: 提交人id
        required: true
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    description: 业务code
                    example: '0'
                  message:
                    type: string
                    description: 错误信息
                    example: success
                  data:
                    type: object
                    description: 返回的数据
                    properties:
                      approval_user:
                        type: string
                        description: 实操提交人姓名
                        example: 张三
                      score:
                        type: string
                        description: 实操评分
                        example: '53.0'
                      submit_time:
                        type: timestamp
                        description: 提交时间(13位时间戳)
                        example: 1619444902000
                      suggest:
                        type: string
                        description: 实操评审内容
                        example: 实操做的非常棒
                      title:
                        type: string
                        description: 实操标题
                        example: 实操演练
                      content:
                        type: string
                        description: 作业要求
                        example: 实操的要求说明
                      operation_source:
                        type: string
                        description: 实操来源
                        example: study 学习任务
                      steps:
                        type: array
                        description: 实操阶段内容
                        items:
                          type: object
                          properties:
                            step:
                              type: string
                              description: 实操阶段
                              example: 1阶段
                            content:
                              type: string
                              description: 实操提交内容
                              example: 学员实操内容
  /{enterprise-id}/archives:
    get:
      tags:
      - 学习
      summary: 获取员工档案信息
      description: 获取员工档案信息
      parameters:
      - name: page_number
        in: query
        description: 分页的页码,取值为1,2,3...
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: page_size
        in: query
        description: 分页大小,表示每页返回的记录数量
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: start_time
        in: query
        description: yyyy-mm-dd格式化的日期
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: end_time
        in: query
        description: yyyy-mm-dd格式化的日期
        required: false
        style: form
        explode: true
        schema:
          type: string
      - name: job_status
        in: query
        description: 人员在职状态
        schema:
          type: string
          enum:
          - leave
          - on_job
      - name: search_name
        in: query
        description: 人员姓名
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    description: 业务code
                    example: '0'
                  message:
                    type: string
                    description: 错误信息
                    example: success
                  data:
                    type: object
                    description: 返回的数据
                    properties:
                      total:
                        type: number
                        description: 任务总数
                        example: 100
                      has_next_page:
                        type: string
                        description: 是否还有下一页,true或者false
                        enum:
                        - 'true'
                        - 'false'
                      users:
                        type: array
                        description: 用户信息
                        items:
                          type: object
                          properties:
                            user_id:
                              type: string
                              description: 用户id
                              example: '1790288206508462080'
                            jobnumber:
                              type: string
                              description: 工号
                              example: '888888'
                            user_name:
                              type: string
                              description: 用户名
                              example: 张三
                            position_names:
                              type: array
                              description: 岗位
                            completed_rate:
                              type: string
                              description: 完成率
                              example: 10%
                            overdue_rate:
                              type: string
                              description: 逾期率
                              example: 10%
                            credits:
                              type: number
                              description: 已获得学分
                              example: 10
                            certificate_count:
                              type: number
                              description: 已获得证书
                              example: 97
                            new_employee_ongoing_count:
                              type: number
                              description: 新员工任务进行中个数
                              example: 10
                            new_employee_completed_count:
                              type: number
                              description: 新员工任务已完成个数
                              example: 10
                            new_employee_overdue_count:
                              type: number
                              description: 新员工任务逾期个数
                              example: 12
                            study_ongoing_count:
                              type: number
                              description: 学习任务进行中个数
                              example: 1
                            study_completed_count:
                              type: number
                              description: 学习任务已完成个数
                              example: 1
                            study_overdue_count:
                              type: number
                              description: 学习任务逾期个数
                              example: 12
                            exam_un_join_count:
                              type: number
                              description: 考试未考个数
                              example: 12
                            exam_passed_count:
                              type: number
                              description: 考试合格个数
                              example: 1
                            exam_failed_count:
                              type: number
                              description: 考试不合格个数
                              example: 12
                            exam_missed_count:
                              type: number
                              description: 考试缺考个数
                              example: 12
  /{enterprise-id}/get_userId_appId_list/query:
    post:
    

# --- truncated at 32 KB (83 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/coolcollege/refs/heads/main/openapi/coolcollege-default-api-openapi.yml