diff --git a/src/entity/unit/maintenance.ts b/src/entity/unit/maintenance.ts index 5a183cc..ff1da10 100644 --- a/src/entity/unit/maintenance.ts +++ b/src/entity/unit/maintenance.ts @@ -26,9 +26,33 @@ export class maintenance { @Column({ type: "varchar", length: 255 }) status: string; + @Column({ type: "varchar", length: 255 }) + title: string; + @Column({ type: "text" }) description: string; + @Column({ type: "varchar", length: 255, nullable: true, default: null }) + responsible: string; + + @Column({ + type: "text", + nullable: true, + default: null, + transformer: { + from(value: string): Array { + return (value ?? "").split(",").filter((i) => !!i); + }, + to(value: Array = []): string { + return value.join(","); + }, + }, + }) + images: string[]; + + @Column({ type: "varchar", length: 255, nullable: true, default: null }) + reportDocument?: string; + @Column({ nullable: true, default: null }) equipmentId?: string; diff --git a/src/factory/admin/unit/inspection/inspection.ts b/src/factory/admin/unit/inspection/inspection.ts index 7d6280b..fc38634 100644 --- a/src/factory/admin/unit/inspection/inspection.ts +++ b/src/factory/admin/unit/inspection/inspection.ts @@ -98,7 +98,10 @@ export default abstract class InspectionFactory { inspectionPlan: InspectionPlanFactory.mapToSingle(record.inspectionPlan), context: record.context, created: record.createdAt, - finished: record?.finishedAt, + finishedAt: record?.finishedAt, + finishedBy: record?.finishedBy + ? record.finishedBy.firstname + " " + record.finishedBy.lastname + : record.finishedByString, isOpen: record?.finishedAt == undefined, nextInspection: record?.nextInspection, ...related, diff --git a/src/migrations/baseSchemaTables/unit_extend.ts b/src/migrations/baseSchemaTables/unit_extend.ts index 85b7602..65d0738 100644 --- a/src/migrations/baseSchemaTables/unit_extend.ts +++ b/src/migrations/baseSchemaTables/unit_extend.ts @@ -70,7 +70,11 @@ export const maintenance_table = new Table({ { name: "finishedById", ...getTypeByORM("uuid", true) }, { name: "finishedByString", ...getTypeByORM("varchar", true) }, { name: "status", ...getTypeByORM("varchar") }, + { name: "title", ...getTypeByORM("varchar") }, { name: "description", ...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) }, diff --git a/src/viewmodel/admin/unit/inspection/inspection.models.ts b/src/viewmodel/admin/unit/inspection/inspection.models.ts index 47dc888..4923701 100644 --- a/src/viewmodel/admin/unit/inspection/inspection.models.ts +++ b/src/viewmodel/admin/unit/inspection/inspection.models.ts @@ -47,6 +47,8 @@ export type MinifiedInspectionViewModel = { created: Date; finished?: Date; isOpen: boolean; + finishedAt?: Date; + finishedBy?: string; nextInspection?: Date; relatedId: string; } & InspectionRelated;