Kaynağa Gözat

update API Doc: 课程点赞、查看热门课程列表

tubinyan 5 yıl önce
ebeveyn
işleme
8c2139b36d
1 değiştirilmiş dosya ile 233 ekleme ve 0 silme
  1. 233 0
      API Doc.md

+ 233 - 0
API Doc.md

@@ -192,6 +192,7 @@
      * @apiSuccess (响应结果) {Number} cost
      * @apiSuccess (响应结果) {Number} teacherId
      * @apiSuccess (响应结果) {String} teacherName
+     * @apiSuccess (响应结果) {Number} likes - 课程点赞数
      * @apiSuccess (响应结果) {Boolean} bought
      * @apiSuccess (响应结果) {Boolean} manageable
      * @apiSuccessExample 响应结果示例
@@ -206,6 +207,7 @@
             "cost": 1,
             "teacherId": 1,
             "teacherName": "刘钦",
+            "likes": 6,
             "bought": false,
             "manageable": true
         }
@@ -930,4 +932,235 @@ GET course_ware/course/1
             }
         ]
     */
+```
+
+### 课程点赞功能
+
+1、 用户点赞某课程
+
+```
+    /**
+     * @api {POST} /course/like/{courseId} setCourseLike
+     * @apiVersion 1.0.0
+     * @apiGroup CourseController
+     * @apiName setCourseLike
+     * @apiParam (请求参数) {Number} uid
+     * @apiParam (请求参数) {Number} courseId
+     * @apiParamExample 请求参数示例
+     * POST course/like/1?uid=1
+     * @apiSuccess (响应结果) {Number} code
+     * @apiSuccess (响应结果) {String} msg
+     * @apiSuccess (响应结果) {Object} data - 点赞后的课程信息
+     * @apiSuccess (响应结果) {Number} data.id
+     * @apiSuccess (响应结果) {String} data.name
+     * @apiSuccess (响应结果) {String} data.type
+     * @apiSuccess (响应结果) {String} data.intro
+     * @apiSuccess (响应结果) {String} data.picture
+     * @apiSuccess (响应结果) {String} data.school
+     * @apiSuccess (响应结果) {Number} data.createTime
+     * @apiSuccess (响应结果) {Number} data.cost
+     * @apiSuccess (响应结果) {Number} data.teacherId
+     * @apiSuccess (响应结果) {String} data.teacherName
+     * @apiSuccess (响应结果) {Number} data.likes - 课程点赞数
+     * @apiSuccess (响应结果) {Boolean} data.bought - 是否为已购买课程
+     * @apiSuccess (响应结果) {Boolean} data.manageable - 是否为可管理课程(教师权限)
+     * @apiSuccessExample 响应结果示例
+         示例1:
+         {
+             "code": 1,
+             "msg": "操作成功",
+             "data": {
+                 "id": 1,
+                 "name": "软件工程与计算 I",
+                 "type": "中级",
+                 "intro": "通过Scheme、Python和Java语言,让你分别体会函数式编程范式、结构化编程范式和面向对象编程范式",
+                 "picture": "course1.png",
+                 "school": "南京大学",
+                 "createTime": "2020-12-20 10:00:00",
+                 "cost": 1,
+                 "teacherId": 100,
+                 "teacherName": "刘钦",
+                 "likes": 7,
+                 "bought": false,
+                 "manageable": false
+             }
+         }
+        示例2:
+        {
+            "code": 0,
+            "msg": "您已经为当前课程点赞过,请勿重复操作!",
+            "data": null
+        }
+     */
+```
+
+2、 用户取消点赞某课程
+
+```
+    /**
+     * @api {POST} /course/cancel_like/{courseId} cancelCourseLike
+     * @apiVersion 1.0.0
+     * @apiGroup CourseController
+     * @apiName setCourseLike
+     * @apiParam (请求参数) {Number} uid
+     * @apiParam (请求参数) {Number} courseId
+     * @apiParamExample 请求参数示例
+     * POST course/cancel_like/1?uid=1
+     * @apiSuccess (响应结果) {Number} code
+     * @apiSuccess (响应结果) {String} msg
+     * @apiSuccess (响应结果) {Object} data
+     * @apiSuccess (响应结果) {Number} data.id
+     * @apiSuccess (响应结果) {String} data.name
+     * @apiSuccess (响应结果) {String} data.type
+     * @apiSuccess (响应结果) {String} data.intro
+     * @apiSuccess (响应结果) {String} data.picture
+     * @apiSuccess (响应结果) {String} data.school
+     * @apiSuccess (响应结果) {Number} data.createTime
+     * @apiSuccess (响应结果) {Number} data.cost
+     * @apiSuccess (响应结果) {Number} data.teacherId
+     * @apiSuccess (响应结果) {String} data.teacherName
+     * @apiSuccess (响应结果) {Number} data.likes - 课程点赞数
+     * @apiSuccess (响应结果) {Boolean} data.bought - 是否为已购买课程
+     * @apiSuccess (响应结果) {Boolean} data.manageable - 是否为可管理课程(教师权限)
+     * @apiSuccessExample 响应结果示例
+         {
+             "code": 1,
+             "msg": "操作成功",
+             "data": {
+                 "id": 1,
+                 "name": "软件工程与计算 I",
+                 "type": "中级",
+                 "intro": "通过Scheme、Python和Java语言,让你分别体会函数式编程范式、结构化编程范式和面向对象编程范式",
+                 "picture": "course1.png",
+                 "school": "南京大学",
+                 "createTime": "2020-12-20 10:00:00",
+                 "cost": 1,
+                 "teacherId": 100,
+                 "teacherName": "刘钦",
+                 "likes": 6,
+                 "bought": false,
+                 "manageable": false
+             }
+         }
+     */
+```
+
+### 查看热门课程
+
+用户查看热门课程列表(根据点赞数likes倒序排列)
+分页查询返回结果
+
+```
+    /**
+     * @api {GET} /course/hot/{page} getHotCourses
+     * @apiVersion 1.0.0
+     * @apiGroup CourseController
+     * @apiName getHotCourses
+     * @apiParam (请求参数) {Number} page
+     * @apiParamExample 请求参数示例
+     * course/hot/1
+     * @apiSuccess (响应结果) {Number} pageNum
+     * @apiSuccess (响应结果) {Number} pageSize
+     * @apiSuccess (响应结果) {Number} size
+     * @apiSuccess (响应结果) {Number} startRow
+     * @apiSuccess (响应结果) {Number} endRow
+     * @apiSuccess (响应结果) {Number} total
+     * @apiSuccess (响应结果) {Number} pages
+     * @apiSuccess (响应结果) {Array} list
+     * @apiSuccess (响应结果) {Number} list.id
+     * @apiSuccess (响应结果) {String} list.name
+     * @apiSuccess (响应结果) {String} list.type
+     * @apiSuccess (响应结果) {String} list.intro
+     * @apiSuccess (响应结果) {String} list.picture
+     * @apiSuccess (响应结果) {String} list.school
+     * @apiSuccess (响应结果) {Number} list.createTime
+     * @apiSuccess (响应结果) {Number} list.cost
+     * @apiSuccess (响应结果) {Number} list.teacherId
+     * @apiSuccess (响应结果) {String} list.teacherName
+     * @apiSuccess (响应结果) {Number} list.likes
+     * @apiSuccess (响应结果) {Boolean} list.bought
+     * @apiSuccess (响应结果) {Boolean} list.manageable
+     * @apiSuccess (响应结果) {Number} prePage
+     * @apiSuccess (响应结果) {Number} nextPage
+     * @apiSuccess (响应结果) {Boolean} isFirstPage
+     * @apiSuccess (响应结果) {Boolean} isLastPage
+     * @apiSuccess (响应结果) {Boolean} hasPreviousPage
+     * @apiSuccess (响应结果) {Boolean} hasNextPage
+     * @apiSuccess (响应结果) {Number} navigatePages
+     * @apiSuccess (响应结果) {Array} navigatepageNums
+     * @apiSuccess (响应结果) {Number} navigateFirstPage
+     * @apiSuccess (响应结果) {Number} navigateLastPage
+     * @apiSuccessExample 响应结果示例
+         {
+             "pageNum": 1,
+             "pageSize": 3,
+             "size": 3,
+             "startRow": 1,
+             "endRow": 3,
+             "total": 5,
+             "pages": 2,
+             "list": [
+                 {
+                     "id": 4,
+                     "name": "基于Java的面向对象编程范式",
+                     "type": "初级",
+                     "intro": "本课程完成了编程思维、结构化编程范式、面向对象编程方式的介绍,并且着重强调了面向对象编程中封装、协作和可修改性三个重要概念。通过客观题和6道编程题的训练,进一步加深对面向对象编程范式的理解,初步领略面向对象编程范式的风采。",
+                     "picture": "course4.png",
+                     "school": "南京大学",
+                     "createTime": "2020-12-20 10:00:00",
+                     "cost": 1,
+                     "teacherId": 400,
+                     "teacherName": "刘钦",
+                     "likes": 6,
+                     "bought": false,
+                     "manageable": false
+                 },
+                 {
+                     "id": 1,
+                     "name": "软件工程与计算 I",
+                     "type": "中级",
+                     "intro": "通过Scheme、Python和Java语言,让你分别体会函数式编程范式、结构化编程范式和面向对象编程范式",
+                     "picture": "course1.png",
+                     "school": "南京大学",
+                     "createTime": "2020-12-20 10:00:00",
+                     "cost": 1,
+                     "teacherId": 100,
+                     "teacherName": "刘钦",
+                     "likes": 5,
+                     "bought": false,
+                     "manageable": false
+                 },
+                 {
+                     "id": 2,
+                     "name": "软件工程与计算 II",
+                     "type": "中级",
+                     "intro": "基于DevOps培养团队开发中小规模软件系统的能力",
+                     "picture": "course2.png",
+                     "school": "南京大学",
+                     "createTime": "2020-12-20 10:00:00",
+                     "cost": 1,
+                     "teacherId": 200,
+                     "teacherName": "刘钦",
+                     "likes": 3,
+                     "bought": false,
+                     "manageable": false
+                 }
+             ],
+             "prePage": 0,
+             "nextPage": 2,
+             "isFirstPage": true,
+             "isLastPage": false,
+             "hasPreviousPage": false,
+             "hasNextPage": true,
+             "navigatePages": 8,
+             "navigatepageNums": [
+                 1,
+                 2
+             ],
+             "navigateFirstPage": 1,
+             "navigateLastPage": 2,
+             "lastPage": 2,
+             "firstPage": 1
+         }
+     */
 ```