schema update

This commit is contained in:
Julian Krauser 2025-07-25 11:04:53 +02:00
parent 922c6b7df3
commit 9b38c6a5e9
29 changed files with 184 additions and 43 deletions

View file

@ -93,7 +93,9 @@ export const inspection_table = new Table({
{ name: "id", ...getTypeByORM("uuid"), ...isUUIDPrimary },
{ name: "context", ...getTypeByORM("text") },
{ name: "createdAt", ...getTypeByORM("datetime"), default: getDefaultByORM("currentTimestamp") },
{ name: "finishedAt", ...getTypeByORM("date", true) },
{ name: "finishedAt", ...getTypeByORM("datetime", true) },
{ name: "finishedById", ...getTypeByORM("uuid", true) },
{ name: "finishedByString", ...getTypeByORM("varchar", true) },
{ name: "nextInspection", ...getTypeByORM("date", true) },
{ name: "hasNewer", ...getTypeByORM("boolean"), default: getDefaultByORM("boolean", false) },
{ name: "inspectionPlanId", ...getTypeByORM("uuid") },
@ -103,6 +105,13 @@ export const inspection_table = new Table({
{ name: "wearableId", ...getTypeByORM("uuid", true) },
],
foreignKeys: [
new TableForeignKey({
columnNames: ["finishedById"],
referencedColumnNames: ["id"],
referencedTableName: "user",
onDelete: "SET NULL",
onUpdate: "RESTRICT",
}),
new TableForeignKey({
columnNames: ["inspectionPlanId"],
referencedColumnNames: ["id"],

View file

@ -6,21 +6,30 @@ export const damage_report_table = new Table({
columns: [
{ name: "id", ...getTypeByORM("uuid"), ...isUUIDPrimary },
{ name: "reportedAt", ...getTypeByORM("datetime"), default: getDefaultByORM("currentTimestamp") },
{ name: "closedAt", ...getTypeByORM("datetime", true) },
{ name: "closedById", ...getTypeByORM("uuid", true) },
{ name: "closedByString", ...getTypeByORM("varchar", true) },
{ name: "status", ...getTypeByORM("varchar") },
{ name: "done", ...getTypeByORM("boolean"), default: getDefaultByORM("boolean", false) },
{ name: "title", ...getTypeByORM("varchar") },
{ name: "description", ...getTypeByORM("text") },
{ name: "location", ...getTypeByORM("text") },
{ name: "noteByReporter", ...getTypeByORM("text") },
{ name: "noteByWorker", ...getTypeByORM("text") },
{ name: "reportedBy", ...getTypeByORM("varchar") },
{ name: "images", ...getTypeByORM("text") },
{ name: "location", ...getTypeByORM("text", true) },
{ name: "noteByReporter", ...getTypeByORM("text", true) },
{ name: "noteByWorker", ...getTypeByORM("text", true) },
{ name: "reportedBy", ...getTypeByORM("varchar", true) },
{ name: "images", ...getTypeByORM("text", true) },
{ name: "equipmentId", ...getTypeByORM("uuid", true) },
{ name: "vehicleId", ...getTypeByORM("uuid", true) },
{ name: "wearableId", ...getTypeByORM("uuid", true) },
{ name: "repairId", ...getTypeByORM("uuid", true) },
],
foreignKeys: [
new TableForeignKey({
columnNames: ["closedById"],
referencedColumnNames: ["id"],
referencedTableName: "user",
onDelete: "SET NULL",
onUpdate: "RESTRICT",
}),
new TableForeignKey({
columnNames: ["equipmentId"],
referencedColumnNames: ["id"],
@ -58,6 +67,8 @@ export const maintenance_table = new Table({
{ name: "id", ...getTypeByORM("uuid"), ...isUUIDPrimary },
{ name: "createdAt", ...getTypeByORM("datetime"), default: getDefaultByORM("currentTimestamp") },
{ name: "finishedAt", ...getTypeByORM("datetime", true) },
{ name: "finishedById", ...getTypeByORM("uuid", true) },
{ name: "finishedByString", ...getTypeByORM("varchar", true) },
{ name: "status", ...getTypeByORM("varchar") },
{ name: "description", ...getTypeByORM("text") },
{ name: "equipmentId", ...getTypeByORM("uuid", true) },
@ -65,6 +76,13 @@ export const maintenance_table = new Table({
{ name: "wearableId", ...getTypeByORM("uuid", true) },
],
foreignKeys: [
new TableForeignKey({
columnNames: ["finishedById"],
referencedColumnNames: ["id"],
referencedTableName: "user",
onDelete: "SET NULL",
onUpdate: "RESTRICT",
}),
new TableForeignKey({
columnNames: ["equipmentId"],
referencedColumnNames: ["id"],
@ -95,17 +113,26 @@ export const repair_table = new Table({
{ name: "id", ...getTypeByORM("uuid"), ...isUUIDPrimary },
{ name: "createdAt", ...getTypeByORM("datetime"), default: getDefaultByORM("currentTimestamp") },
{ name: "finishedAt", ...getTypeByORM("datetime", true) },
{ name: "finishedById", ...getTypeByORM("uuid", true) },
{ name: "finishedByString", ...getTypeByORM("varchar", true) },
{ name: "status", ...getTypeByORM("varchar") },
{ name: "responsible", ...getTypeByORM("varchar") },
{ name: "title", ...getTypeByORM("varchar") },
{ name: "description", ...getTypeByORM("text") },
{ name: "images", ...getTypeByORM("text") },
{ name: "responsible", ...getTypeByORM("varchar", true) },
{ name: "images", ...getTypeByORM("text", true) },
{ name: "reportDocument", ...getTypeByORM("varchar", true) },
{ name: "equipmentId", ...getTypeByORM("uuid", true) },
{ name: "vehicleId", ...getTypeByORM("uuid", true) },
{ name: "wearableId", ...getTypeByORM("uuid", true) },
],
foreignKeys: [
new TableForeignKey({
columnNames: ["finishedById"],
referencedColumnNames: ["id"],
referencedTableName: "user",
onDelete: "SET NULL",
onUpdate: "RESTRICT",
}),
new TableForeignKey({
columnNames: ["equipmentId"],
referencedColumnNames: ["id"],