diff --git a/src/main/asciidoc/models/design/staff.puml b/src/main/asciidoc/models/design/staff.puml new file mode 100644 index 0000000..858697b --- /dev/null +++ b/src/main/asciidoc/models/design/staff.puml @@ -0,0 +1,70 @@ +@startuml + +skinparam linetype ortho +skinparam groupInheritance 2 + +package java.util { + class ArrayList + class Collection + class HashSet + class Optional + class Set +} + +package catering { +package staff { + + class Staff { + - id: int + - surname: String + - name: String + - job: String + + Staff(name: String, surname: String, job: String) + + getId(): int + + getSurname(): String + + getName(): String + + getJob(): String + + setId(): void + + setSurname(): void + + setName(): void + + setJob(): void + } + + class StaffController { + + StaffController(staffRepository: StaffRepository) + + getStaff(model Model): String + + removeStaff(staffID: int, model Model): String + + addStaff(name: String, surname: String, job: String): String + + editStaff(id: int, model Model): String + + updateStaff(staff: Staff): String + } + + class StaffDataInitializer { + + StaffDataInitializer(staffRepository: StaffRepository) + + initialize(): void + } + + class StaffRepository { + + StaffRepository() + + addStaff(staff: Staff): boolean + + save(staff: Staff): void + + count(): long + + removeStaff(staffID: int) boolean + + getStaff(): Collection + + findById(id: int): Optional + } + +} +} + +StaffRepository *-- Staff : -staff +StaffController --> StaffRepository : -staffRepository +StaffDataInitializer --> StaffRepository : -staffRepository +StaffRepository --> Set : -staffs +StaffRepository --> HashSet : use +StaffRepository --> Collection : use +StaffRepository --> Optional : use +StaffRepository --> ArrayList : use + + +@enduml diff --git a/src/main/asciidoc/models/design/staff.svg b/src/main/asciidoc/models/design/staff.svg new file mode 100644 index 0000000..c9a739e --- /dev/null +++ b/src/main/asciidoc/models/design/staff.svg @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7bac1dd4468b9329f4cb14ab61b94527c26d2aaf626823ca1b36b3fd8755cb32 +size 26856