le-rudolph / Cloud-Pizzasystem

0 stars 0 forks source link

Dokuticket: Datenmodelle #1

Open Varbin opened 3 months ago

Varbin commented 3 months ago

Ideen, Anregungen, Diskussionen zum Datenmodell (Schemata usw.).

le-rudolph commented 3 months ago

Das hatte ich mir bis jetzt überlegt. Kann gerne noch was weg/dazu.

Form der Bestellungen

Für Bestellservice -> Q -> Lieferantenservice

Order :=

{
    "Id": 7,
    "Products": [
        {
            "Name": "salami pizza",
            "Size": "m",
            "Quantity": 2
        },
        {
            "Name": "pizza hawaii",
            "Size": "l",
            "Quantity": 12
        }
    ],
    "Total": 42
}

Form der erledigten Lieferung

Für Lieferantenservice -> Q -> Bestellservice

Delivery :=

{
    "Id": 7,
    "Order": {
        "Id": 7,
        "Products": [
            {
                "Name": "salami pizza",
                "Size": "m",
                "Quantity": 2
            },
            {
                "Name": "pizza hawaii",
                "Size": "l",
                "Quantity": 12
            }
        ],
        "Total": 42
    },
    "Delivery_time": 47
}
Varbin commented 3 months ago

Warum wird das bei der erledigten Lieferung verschachtelt? Der Bestell- und Statusservice hat die Daten ja schon komplett.

Zu den Ids: Können die zum String werden? Dann kann ich bei der Übergabe vom Bestellservice, einfach die Mongo-DB-Ids nehmen?

le-rudolph commented 3 months ago

Zur Lieferung gehört gerade die Bestellung dazu und da das ja alles eher zur Demonstration ist hätte ich es etwas verbos gemacht, das man die ganze Bestellung da sieht. Was würdest du sonst nur zurückhaben wollen? Sowas?

{
    "Id": 7,
    "Order_id": "13someId",
    "Delivery_time": 47
}

Die IDs können wir aus der MongoDB nehmen.

Varbin commented 3 months ago

Zur Lieferung gehört gerade die Bestellung dazu und da das ja alles eher zur Demonstration ist hätte ich es etwas verbos gemacht, das man die ganze Bestellung da sieht. Was würdest du sonst nur zurückhaben wollen? Sowas?

Die IDs können wir aus der MongoDB nehmen.

Ah, so ergibt das Sinn. MongoDB-IDs hören sich gut an.

ToxicBeer commented 3 months ago

Für die Produkte, wenn man die abfragt, habe ich gerade als Modell:

{
    "name": "Hawaii"
    "s": 1
    "m": 2
    "l": null (wenn nichts angegeben)
}