From 6b34a41b7d37c3bf9955cec206600a36b6071e46 Mon Sep 17 00:00:00 2001 From: Max Hohlfeld Date: Sun, 28 Jan 2024 11:02:36 +0100 Subject: [PATCH] doc: entity relation ship model for initial planning --- doc/erd.puml | 106 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 106 insertions(+) create mode 100644 doc/erd.puml diff --git a/doc/erd.puml b/doc/erd.puml new file mode 100644 index 00000000..f26697a7 --- /dev/null +++ b/doc/erd.puml @@ -0,0 +1,106 @@ +@startuml + +entity User { + * id: number <> + -- + * firstName: string + * lastName: string + * email: string + * password: string + * salt: string + locked: bool + lastLogin: datetime + * receiveNotifications: bool + * roleId: number <> + * areaId: number <> + * functionId: number <> +} + +entity Role { + * id: number <> + -- + * definition: string +} + +entity Function { + * id: number <> + -- + * definition: string +} + +entity Area { + * id: number <> + -- + * name: string +} + +entity Event { + * id: number <> + -- + * date: date + * startTime: time + * endTime: time + * name: string + * locationId: number <> + * voluntaryWachhabender: bool + * amountOfPosten: number + * vehicles: string + * clothing: string + * canceled: bool +} + +entity Location { + * id: number <> + -- + * name: string +} + +entity Availabillity { + * id: number <> + -- + * userId: number <> + * date: date + startTime: time + endTime: time +} + +entity Assignement { + * eventId: number <> + * availabillityId: number <> + -- + * functionId: number <> + startTime: time + endTime: time +} + +entity Vehicle { + * id: number <> + -- + * radioCallName: string + * station: string +} + +entity VehicleAssignement { + * eventId: number <> + * vehicleId: number <> + -- +} + +User }|--|| Role +User }|--|| Area +User }|--|| Function + +Event }|--|| Location + +Location }|--|| Area + +Availabillity }|--|| User + +Assignement }|--|| Availabillity +Assignement }|--|| Event +Assignement }|--|| Function + +VehicleAssignement }|--|| Vehicle +VehicleAssignement }|--|| Event + +@enduml