Jelajahi Sumber

作业相关api

GuardOfDawn 7 tahun lalu
induk
melakukan
9b3e4c108c

+ 156 - 0
assignment/api/前端api接口设计.md

@@ -0,0 +1,156 @@
+# Assignment - 作业
+
+> url 前缀:/api
+
+## 创建作业
+
+```http
+post /assignment
+```
+
+### RequestBody
+
+```json
+{
+  assignmentType:作业类型,String
+  name:作业名称,String
+  description:作业描述,String
+  startAt:开始时间,timestamp
+  endAt:开始时间,timestamp
+  problem:题目,Number
+}
+```
+
+### Response
+
+```json
+{
+  "data": AssignmentVO
+}
+```
+
+see [AssignmentVO](../serializer/AssignmentVO.md)
+
+
+## 查看作业(分页)
+
+```http
+get /course/:courseId/assignment
+```
+### RequestParam
+不传值时,为获取全部
+```
+type:作业类型,String,枚举值如下
+			- CODE:编程作业
+			- DOCUMENT:文档作业
+			- REVIEW:互评作业
+			- ML:机器学习作业
+status:作业状态,String,枚举值如下
+			- PREPARING:准备中
+			- UNAVAILABLE:创建失败
+			- READY:创建成功,但是作业未到开始时间
+			- AVAILABLE:作业开放中
+			- FINISHED:作业已经结束
+page:页,Number
+num:数量,Number
+```
+
+### Response
+
+```json
+{
+  "data": List<AssignmentVO>
+}
+```
+
+see [AssignmentVO](../serializer/AssignmentVO.md)
+
+
+## 查看单个作业
+
+```http
+get /assignment/:assignmentId
+```
+### Response
+
+```json
+{
+  "data": AssignmentVO
+}
+```
+
+see [AssignmentVO](../serializer/AssignmentVO.md)
+
+
+
+## 更新作业信息
+
+```http
+post /assignment/:assignmentId
+```
+
+### RequestBody
+
+```json
+{
+  name:作业名称,String
+  description:作业描述,String
+  startAt:开始时间,timestamp
+  endAt:开始时间,timestamp
+}
+```
+
+### Response
+
+```json
+{
+  "data": AssignmentVO
+}
+```
+
+see [AssignmentVO](../serializer/AssignmentVO.md)
+
+
+## 删除作业
+
+```http
+delete /assignment/:assignmentId
+```
+
+
+# 作业结果
+
+> url 前缀:/api
+
+## 查看作业记录
+
+```http
+get /assignment/:assignmentId/result
+```
+
+### Response
+
+```json
+{
+  "data": List<ResultVO>
+}
+```
+
+see [ResultVO](../serializer/ResultVO.md)
+
+
+## 查看作业下的成绩
+
+```http
+get /result/:resultId
+```
+
+### Response
+
+```json
+{
+  "data": ResultVO
+}
+```
+
+see [ResultVO](../serializer/ResultVO.md)

+ 22 - 0
assignment/serializer/AssignmentVO.md

@@ -0,0 +1,22 @@
+# AssignmentVO
+- 团队作业
+- 属性:
+	- id:作业编号,Number
+	- name:作业名称,String
+	- description:作业描述,String
+	- status:作业状态,String
+		- PREPARING:准备中
+		- UNAVAILABLE:创建失败
+		- READY:创建成功,但是作业未到开始时间
+		- AVAILABLE:作业开放中
+		- FINISHED:作业已经结束
+	- startAt:开始时间,timestamp(秒)
+	- endAt:结束时间,timestamp
+	- type:作业类型,String,枚举值如下
+		- CODE:编程作业
+		- DOCUMENT:文档作业
+		- REVIEW:互评作业
+		- ML:机器学习作业
+	- problem:作业题目,NestProblemVO
+		- name: 题目名称,String
+		- description: 题目描述,String

+ 10 - 0
assignment/serializer/ResultVO.md

@@ -0,0 +1,10 @@
+# ResultVO
+- 作业结果
+- 属性:
+	- id:成绩编号,Number
+	- assignment:所属作业,NestAssignmentVO
+		- id:编号,Number
+		- name: 作业名称,String
+	- group:所属组,String
+	- url:作业项目地址,String
+	- score:总分,Number