From 3ffbcb44e0b9e4d134281c4ed207463677cecf87 Mon Sep 17 00:00:00 2001 From: zhl Date: Wed, 2 Jun 2021 17:53:32 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=8C=91=E6=88=98=E6=B7=B7?= =?UTF-8?q?=E5=90=88=E9=A2=98=E5=BA=93=E7=9A=84=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/controllers/exam.controller.ts | 13 +++++++++++++ src/models/shop/ShopExam.ts | 7 +++++++ 2 files changed, 20 insertions(+) diff --git a/src/api/controllers/exam.controller.ts b/src/api/controllers/exam.controller.ts index f0d82d4..3169e70 100644 --- a/src/api/controllers/exam.controller.ts +++ b/src/api/controllers/exam.controller.ts @@ -59,6 +59,19 @@ class ExamController extends BaseController { _results.push(_r.compactRecord(false)) } results = _results + } else if (record.source === 3) { + const sysCount = ((record.qcount * record.qrate) / 100) | 0 + let questions = await Puzzle.randomQuestions(params, sysCount) + let _results = transformRecord(questions) + for (let _r of questions) { + history.questions.set(_r.id, _r.compactRecord(true)) + } + questions = await ShopPuzzle.randomQuestions(params, record.qcount - sysCount) + for (let _r of questions) { + history.questions.set(_r.id, _r.compactRecord(true)) + _results.push(_r.compactRecord(false)) + } + results = _results } let stat = new PuzzleStatusClass() stat.timeLast = now diff --git a/src/models/shop/ShopExam.ts b/src/models/shop/ShopExam.ts index 753dcc4..bf49c7b 100644 --- a/src/models/shop/ShopExam.ts +++ b/src/models/shop/ShopExam.ts @@ -145,10 +145,17 @@ export class ShopExamClass extends BaseModule { * 0: 系统题目 * 1: 自定义 * 2: 店铺自定义题库 + * 3: 混合题库 * @type {number} */ @prop({ default: 0 }) public source: number + /** + * 系统题库题目数量和自定义题库数量的比例 + * @type {number} + */ + @prop() + public qrate: number /** * 是否删除