mirror of
https://github.com/st-tu-dresden-praktikum/swt23w23
synced 2024-07-19 21:04:36 +02:00
Add proposals for packaging
This commit is contained in:
parent
e49cd6c3c5
commit
1f9d756fa9
57
src/main/asciidoc/models/design/catalog.puml
Normal file
57
src/main/asciidoc/models/design/catalog.puml
Normal file
|
@ -0,0 +1,57 @@
|
||||||
|
@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
|
BIN
src/main/asciidoc/models/design/catalog.svg
(Stored with Git LFS)
Normal file
BIN
src/main/asciidoc/models/design/catalog.svg
(Stored with Git LFS)
Normal file
Binary file not shown.
46
src/main/asciidoc/models/design/inventory.puml
Normal file
46
src/main/asciidoc/models/design/inventory.puml
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
@startuml
|
||||||
|
'maybe for sbruder since he did videoshop:inventory-increment'
|
||||||
|
'maybe TR0N-ZEN since he did videoshop:keyword-search'
|
||||||
|
skinparam linetype ortho
|
||||||
|
skinparam groupInheritance 2
|
||||||
|
|
||||||
|
package Spring {
|
||||||
|
interface Model
|
||||||
|
'havent used Assert yet as in example'
|
||||||
|
}
|
||||||
|
|
||||||
|
package Salespoint {
|
||||||
|
interface DataInitializer
|
||||||
|
class Quantity
|
||||||
|
interface UniqueInventory << T > UniqueInventoryItem >>
|
||||||
|
class UniqueInventoryItem
|
||||||
|
}
|
||||||
|
|
||||||
|
package catering.catalog {
|
||||||
|
interface CateringCatalog
|
||||||
|
}
|
||||||
|
|
||||||
|
package catering.inventory {
|
||||||
|
class InventoryController {
|
||||||
|
+ InventoryController(inventory : UniqueInventory)
|
||||||
|
+ stock(model : Model) : String
|
||||||
|
}
|
||||||
|
class InventoryInitializer {
|
||||||
|
+ InventoryInitializer(inventory : UniqueInventory, catalog : CateringCatalog)
|
||||||
|
+ initialize() : void
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
CateringCatalog "1 -cateringCatalog" <-- InventoryInitializer
|
||||||
|
DataInitializer <|.. InventoryInitializer
|
||||||
|
Quantity <.. InventoryInitializer
|
||||||
|
UniqueInventoryItem <.. InventoryInitializer
|
||||||
|
UniqueInventory "1 -inventory" <-- InventoryInitializer
|
||||||
|
|
||||||
|
Model <.. InventoryController
|
||||||
|
UniqueInventory "1 -inventory" <-- InventoryController
|
||||||
|
|
||||||
|
|
||||||
|
@enduml
|
BIN
src/main/asciidoc/models/design/inventory.svg
(Stored with Git LFS)
Normal file
BIN
src/main/asciidoc/models/design/inventory.svg
(Stored with Git LFS)
Normal file
Binary file not shown.
36
src/main/asciidoc/models/design/order.puml
Normal file
36
src/main/asciidoc/models/design/order.puml
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
@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 {
|
||||||
|
class Cart
|
||||||
|
class Cash
|
||||||
|
class Order
|
||||||
|
class Product
|
||||||
|
class Quantity
|
||||||
|
class UserAccount
|
||||||
|
enum OrderStatus
|
||||||
|
}
|
||||||
|
|
||||||
|
package catering.catalog {
|
||||||
|
class Product
|
||||||
|
}
|
||||||
|
|
||||||
|
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
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@enduml
|
BIN
src/main/asciidoc/models/design/order.svg
(Stored with Git LFS)
Normal file
BIN
src/main/asciidoc/models/design/order.svg
(Stored with Git LFS)
Normal file
Binary file not shown.
40
src/main/asciidoc/models/design/user.puml
Normal file
40
src/main/asciidoc/models/design/user.puml
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
@startuml
|
||||||
|
'maybe for sneidc since he did videoshop:cahnge-password'
|
||||||
|
skinparam linetype ortho
|
||||||
|
skinparam groupInheritance 2
|
||||||
|
|
||||||
|
package Salespoint {
|
||||||
|
Class PersistentUserAccountManager
|
||||||
|
Interface UserAccountRepository
|
||||||
|
Class UserAccount
|
||||||
|
Class Role
|
||||||
|
PersistentUserAccountManager "1" <-- UserAccountRepository
|
||||||
|
UserAccountRepository o-- UserAccount
|
||||||
|
UserAccount - "0...*" Role
|
||||||
|
}
|
||||||
|
|
||||||
|
package catering.users {
|
||||||
|
'what is on the left will be higher up'
|
||||||
|
UserAccount <|-- AdministratorAccount
|
||||||
|
UserAccount <|-- CustomerAccount
|
||||||
|
class AdministratorAccount {
|
||||||
|
|
||||||
|
}
|
||||||
|
class CustomerAccount {
|
||||||
|
- address
|
||||||
|
- email
|
||||||
|
}
|
||||||
|
|
||||||
|
Class UserController {
|
||||||
|
+ UserController()
|
||||||
|
+ register(form : Form, model : Model) : String
|
||||||
|
+ customers(model : Model) : String
|
||||||
|
}
|
||||||
|
|
||||||
|
UserController --> "1" PersistentUserAccountManager
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
'do employees need an account?'
|
||||||
|
|
||||||
|
@enduml
|
BIN
src/main/asciidoc/models/design/user.svg
(Stored with Git LFS)
Normal file
BIN
src/main/asciidoc/models/design/user.svg
(Stored with Git LFS)
Normal file
Binary file not shown.
Loading…
Reference in a new issue