1
0
mirror of https://github.com/matt-fidd/stratos.git synced 2026-01-01 17:59:25 +00:00

Implement TestResult.setMark

This commit is contained in:
2022-04-18 19:13:58 +00:00
parent facb9ba124
commit 5def59357c
2 changed files with 23 additions and 10 deletions

View File

@@ -1,5 +1,7 @@
'use strict';
const MySQLDate = require('./MySQLDate');
class TestResult {
id;
@@ -17,7 +19,7 @@ class TestResult {
time;
#mark;
mark;
#conn;
@@ -76,18 +78,29 @@ class TestResult {
this.#loaded = true;
}
set mark(mark) {
//TODO handle saving mark
this.#mark = mark;
}
async setMark(mark) {
const sql = `
update
testResult
set
mark = ?,
time = ?
where
testResultId = ?;
`;
get mark() {
return this.#mark;
await this.#conn.runQuery(sql, [
mark,
new MySQLDate(),
this.id
]);
this.mark = mark;
}
get percentage() {
return (
parseInt(this.#mark) /
return Math.round(
parseInt(this.mark) /
parseInt(this.test.template.maxMark) *
100
);