From 8766bbce08013c1caa12a0f1e4291fb89cbd3d1f Mon Sep 17 00:00:00 2001 From: Julian Krauser Date: Tue, 13 May 2025 12:16:39 +0200 Subject: [PATCH] update inspection schema --- .../damageReport/DamageReportListItem.vue | 4 +- src/demodata/damageReport.ts | 5 +- src/demodata/equipment.ts | 2 + src/demodata/equipmentType.ts | 2 + src/demodata/inspectionPlan.ts | 107 +++++++++++++----- src/demodata/vehicle.ts | 2 + src/demodata/vehicleType.ts | 2 + .../unit/damageReport/damageReport.models.ts | 8 +- .../inspectionPlan/inspectionPlan.models.ts | 42 ++++--- .../admin/unit/vehicle/vehicle.models.ts | 2 + 10 files changed, 126 insertions(+), 50 deletions(-) diff --git a/src/components/admin/unit/damageReport/DamageReportListItem.vue b/src/components/admin/unit/damageReport/DamageReportListItem.vue index 09c931a..cc54546 100644 --- a/src/components/admin/unit/damageReport/DamageReportListItem.vue +++ b/src/components/admin/unit/damageReport/DamageReportListItem.vue @@ -2,11 +2,11 @@

- {{ damageReport.affectedEquipment.name }} + {{ damageReport.affected.name }}

-

Code: {{ damageReport.affectedEquipment.code }}

+

Code: {{ damageReport.affected.code }}

Beschreibung: {{ damageReport.description }}

