Quiz-测试.md 2.2 KB

QUIZ - 测试

url 前缀:quiz

示例:https://xxxxxxxxx/api/quiz

获得测试列表

TEACHER, STUDENT

get /

Parameters

Name Type Description
slideId string slide id
subscribe boolean 学生订阅(学生相关)的测试
state QuizState 测试状态
size number 页面展示条数
page number 当前页码
sort string? 排序方式

Response

interface ResponseData {
  quizs: QuizBasicSerialzer[];
  page: PageSerializer;
}

see QuizBasicSerialzer, PageSerializer

获得某一测试的详细内容

TEACHER, STUDENT

get /:quizId

Response

QuizSerializer;

see QuizSerializer

创建测试

TEACHER

post /

Parameter

interface QuizDTO {
  name: string; // 测试名
  quizTime: SlideState; // 测试时间
  slideId: number; // 幻灯片 id
  questions: number[]; // 题目 id;
}

Response

QuizSerializer;

see QuizSerializer

修改测试 (仅限未开始时可以修改)

TEACHER

put /:quizId

Parameter

interface QuizUpdateDTO {
  id: number;
  name: string; // 测试名
  quizTime: SlideState; // 测试时间
  slideId: number; // 幻灯片 id
  questions: number[]; // 题目 id;
}

Response

QuizSerializer;

see QuizSerializer

删除测试 (仅限未开始时可以删除)

TEACHER

delete /:quizId

Response

{
}

提交答案

STUDENT

put /:quizId/student-answer

Parameter

interface AnswerDTO {
  answers: QuestionWithStudentAnswerSerializer[];
}

Response

{
}

获得测试结果统计

TEACHER

get /:quizId/result

Parameter

interface Result {
  avarage: number; // 平均值
}