diff --git a/src/main/asciidoc/developer_documentation.adoc b/src/main/asciidoc/developer_documentation.adoc index 0004f6a..72860ef 100644 --- a/src/main/asciidoc/developer_documentation.adoc +++ b/src/main/asciidoc/developer_documentation.adoc @@ -139,7 +139,7 @@ image:models/design/systemContextDiagram.svg[] |Quality Demand |Solution approach |Functional Suitability a| * *Exchange* Ensure that the exchange of system data between the system component works flowlessly. -* *Requirements* Ensure that all functional requirements as descripted in the contrect are fulfilled. +* *Requirements* Ensure that all functional requirements as descripted in the contract are fulfilled. |Performance efficient a| *Not important* |Compatability a| @@ -201,6 +201,7 @@ image:models/design/dialogue_map.svg[Dialog Map of the Videoshop] * catering.catalog * catering.inventory * catering.order +* catering.orderCatalog | Application should be provided as a static website |org.springframework.security a| * catering @@ -208,12 +209,14 @@ image:models/design/dialogue_map.svg[Dialog Map of the Videoshop] | Security features for the videoshop application and authorization of website access |org.springframework.data a| * catering.order +* catering.orderCatalog | JPA connection utility to the database layer |org.salespointframework a| * catering * catering.catalog * catering.inventory -* caterin.orger +* catering.order +* catering.orderCatalog * caterin.users | Reuse of SalesPoints POS functionality |=== @@ -253,8 +256,10 @@ image:models/design/inventory.svg[class design diagram - Inventory] |=== |Class/Enumeration |Description |InventoryController |A Spring MVC Controller to handle the request to list and mutate the catering service’s inventory -|InventoryInitilalizer |An implementation of the DataInitializer to create dummy data on application startup -|InventoryMutateForm |An class to validate the user input of the edit/add form +|InventoryInitializer |An implementation of the DataInitializer to create dummy data on application startup +|InventoryMutateForm |A class to validate the user input of the edit/add form +|ConsumableMutateForm |A subclass of InventoryMutateForm for Consumables +|RentableMutateForm |A subclass of InventoryMutateForm for Rentables |=== === OrderCatalog @@ -279,7 +284,8 @@ image:models/design/order.svg[class design diagram - Order] |Class/Enumeration |Description |OrderController |A Spring MVC Controller to handle the cart and all orders |CustomOrder |An extension of `Order` to save the start and finish of an event -|ProductForm |A Form to cache a user input that was made while planning and event +|CustomCart | An extension of `Cart` to save the start and finish of an event +|OrderQueryForm |A Form to cache a user input that was made while filtering orders |=== === User @@ -290,7 +296,7 @@ image:models/design/user.svg[class design diagram - User] |=== |Class/Enumeration |Description |Usercontroller |A Spring MVC Controller to handle profile management. -|UserDataInitalizer |An Initializer with primary purpose to add the admin. +|UserDataInitializer |An Initializer with primary purpose to add the admin. |UserManagement |A class that manages the UserRepository. |UserRepository |An extension of 'CrudRepository' to store Users. |User |A class that allows a person to associate system data with themselves. diff --git a/src/main/asciidoc/models/design/clientServer.puml b/src/main/asciidoc/models/design/clientServer.puml index 7765782..9d8162f 100644 --- a/src/main/asciidoc/models/design/clientServer.puml +++ b/src/main/asciidoc/models/design/clientServer.puml @@ -20,6 +20,7 @@ state Server { state Catalog state Order + state OrderCatalog state Customer state Inventory } diff --git a/src/main/asciidoc/models/design/clientServer.svg b/src/main/asciidoc/models/design/clientServer.svg index 18bcd6f..f949593 100644 --- a/src/main/asciidoc/models/design/clientServer.svg +++ b/src/main/asciidoc/models/design/clientServer.svg @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:c535eb4abf5a90b4428c1d3c948bd410b041443a05485b9cc00a993300c73fda -size 7485 +oid sha256:d5a511990fef914902fe5149b2fac7a3e614fc66e9f8c0245cb02d9fe187059d +size 7929 diff --git a/src/main/asciidoc/models/design/inventory.puml b/src/main/asciidoc/models/design/inventory.puml index 88b35c2..e106dba 100644 --- a/src/main/asciidoc/models/design/inventory.puml +++ b/src/main/asciidoc/models/design/inventory.puml @@ -25,7 +25,7 @@ package catering { package inventory { class InventoryController { - + InventoryController(inventory : UniqueInventory) + + InventoryController(inventory : UniqueInventory, cateringCatalog : CateringCatalog, catalogEntryRepository : CustomCatalogEntryRepository) + list(model : Model) : String + edit(model : Model, pid : Product) : String + edit(model : Model, pid : Product, form : InventoryMutateForm) : String @@ -74,6 +74,7 @@ package catering { + getMetric(): Metric + getOrderTypes(): Set + setName(name: String) + + setQuantity(quantity: Long) + setRetailPrice(Double retailPrice) + setOrderTypes(orderTypes: Set) + setMetric(metric: Metric) diff --git a/src/main/asciidoc/models/design/topLevelArchitecture.puml b/src/main/asciidoc/models/design/topLevelArchitecture.puml index 3df1bcc..bf2af41 100644 --- a/src/main/asciidoc/models/design/topLevelArchitecture.puml +++ b/src/main/asciidoc/models/design/topLevelArchitecture.puml @@ -29,6 +29,10 @@ package "web application\n[container]" as Package { usecase UC5 as "**Customer** [Component: Spring service, controller and JPA entity] customer management of the catering-service" + + usecase UC6 as "**OrderCatalog** + [Component: Spring service, controller and JPA entity] + event presets of the catering-service" } database DB as "**Database** @@ -41,15 +45,18 @@ UN ----> UC2 : "**view catalog**\n[HTTP]" Kunde ----> UC2 : "**view catalog**\n[HTTP]" Kunde ----> UC3 : "**plan a catering event**\n[HTTP]" +Kunde ----> UC6 : "**plan a catering event**\n[HTTP]" Kunde ---- UC5 : "**delete account, change personal data**\n[HTTP]" Boss ----> UC3 : "**view orders**\n[HTTP]" Boss ----> UC4 : "**manage inventory/staff**\n[HTTP]" Boss ----> UC2 : "**modify catalog**\n[HTTP]" +Boss ----> UC6 : "**modify event presets**\n[HTTP]" UC2 ----> DB : "**read and write catalog data**\n[JPA]" UC3 ----> DB : "**read and write order data**\n[JPA]" UC4 ----> DB : "**read and write inventory data**\n[JPA]" -UC5 ----> DB : "**rean and write customer data**\n[JPA]" +UC5 ----> DB : "**read and write customer data**\n[JPA]" +UC6 ----> DB : "**read and write orderCatalog data**\n[JPA]" @enduml diff --git a/src/main/asciidoc/models/design/topLevelArchitecture.svg b/src/main/asciidoc/models/design/topLevelArchitecture.svg index 4ac5c8b..c5c0305 100644 --- a/src/main/asciidoc/models/design/topLevelArchitecture.svg +++ b/src/main/asciidoc/models/design/topLevelArchitecture.svg @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:279ab268daa026d72aa8e532fc22b6b21909782c7cab6b7d37086ab8bfcab713 -size 16560 +oid sha256:7e3305efed3e7bb276cc511ef18f15a5434d8ceaba8510267c26d9f83c924fea +size 19349