diff --git a/src/demodata/damageReport.ts b/src/demodata/damageReport.ts index 5261ffa..5228f81 100644 --- a/src/demodata/damageReport.ts +++ b/src/demodata/damageReport.ts @@ -8,7 +8,8 @@ export const damageReportDemoData: Array = [ status: "", done: false, description: "knjgljna g", - affectedEquipmentId: equipmentDemoData[0].id, - affectedEquipment: equipmentDemoData[0], + providedImage: undefined, + affectedId: equipmentDemoData[0].id, + affected: equipmentDemoData[0], }, ]; diff --git a/src/demodata/equipment.ts b/src/demodata/equipment.ts index 55a1d3a..dabb089 100644 --- a/src/demodata/equipment.ts +++ b/src/demodata/equipment.ts @@ -1,5 +1,6 @@ import type { EquipmentViewModel } from "../viewmodels/admin/unit/equipment/equipment.models"; import { equipmentTypeDemoData } from "./equipmentType"; +import { inspectionDemoData } from "./inspectionPlan"; export const equipmentDemoData: Array = [ { @@ -9,5 +10,6 @@ export const equipmentDemoData: Array = [ location: "HLF", equipmentTypeId: equipmentTypeDemoData[0].id, equipmentType: equipmentTypeDemoData[0], + inspections: [inspectionDemoData[0]], }, ]; diff --git a/src/demodata/equipmentType.ts b/src/demodata/equipmentType.ts index 0c2195c..11de7ff 100644 --- a/src/demodata/equipmentType.ts +++ b/src/demodata/equipmentType.ts @@ -1,9 +1,11 @@ import type { EquipmentTypeViewModel } from "../viewmodels/admin/unit/equipmentType/equipmentType.models"; +import { inspectionPlanDemoData } from "./inspectionPlan"; export const equipmentTypeDemoData: Array = [ { id: "xyz", type: "B-Schlauch", description: "Shläuche vom Typ B", + inspectionPlans: [inspectionPlanDemoData[0], inspectionPlanDemoData[1]], }, ]; diff --git a/src/demodata/inspectionPlan.ts b/src/demodata/inspectionPlan.ts index 7c2f0fd..c4575d5 100644 --- a/src/demodata/inspectionPlan.ts +++ b/src/demodata/inspectionPlan.ts @@ -1,6 +1,38 @@ -import type { InspectionPlanViewModel } from "../viewmodels/admin/unit/inspectionPlan/inspectionPlan.models"; +import type { + InspectionPlanViewModel, + InspectionPointResultViewMoel, + InspectionPointViewModel, + InspectionViewMoel, +} from "../viewmodels/admin/unit/inspectionPlan/inspectionPlan.models"; import { equipmentTypeDemoData } from "./equipmentType"; +export const inspectionPointDemoData: Array = [ + { + id: "edf", + title: "vorhandene Spritzstellen ausgebessert", + description: "", + type: "number", + }, + { + id: "ghi", + title: "Einband der Kupplung sitzt fest", + description: "", + type: "iO-niO", + }, + { + id: "lmn", + title: "Das überstehende Drahtende des Knaggenteiles sitzt versenkt", + description: "", + type: "iO-niO", + }, + { + id: "jgj", + title: "Gebrauchsprüfdruck 12bar", + description: "", + type: "iO-niO", + }, +]; + export const inspectionPlanDemoData: Array = [ { id: "abc", @@ -8,26 +40,8 @@ export const inspectionPlanDemoData: Array = [ version: 1, inspectionInterval: "1-m", remindTime: "1-m", - inspectionPoints: [ - { - id: "edf", - title: "vorhandene Spritzstellen ausgebessert", - description: "", - type: "number", - }, - { - id: "ghi", - title: "Einband der Kupplung sitzt fest", - description: "", - type: "iO-niO", - }, - { - id: "lmn", - title: "Das überstehende Drahtende des Knaggenteiles sitzt versenkt", - description: "", - type: "iO-niO", - }, - ], + created: new Date(), + inspectionPoints: [inspectionPointDemoData[0], inspectionPointDemoData[1], inspectionPointDemoData[2]], equipmentTypeId: equipmentTypeDemoData[0].id, equipmentType: equipmentTypeDemoData[0], }, @@ -37,15 +51,50 @@ export const inspectionPlanDemoData: Array = [ version: 1, inspectionInterval: "1-m", remindTime: "22/10", - inspectionPoints: [ - { - id: "edf", - title: "Gebrauchsprüfdruck 12bar", - description: "", - type: "iO-niO", - }, - ], + created: new Date(), + inspectionPoints: [inspectionPointDemoData[3]], equipmentTypeId: equipmentTypeDemoData[0].id, equipmentType: equipmentTypeDemoData[0], }, ]; + +export const inspectionPointResultDemoData: Array = [ + { + inspectionId: "jkvshdfg", + inspectionVersionedPlanId: inspectionPlanDemoData[0].id, + inspectionVersionedPlan: inspectionPlanDemoData[0], + inspectionPointId: inspectionPointDemoData[0].id, + inspectionPoint: inspectionPointDemoData[0], + value: "", + }, + { + inspectionId: "jkvshdfg", + inspectionVersionedPlanId: inspectionPlanDemoData[0].id, + inspectionVersionedPlan: inspectionPlanDemoData[0], + inspectionPointId: inspectionPointDemoData[1].id, + inspectionPoint: inspectionPointDemoData[1], + value: "", + }, + { + inspectionId: "jkvshdfg", + inspectionVersionedPlanId: inspectionPlanDemoData[0].id, + inspectionVersionedPlan: inspectionPlanDemoData[0], + inspectionPointId: inspectionPointDemoData[1].id, + inspectionPoint: inspectionPointDemoData[1], + value: "", + }, +]; + +export const inspectionDemoData: Array = [ + { + id: "jkvshdfg", + inspectionVersionedPlanId: inspectionPlanDemoData[0].id, + inspectionVersionedPlan: inspectionPlanDemoData[0], + context: "", + created: new Date(), + finished: undefined, + nextInspection: undefined, + isOpen: true, + checks: [inspectionPointResultDemoData[0], inspectionPointResultDemoData[1], inspectionPointResultDemoData[2]], + }, +]; diff --git a/src/demodata/vehicle.ts b/src/demodata/vehicle.ts index 522648d..6503137 100644 --- a/src/demodata/vehicle.ts +++ b/src/demodata/vehicle.ts @@ -8,6 +8,7 @@ export const vehicleDemoData: Array = [ location: "Tor 1", vehicleTypeId: "xyz", vehicleType: vehicleTypeDemoData[0], + inspections: [], }, { id: "kjhb", @@ -15,5 +16,6 @@ export const vehicleDemoData: Array = [ location: "Tor 2", vehicleTypeId: "abc", vehicleType: vehicleTypeDemoData[1], + inspections: [], }, ]; diff --git a/src/demodata/vehicleType.ts b/src/demodata/vehicleType.ts index bea1c59..5c9bcb7 100644 --- a/src/demodata/vehicleType.ts +++ b/src/demodata/vehicleType.ts @@ -5,10 +5,12 @@ export const vehicleTypeDemoData: Array = [ id: "xyz", type: "HLF 20/10", description: "HLF", + inspectionPlans: [], }, { id: "abc", type: "LF 8/6", description: "LF", + inspectionPlans: [], }, ]; diff --git a/src/viewmodels/admin/unit/damageReport/damageReport.models.ts b/src/viewmodels/admin/unit/damageReport/damageReport.models.ts index 94a90ed..e34f13f 100644 --- a/src/viewmodels/admin/unit/damageReport/damageReport.models.ts +++ b/src/viewmodels/admin/unit/damageReport/damageReport.models.ts @@ -6,14 +6,14 @@ export interface DamageReportViewModel { status: string; done: boolean; description: string; - providedImage: string; - affectedEquipmentId: string; - affectedEquipment: EquipmentViewModel; + providedImage?: string; + affectedId: string; + affected: EquipmentViewModel; } export interface CreateDamageReportViewModel { description: string; - affectedEquipmentId: string; + affectedId: string; } export interface UpdateDamageReportViewModel { diff --git a/src/viewmodels/admin/unit/inspectionPlan/inspectionPlan.models.ts b/src/viewmodels/admin/unit/inspectionPlan/inspectionPlan.models.ts index 0de95a3..1c655e2 100644 --- a/src/viewmodels/admin/unit/inspectionPlan/inspectionPlan.models.ts +++ b/src/viewmodels/admin/unit/inspectionPlan/inspectionPlan.models.ts @@ -1,12 +1,23 @@ -import type InspectionPlan from "../../../../views/admin/unit/inspectionPlan/InspectionPlan.vue"; import type { EquipmentTypeViewModel } from "../equipmentType/equipmentType.models"; +export type PlanTimeDefinition = `${number}-${"d" | "m" | "y"}` | `${number}/${number | "*"}`; + export interface InspectionPlanViewModel { id: string; title: string; - inspectionInterval: `${number}-${"d" | "m" | "y"}` | `${number}/${number}` | `${number}/*`; - remindTime: `${number}-${"d" | "m" | "y"}` | `${number}/${number}` | `${number}/*`; + inspectionInterval: PlanTimeDefinition; + remindTime: PlanTimeDefinition; version: number; + created: Date; + inspectionPoints: InspectionPointViewModel[]; + equipmentTypeId: string; + equipmentType: EquipmentTypeViewModel; +} + +export interface InspectionVersionedPlanViewModel { + id: string; + version: number; + created: Date; inspectionPoints: InspectionPointViewModel[]; equipmentTypeId: string; equipmentType: EquipmentTypeViewModel; @@ -14,16 +25,16 @@ export interface InspectionPlanViewModel { export interface CreateInspectionPlanViewModel { title: string; - inspectionInterval: `${number}-${"d" | "m" | "y"}` | `${number}/${number}` | `${number}/*`; - remindTime: `${number}-${"d" | "m" | "y"}` | `${number}/${number}` | `${number}/*`; + inspectionInterval: PlanTimeDefinition; + remindTime: PlanTimeDefinition; equipmentTypeId: string; } export interface UpdateInspectionPlanViewModel { id: string; title: string; - inspectionInterval: `${number}-${"d" | "m" | "y"}` | `${number}/${number}` | `${number}/*`; - remindTime?: `${number}-${"d" | "m" | "y"}` | `${number}/${number}` | `${number}/*`; + inspectionInterval: PlanTimeDefinition; + remindTime?: PlanTimeDefinition; } export interface InspectionPointViewModel { @@ -35,16 +46,21 @@ export interface InspectionPointViewModel { export interface InspectionViewMoel { id: string; - inspectionPlanId: string; - date: Date; - status: "open" | "finished"; - results: Array; + inspectionVersionedPlanId: string; + inspectionVersionedPlan: InspectionVersionedPlanViewModel; + context: string; + created: Date; + finished?: Date; + isOpen: boolean; + nextInspection?: Date; + checks: Array; } export interface InspectionPointResultViewMoel { - id: string; inspectionId: string; - inspectionPlanId: string; + inspectionVersionedPlanId: string; + inspectionVersionedPlan: InspectionVersionedPlanViewModel; inspectionPointId: string; + inspectionPoint: InspectionPointViewModel; value: string; } diff --git a/src/viewmodels/admin/unit/vehicle/vehicle.models.ts b/src/viewmodels/admin/unit/vehicle/vehicle.models.ts index 22001cd..dd5008d 100644 --- a/src/viewmodels/admin/unit/vehicle/vehicle.models.ts +++ b/src/viewmodels/admin/unit/vehicle/vehicle.models.ts @@ -1,3 +1,4 @@ +import type { InspectionViewMoel } from "../inspectionPlan/inspectionPlan.models"; import type { VehicleTypeViewModel } from "../vehicleType/vehicleType.models"; export interface VehicleViewModel { @@ -6,6 +7,7 @@ export interface VehicleViewModel { location: string; vehicleTypeId: string; vehicleType: VehicleTypeViewModel; + inspections: Array; } export interface CreateVehicleViewModel {