The iCantina Management System is designed for a school's canteen to manage menus and reservations efficiently. The system facilitates the handling of daily menus, reservation controls, balance top-ups, and billing.
This project was created with the collaborative efforts of three passionate individuals:
Maxim D.
Edo S.
Ana G.
-
User Roles:
- The system is exclusively used by canteen staff.
- Staff handle balance top-ups and reservations.
-
Menu Management:
- Daily menus include a dish from each category (Meat, Fish, Vegetarian) and multiple extras.
- Different prices for students and professors.
- Weekly view of menus with navigation capabilities.
-
Reservation System:
- Reservations decrease available quantity and deduct from customer balance.
- Each customer can reserve one dish per day and up to three extras.
- Generation of text files for reservation details and PDF invoices.
- Support for penalty charges based on reservation delays.
-
Customer Management:
- Customers can be categorized as students or professors.
- New customers can be saved for future transactions.
-
Employee Management:
- CRUD operations for employee records.
- Switching active employee during application use.
-
Data Persistence:
- All data is stored in a SQL Server database using Entity Framework.
The data model includes tables for employees, customers, dishes, extras, menus, reservations, and penalties. Detailed structure and justifications for any modifications are documented in the project report.
The application includes the following mandatory forms:
- Main Form: Access to various functionalities like dishes, extras, menus, penalties, reservations, customers, and employees. Displays the current week's menus.
- Reservation Form: Split into reservation creation and marking reservations as used.
- Dishes Form: CRUD operations for dishes.
- Extras Form: CRUD operations for extras.
- Penalties Form: CRUD operations for penalty times.
- Customer Management Form: CRUD operations for customer records.
- Menu Form: Creation and management of daily menus.
- Employee Form: CRUD operations for employee records.