69 lines
No EOL
3.4 KiB
TypeScript
69 lines
No EOL
3.4 KiB
TypeScript
import Database from "../objects/Database";
|
|
import OverrideField from "../entities/OverrideField";
|
|
|
|
export default class OverrideFieldRepo {
|
|
public static async selectAll() {
|
|
const dbOverride = await Database.Instance.query("SELECT * FROM OverrideField WHERE IsDeleted = 0");
|
|
const users = new Array<OverrideField>();
|
|
|
|
for (const row of dbOverride) {
|
|
const override = new OverrideField();
|
|
populateOverrideFromDB(override, row);
|
|
users.push(override);
|
|
}
|
|
|
|
return users;
|
|
}
|
|
|
|
public static async selectById(id:number) {
|
|
const dbOverride = await Database.Instance.query("SELECT * FROM OverrideField WHERE Id = ? LIMIT 1", [id]);
|
|
if (dbOverride == null || dbOverride.length === 0) {
|
|
return null;
|
|
} else {
|
|
const override = new OverrideField();
|
|
populateOverrideFromDB(override, dbOverride[0]);
|
|
return override;
|
|
}
|
|
}
|
|
|
|
public static async selectByOverrideId(id: number) {
|
|
const dbOverride = await Database.Instance.query("SELECT * FROM OverrideField WHERE IsDeleted = 0 AND OverrideId = ?", [id]);
|
|
const users = new Array<OverrideField>();
|
|
|
|
for (const row of dbOverride) {
|
|
const override = new OverrideField();
|
|
populateOverrideFromDB(override, row);
|
|
users.push(override);
|
|
}
|
|
|
|
return users;
|
|
}
|
|
|
|
public static async insertUpdate(overrideField:OverrideField) {
|
|
if (overrideField.Id === Number.MIN_VALUE) {
|
|
overrideField.Id = (await Database.Instance.query("INSERT OverrideField (OverrideId, FieldName, FieldValue, CreatedByUserId, CreatedDatetime, LastModifiedByUserId, LastModifiedDatetime, DeletedByUserId, DeletedDatetime, IsDeleted) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) RETURNING Id;", [
|
|
overrideField.OverrideId, overrideField.FieldName, overrideField.FieldValue, overrideField.CreatedByUserId, overrideField.CreatedDatetime.getTime(), overrideField.LastModifiedByUserId ?? null, overrideField.LastModifiedDatetime ?? null, overrideField.DeletedByUserId ?? null, overrideField.DeletedDatetime ?? null, Number(overrideField.IsDeleted)
|
|
]))[0]["Id"];
|
|
} else {
|
|
await Database.Instance.query(`UPDATE OverrideField SET OverrideId = ?, FieldName = ?, FieldValue = ?, CreatedByUserId = ?, CreatedDatetime = ?, LastModifiedByUserId = ?, LastModifiedDatetime = ?, DeletedByUserId = ?, DeletedDatetime = ?, IsDeleted = ? WHERE Id = ?`, [
|
|
overrideField.OverrideId, overrideField.FieldName, overrideField.FieldValue, overrideField.CreatedByUserId, overrideField.CreatedDatetime.getTime(), overrideField.LastModifiedByUserId ?? null, overrideField.LastModifiedDatetime ?? null, overrideField.DeletedByUserId ?? null, overrideField.DeletedDatetime ?? null, Number(overrideField.IsDeleted), overrideField.Id
|
|
]);
|
|
}
|
|
|
|
return overrideField;
|
|
}
|
|
}
|
|
|
|
function populateOverrideFromDB(overrideField:OverrideField, dbOverrideField:any) {
|
|
overrideField.Id = dbOverrideField.Id;
|
|
overrideField.OverrideId = dbOverrideField.OverrideId;
|
|
overrideField.FieldName = dbOverrideField.FieldName;
|
|
overrideField.FieldValue = dbOverrideField.FieldValue;
|
|
overrideField.CreatedByUserId = dbOverrideField.CreatedByUserId;
|
|
overrideField.CreatedDatetime = dbOverrideField.CreatedDatetime;
|
|
overrideField.LastModifiedByUserId = dbOverrideField.LastModifiedByUserId;
|
|
overrideField.LastModifiedDatetime = dbOverrideField.LastModifiedDatetime;
|
|
overrideField.DeletedByUserId = dbOverrideField.DeletedByUserId;
|
|
overrideField.DeletedDatetime = dbOverrideField.DeletedDatetime;
|
|
overrideField.IsDeleted = dbOverrideField.IsDeleted[0] === 1;
|
|
} |