mirror of
https://github.com/st-tu-dresden-praktikum/swt23w23
synced 2024-07-01 09:23:42 +02:00
57 lines
1.3 KiB
Plaintext
57 lines
1.3 KiB
Plaintext
![]() |
@startuml
|
||
|
skinparam linetype ortho
|
||
|
skinparam groupInheritance 2
|
||
|
|
||
|
package Spring {
|
||
|
interface Model
|
||
|
class Sort
|
||
|
}
|
||
|
|
||
|
package Salespoint {
|
||
|
interface Catalog << T > Product >>
|
||
|
interface DataInitializer
|
||
|
interface Inventory << T > InventoryItem >>
|
||
|
class Product
|
||
|
' + has price,name and categories : Iterable'
|
||
|
class Quantity
|
||
|
}
|
||
|
|
||
|
package catering.catalog {
|
||
|
interface CateringCatalog {
|
||
|
+ DEFAULT_SORT : Sort
|
||
|
+ findByType(type, sort : Sort) : Iterable
|
||
|
+ findByEventType(type) : Iterable
|
||
|
}
|
||
|
class CatalogController {
|
||
|
+ CatalogController()
|
||
|
+ eventcateringCatalog(model : Model) : String
|
||
|
+ partyserviceCatalog(model : Model) : String
|
||
|
+ mobilebreakfast(model : Model) : String
|
||
|
+ rentacookCatalog(model : Model) : String
|
||
|
}
|
||
|
class Consumable {
|
||
|
wholesalePrice
|
||
|
retailPrice
|
||
|
promotionPrice [0..1]
|
||
|
}
|
||
|
class Rentable {
|
||
|
pricePerHour
|
||
|
}
|
||
|
}
|
||
|
|
||
|
CateringCatalog --o "-catalog" CatalogController
|
||
|
'- for listing entries to customers'
|
||
|
|
||
|
Inventory "- inventory" <-- CatalogController
|
||
|
'- for checking availabilty'
|
||
|
|
||
|
Model "use" <.. CatalogController
|
||
|
'- for generating html for a view'
|
||
|
|
||
|
|
||
|
Catalog <.. "<bind> <T->Product" CateringCatalog
|
||
|
|
||
|
Product <|-- Consumable
|
||
|
Product <|-- Rentable
|
||
|
|
||
|
@enduml
|