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

Add Class.createClass

This commit is contained in:
2022-03-08 11:43:05 +00:00
parent d49ec3d453
commit db98c1d5ba

View File

@@ -1,7 +1,11 @@
/* eslint-disable no-empty-function */
'use strict';
const crypto = require('crypto');
const DatabaseConnectionPool = require('./DatabaseConnectionPool');
const Subject = require('./Subject');
const Test = require('./Test');
class Class {
@@ -216,8 +220,43 @@ class Class {
}
static createClass() {
static async createClass(accountId, name, subjectId) {
const s = await new Subject(subjectId);
const a = await new (require('./Account'))(accountId);
const id = crypto.randomUUID();
const conn = await new DatabaseConnectionPool();
let sql = `
insert into class(
classId,
name,
subjectId)
values
(?, ?, ?);
`;
await conn.runQuery(sql, [
id,
name,
s.id
]);
sql = `
insert into accountClassLink(
accountId,
classId)
values
(?, ?);
`;
await conn.runQuery(sql, [
a.id,
id
]);
return new Class(id);
}
}