Skip to content

marfrede/KBSE_Vendor_Client

Repository files navigation

KBSE_Vendor_Client (KBSE_Shop_Server)

LEGENDE

Akteure

Akteur Abkürzung
Virtueller Lebensmittelshop EDH (Easy Delivery Hawk)
Kunden des Lebensmittelshops Kunde
Regionale Einzelhändler, die Lebensmittelshop Ware anbieten EZHÄ
Warenzulieferer WL

Technische Anforderungen

Anforderung Abkürzung
REST API des WL, der Aufträge des EDH entgegennimmt REST-API-WL
REST API von EDH, die Angebote von EZHÄ entgegennehmen REST-API-EDH
Web-App EDH, wo Kunde Ware bestellen können EDH-Store

INHALTLICHE ANFORDERUNGEN

  • Lebensmittelkauf -> zeitaufwendig, ökologisch fragwürdig, da unterschiedliche Lebensmittel bei vielen verschiedenen Verkäufern

  • EDH

    • EZHÄ bieten Ware an
    • Kunde bestellt Ware von Zuhause
    • WL bringt Kunde die Ware
      • Anforderungen an WL
        • WL bietet REST API an (Diese REST API wird im Folgenden als REST-API-WL bezeichnet)
        • EDH stellt Lieferauftrag an REST-API-WL (Request)
          • Lieferauftrag ist
            • Datum + Zeit der Auftragserteilung,
            • Kundenname (Kunde)
            • Lieferadresse
            • Gewicht der Lieferung
        • WL benachrichtigt Kunde (evtl. Mail)
          • WL ermöglicht Sendungsverfolgung für K
        • WL kann jährlich wechseln (Flexibilität seitens EDH gefordert)
  • EZHÄ registrieren sich bei EDH per REST-API-EDH mit Angeboten

  • EZHÄ liefern bei jedem Request Benutzername

  • EZHÄ adressieren EDH per REST-API-EDH mit Angeboten (EZHÄ Request an EDH)

    • Angebot ist
      • Garantierte verfügbare Menge
      • Ware
        • Bezeichnung
        • Kurzbeschreibung
        • Preis
        • (optional) Bild
  • EZHÄ fragen REST-API-EDH ab nach ihren Waren mit Bestellmenge pro Kunde ab

    • DANN benachrichtigt EDH den WL, sodass WL tätig werden kann
  • Web-App EDH (EDH-Store)

    • EDH bietet Kunde einen Warenkatalog dar

      • Warenkatalog ist
        • Alle verfügbaren Angebote aller EZHÄ vereint
        • Warenkatalog zeigt dem Nutzer nicht den jeweiligen EZHÄ hinter dem Angebot
    • Kunde suchen, finden Waren

    • Kunde haben Warenkorb bei EDH

    • Kunde passen Bestellung im Warenkorb an

      • Bestellmenge ändern
      • Ware aus Bestellung löschen
    • Bestellung ist

      • Ware
      • Bestellmenge
      • (Gesamtpreis)
      • (Zeitpunkt der Bestellung)
    • Kunde kaufen Waren (Bestellung)

      • Kunde muss angemeldet sein
      • Bezahlung
        • Erfolgt nicht
        • (optional) PayPal

FUNKTIONALE ANFORDERUNGEN

  • JEE7 oder JEE8

  • Glassfish 5.x

  • CDI Context & Dependeny Injection

  • JPA Java Persistence API

  • JTA (?) Java Transaction API

  • Bean-Validation

  • JSF Java Server Faces

    • Mit Primefaces
  • JAX-RS (?)

  • JSON-B oder JSON-P

  • REST-API muss getestet werden

  • (optional) EZHÄ Authentifizierung, Autorisierung über JWT (Eclipse Microprofile JWT AUTH)

  • (optional) Anti Corruption Layer für häufig wechselnde WL

About

Ergänzung der Client Application zum KBSE Projekt "Virtueller Lebensmittelshop" (https://github.com/Teekesselchen/KBSE_VirtuelleLebensmittel)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published