mirror of
https://github.com/st-tu-dresden-praktikum/swt23w23
synced 2024-07-04 17:59:38 +02:00
66 lines
1.5 KiB
Plaintext
66 lines
1.5 KiB
Plaintext
@startuml
|
|
'maybe for mathis kral since he did videoshop:order-limit'
|
|
'maybe for eren since he did videoshop:clickable-cart-item'
|
|
'maybe for erik since he did videoshop:cart-remove'
|
|
skinparam linetype ortho
|
|
skinparam groupInheritance 2
|
|
|
|
package Spring {
|
|
interface Model
|
|
}
|
|
|
|
package Salespoint {
|
|
interface OrderManager <<"T > Order">>
|
|
class Cart
|
|
class Cash
|
|
class Order
|
|
class Quantity
|
|
class UserAccount
|
|
enum OrderStatus
|
|
}
|
|
|
|
package catering.catalog {
|
|
class Consumable
|
|
class Rentable
|
|
|
|
class MultiProduct {
|
|
+ getPrice()
|
|
}
|
|
|
|
class customProduct
|
|
class Employee {
|
|
+ getMaxHours()
|
|
+ getSalaryPerHour()
|
|
}
|
|
note "this could work" as myNote
|
|
|
|
MultiProduct --|> Salespoint.Product
|
|
MultiProduct "1" o-- "*" customProduct
|
|
|
|
customProduct ..> Consumable
|
|
customProduct ..> Rentable
|
|
customProduct ..> Employee
|
|
myNote .- Employee
|
|
}
|
|
|
|
package catering.order {
|
|
class OrderController {
|
|
+ OrderController()
|
|
+ initializeCart() : Cart
|
|
+ addProduct(product : Product, amount : int, cart: Cart)
|
|
+ buy(cart : Cart, userAccount : UserAccount) : String
|
|
+ orders(model : Model) : String
|
|
}
|
|
|
|
OrderController --> OrderManager : "-orderManager"
|
|
OrderController ..> Model
|
|
OrderController ..> UserAccount
|
|
OrderController ..> Order
|
|
OrderController ..> OrderStatus
|
|
OrderController ..> Cash
|
|
OrderController ..> Quantity
|
|
OrderController ..> Cart
|
|
OrderController ..> catering.catalog.multiProduct
|
|
}
|
|
|
|
@enduml |