How jurcandiana/food-delivery-management works
Food-Delivery-Management is a Java Swing application for administering a food menu, placing orders, and handling employee notifications. Users enter through login/sign-up and are routed by role; clients browse/search and submit orders, administrators manage products and generate reports, and employees observe new orders. DeliveryService coordinates business operations, while file helpers and serialization persist data and produce bills/reports. The README documents several capabilities whose detailed implementation was not sampled; those links are shown as documented rather than inferred from unsampled calls.
Main entry points: DeliveryService.java Delivery service · LogInGUI.java Login and signup · AdministratorGUI.java Administrator UI · ClientGUI.java Client UI
Components 17
User interfaces
- Login and signup
src/main/java/presentation/LogInGUI.java - Administrator UI
src/main/java/presentation/AdministratorGUI.java - Client UI
src/main/java/presentation/ClientGUI.java - Employee UI
src/main/java/presentation/EmployeeGUI.java - Menu table
src/main/java/presentation/MenuItemsTable.java
Delivery operations
- Delivery service
src/main/java/business/DeliveryService.java - Service contract
src/main/java/business/IDeliveryServiceProcessing.java
Business domain
- Menu item model
src/main/java/business/MenuItem.java - Base product
src/main/java/business/BaseProduct.java - Composite product
src/main/java/business/CompositeProduct.java - Order record
src/main/java/business/Order.java - User and role
src/main/java/business/User.java - Role types
src/main/java/business/UserType.java
Persistence and output
- CSV, bills, reports
src/main/java/data/FileReaderWriter.java - Object serialization
src/main/java/data/Serializator.java - Saved application data
menu.txt
Other components
- User
Connections 21
- User → Login and signup: authenticates
README.md - Login and signup → Delivery service: checks account
src/main/java/presentation/LogInGUI.java - Login and signup → Client UI: opens client
src/main/java/presentation/LogInGUI.java - Login and signup → Administrator UI: opens admin
src/main/java/presentation/LogInGUI.java - Login and signup → Employee UI: opens employee
src/main/java/presentation/LogInGUI.java - Client UI → Delivery service: searches and orders
src/main/java/presentation/ClientGUI.java - Administrator UI → Delivery service: manages and reports
README.md - Employee UI → Delivery service: observes new orders
README.md - Administrator UI → Menu table: renders menu
src/main/java/presentation/AdministratorGUI.java - Client UI → Menu table: renders menu
src/main/java/presentation/ClientGUI.java - Delivery service → CSV, bills, reports: imports CSV; writes bills
src/main/java/business/DeliveryService.java - Delivery service → Object serialization: serializes and restores
src/main/java/business/DeliveryService.java - Object serialization → Saved application data: persists objects
README.md - CSV, bills, reports → Saved application data: writes bills and reports
src/main/java/data/FileReaderWriter.java - Delivery service → Service contract: implements
src/main/java/business/DeliveryService.java - Composite product → Menu item model: extends and contains
src/main/java/business/CompositeProduct.java - Base product → Menu item model: extends
src/main/java/business/BaseProduct.java - Administrator UI → Composite product: creates composed products
README.md - Delivery service → Order record: creates and records
src/main/java/business/DeliveryService.java - Delivery service → User and role: manages users
src/main/java/business/DeliveryService.java - User and role → Role types: has role
src/main/java/business/User.java