# 📦 MYP

> Frontend: https://git.i.mercedes-benz.com/TBA-Berlin-FI/MYP/tree/main/packages/reservation-platform

> :warning: MYP ist zzt. in Entwicklung

MYP *(Manage your Printer)* ist eine Plattform zur Reservierung von 3D-Druckern, die für die TBA im Werk 040, Berlin-Marienfelde, entwickelt wurde.

> ‼ Datenbank aus Blueprint steht im Konflikt zu MYP.sql - Integration muss besprochen werden

> 💡 Vorschlag wenn machbar @Torben: Aufteilung der Datenbanken? API ist ja nur für Drucker zuständig; WebInterface für Authentifizierung, Sessions etc.

> UltiMaker HTTP API: https://support.makerbot.com/s/article/1667412427787

---

# Datenbankstruktur

(MYP.sql - Gerät: Reservation Pi)

### Printer
- Speichert Informationen zu Druckern.
- Beinhaltet Details wie Namen, Beschreibung und Betriebsstatus.
- Verknüpft mit Druckaufträgen.

### PrintJob
- Enthält alle Druckaufträge.
- Jeder Auftrag ist einem Drucker und einem Benutzer zugeordnet.
- Speichert Startzeit, Dauer und Kommentare zu den Aufträgen.
- Erfassung, ob ein Auftrag abgebrochen wurde und die dazugehörige Begründung.

### Account
- Verwaltet Benutzerkonten.
- Speichert Authentifizierungsdetails wie Tokens und deren Ablaufzeiten.

### Session
- Erfasst Session-Daten.
- Beinhaltet eindeutige Session-Tokens und Ablaufdaten.

### User
- Speichert Benutzerinformationen.
- Verknüpft mit Druckaufträgen, Accounts und Sessions.

## Fremdschlüsselbeziehungen
- `User` ist verknüpft mit `PrintJob`, `Account` und `Session` über Benutzer-ID.
- `Printer` ist verknüpft mit `PrintJob` über die Drucker-ID.
