feat: vehicle/equipment type system, equipment checklist support, and checklist overview redesign
This commit is contained in:
@@ -15,11 +15,24 @@ export interface ChecklistVorlageItem {
|
||||
sort_order: number;
|
||||
}
|
||||
|
||||
export interface AusruestungTyp {
|
||||
id: number;
|
||||
name: string;
|
||||
beschreibung?: string;
|
||||
icon?: string;
|
||||
}
|
||||
|
||||
export interface ChecklistVorlage {
|
||||
id: number;
|
||||
name: string;
|
||||
fahrzeug_typ_id?: number;
|
||||
fahrzeug_typ?: FahrzeugTyp;
|
||||
fahrzeug_id?: string;
|
||||
fahrzeug_name?: string;
|
||||
ausruestung_id?: string;
|
||||
ausruestung_name?: string;
|
||||
ausruestung_typ_id?: number;
|
||||
ausruestung_typ?: string;
|
||||
intervall?: 'weekly' | 'monthly' | 'yearly' | 'custom';
|
||||
intervall_tage?: number;
|
||||
beschreibung?: string;
|
||||
@@ -52,8 +65,10 @@ export interface ChecklistAusfuehrungItem {
|
||||
|
||||
export interface ChecklistAusfuehrung {
|
||||
id: string;
|
||||
fahrzeug_id: string;
|
||||
fahrzeug_id?: string;
|
||||
fahrzeug_name?: string;
|
||||
ausruestung_id?: string;
|
||||
ausruestung_name?: string;
|
||||
vorlage_id?: number;
|
||||
vorlage_name?: string;
|
||||
status: 'offen' | 'abgeschlossen' | 'unvollstaendig' | 'freigegeben';
|
||||
@@ -69,8 +84,10 @@ export interface ChecklistAusfuehrung {
|
||||
}
|
||||
|
||||
export interface ChecklistFaelligkeit {
|
||||
fahrzeug_id: string;
|
||||
fahrzeug_name: string;
|
||||
fahrzeug_id?: string;
|
||||
fahrzeug_name?: string;
|
||||
ausruestung_id?: string;
|
||||
ausruestung_name?: string;
|
||||
vorlage_id: number;
|
||||
vorlage_name: string;
|
||||
naechste_faellig_am: string;
|
||||
@@ -107,6 +124,9 @@ export interface ChecklistAusfuehrungFilter {
|
||||
export interface CreateVorlagePayload {
|
||||
name: string;
|
||||
fahrzeug_typ_id?: number;
|
||||
fahrzeug_id?: string;
|
||||
ausruestung_typ_id?: number;
|
||||
ausruestung_id?: string;
|
||||
intervall?: 'weekly' | 'monthly' | 'yearly' | 'custom';
|
||||
intervall_tage?: number;
|
||||
beschreibung?: string;
|
||||
@@ -116,6 +136,9 @@ export interface CreateVorlagePayload {
|
||||
export interface UpdateVorlagePayload {
|
||||
name?: string;
|
||||
fahrzeug_typ_id?: number | null;
|
||||
fahrzeug_id?: string | null;
|
||||
ausruestung_typ_id?: number | null;
|
||||
ausruestung_id?: string | null;
|
||||
intervall?: 'weekly' | 'monthly' | 'yearly' | 'custom' | null;
|
||||
intervall_tage?: number | null;
|
||||
beschreibung?: string | null;
|
||||
@@ -160,3 +183,21 @@ export interface ChecklistWidgetSummary {
|
||||
overdue: ChecklistFaelligkeit[];
|
||||
dueSoon: ChecklistFaelligkeit[];
|
||||
}
|
||||
|
||||
export interface ChecklistOverviewChecklist {
|
||||
vorlage_id: number;
|
||||
vorlage_name: string;
|
||||
next_due?: string;
|
||||
}
|
||||
|
||||
export interface ChecklistOverviewItem {
|
||||
id: string;
|
||||
name: string;
|
||||
kurzname?: string;
|
||||
checklists: ChecklistOverviewChecklist[];
|
||||
}
|
||||
|
||||
export interface ChecklistOverviewResponse {
|
||||
vehicles: ChecklistOverviewItem[];
|
||||
equipment: ChecklistOverviewItem[];
|
||||
}
|
||||
|
||||
@@ -28,6 +28,15 @@ export interface AusruestungKategorie {
|
||||
motorisiert: boolean;
|
||||
}
|
||||
|
||||
// ── Equipment Type (many-to-many) ───────────────────────────────────────────
|
||||
|
||||
export interface AusruestungTyp {
|
||||
id: number;
|
||||
name: string;
|
||||
beschreibung?: string;
|
||||
icon?: string;
|
||||
}
|
||||
|
||||
// ── API Response Shapes ──────────────────────────────────────────────────────
|
||||
|
||||
export interface AusruestungListItem {
|
||||
@@ -52,6 +61,7 @@ export interface AusruestungListItem {
|
||||
pruefung_tage_bis_faelligkeit: number | null;
|
||||
created_at: string;
|
||||
updated_at: string;
|
||||
typen?: AusruestungTyp[];
|
||||
}
|
||||
|
||||
export interface AusruestungDetail extends AusruestungListItem {
|
||||
|
||||
Reference in New Issue
Block a user