add features

This commit is contained in:
Matthias Hochmeister
2026-03-03 17:01:53 +01:00
parent 92b05726d4
commit 5a6fc85a75
30 changed files with 1104 additions and 198 deletions

View File

@@ -23,10 +23,11 @@ export type AusruestungWartungslogArt = 'Prüfung' | 'Reparatur' | 'Sonstiges';
// ── Lookup Entity ─────────────────────────────────────────────────────────────
export interface AusruestungKategorie {
id: string;
name: string;
kurzname: string;
id: string;
name: string;
kurzname: string;
sortierung: number;
motorisiert: boolean;
}
// ── Core Entity ───────────────────────────────────────────────────────────────
@@ -76,6 +77,7 @@ export interface AusruestungListItem {
updated_at: Date;
kategorie_name: string;
kategorie_kurzname: string;
kategorie_motorisiert: boolean;
fahrzeug_bezeichnung: string | null;
fahrzeug_kurzname: string | null;
pruefung_tage_bis_faelligkeit: number | null;

View File

@@ -11,6 +11,7 @@ export interface VeranstaltungKategorie {
farbe?: string | null;
icon?: string | null;
zielgruppen: string[];
alle_gruppen: boolean;
erstellt_von?: string | null;
erstellt_am: Date;
aktualisiert_am: Date;
@@ -91,6 +92,7 @@ export const CreateKategorieSchema = z.object({
.optional(),
icon: z.string().max(100).optional(),
zielgruppen: z.array(z.string()).optional(),
alle_gruppen: z.boolean().optional(),
});
export type CreateKategorieData = z.infer<typeof CreateKategorieSchema>;

View File

@@ -0,0 +1,31 @@
// =============================================================================
// Notification — Domain Model
// =============================================================================
export type NotificationSchwere = 'info' | 'warnung' | 'fehler';
export interface Notification {
id: string;
user_id: string;
typ: string;
titel: string;
nachricht: string;
schwere: NotificationSchwere;
gelesen: boolean;
gelesen_am: Date | null;
link: string | null;
quell_id: string | null;
quell_typ: string | null;
erstellt_am: Date;
}
export interface CreateNotificationData {
user_id: string;
typ: string;
titel: string;
nachricht: string;
schwere?: NotificationSchwere;
link?: string;
quell_id?: string;
quell_typ?: string;
}