swt23w23/src/main/asciidoc/models/design/inventory.puml

59 lines
1.9 KiB
Plaintext

@startuml
skinparam linetype ortho
skinparam groupInheritance 2
package Spring {
class Assert
class Errors
interface Model
}
package Salespoint {
interface DataInitializer
class Product
class Quantity
interface UniqueInventory<T extends UniqueInventoryItem>
class UniqueInventoryItem
}
package catering {
package catalog {
interface ConsumableCatalog
interface RentableCatalog
}
package inventory {
class InventoryController {
+ InventoryController(inventory : UniqueInventory)
+ list(model : Model) : String
+ edit(model : Model, pid : Product) : String
+ edit(form : InventoryMutateForm, result : Errors, pid : Product) : String
+ add() : String
+ add(form : InventoryMutateForm, result : Errors) : String
+ delete(pid : Product) : String
}
InventoryController --> "1" catering.catalog.ConsumableCatalog : "-consumableCatalog"
InventoryController --> "1" catering.catalog.RentableCatalog : "-rentableCatalog"
InventoryController ..> InventoryMutateForm
InventoryController .u.> Salespoint.Product
InventoryController -u-> "1" Salespoint.UniqueInventory : "-inventory"
InventoryController .u.> Salespoint.UniqueInventoryItem
InventoryController .u.> Spring.Assert
InventoryController .u.> Spring.Errors
InventoryController .u.> Spring.Model
class InventoryInitializer {
+ InventoryInitializer(inventory : UniqueInventory, catalog : CateringCatalog)
+ initialize() : void
}
InventoryInitializer --> "1" catering.catalog.ConsumableCatalog : "-consumableCatalog"
InventoryInitializer --> "1" catering.catalog.RentableCatalog : "-rentableCatalog"
InventoryInitializer .u.|> Salespoint.DataInitializer
InventoryInitializer .u.> Salespoint.Quantity
InventoryInitializer -u-> "1" Salespoint.UniqueInventory : "-inventory"
InventoryInitializer .u.> Salespoint.UniqueInventoryItem
InventoryInitializer .u.> Spring.Assert
}
}
@enduml