The Cafeteria Management, DU, is a Java-based application designed to streamline cafeteria operations at the Science Complex, University of Dhaka.
It provides a secure and efficient platform for teachers, students, admins, and employees to manage cafeteria services. The system features user authentication, food ordering, purchase tracking, and administrative controls, ensuring a seamless experience for both customers and staff. With role-based access, real-time updates, and secure login mechanisms, this system enhances efficiency, transparency, and user convenience.
- IDE: IntelliJ
- Language: JAVA
- Framework: JavaFX
- Database: MySQL
- Testing: Manual testing for the overall system functionality
cafe/
│
├── src/ # Source code
│ ├── main/
│ ├── java/
| | |── module-info.java
│ │ |── cafe.management.cafe/
| | ├── AdminController.java
│ │ ├── CafeManagement.java # Main entry point of the application
│ │ ├── cardProduct.java
| | ├── CustomerController.java
| | ├── CustomerOrderHistory.java
│ │ ├── CustomerSummary.java
| | ├── DatabaseUsers.java # Database connection logic cardProduct.java
| | ├── EmployeeData.java
│ │ ├── ManagementControl.java
│ │ ├── ProductData.java
│ │ └── SurfaceLayoutContoller.java
| | ├── data.java
│ └── resources/
│ ├── cafe.management/
│ ├── cafe/ # JavaFX FXML & CSS files
| ├────── cardProduct.fxml
| ├────── CustomerLayout.fxml
| ├────── LoginPage.fxml
| ├────── LoginStyle.css
| ├────── mainForm1Design.css
| ├────── SurfaceLayout.fxml
| ├────── test.fxml
│ ├── img/
├── target/
├── lib/
├── out/
│ ├──── artifacts
| ├───cafe_jar
| ├──── cafe.jar
├── .git/
├── .idea/
├── .mvn/
├── javafx-sdk-23.0.1.
├── README.md
├── pom.xml
├── .gigintore
- Secure Login & Sign-up – Access the system using a registration ID and password.
- View Menu – Browse available food items with prices.
- Order Food – Add items to the cart and complete purchases.
- Purchase History – View past orders and payments.
- Leave Reviews & Ratings – Provide feedback on food quality.
- Profile Management – Update personal details.
- Password Recovery – Reset password using a predefined codeword.
- User Management – Admin can approve new employees and track users.
- Inventory Management – Update product availability and pricing.
- Sales Tracking – Monitor daily and total income.
- Order Management – Process and track customer orders.
- Employee Access Control – Admin approves employee logins to prevent unauthorized access.
- Sign-out Confirmation – Ensures secure logout.
- "About Us" Page – Provides details about the cafeteria and its services.
Download the project ZIP file from the repository.
Extract the contents of the ZIP file to your preferred directory.
Ensure that you have JavaFX set up in your IDE. You may need to manually configure JavaFX if it is not bundled with your IDE. Refer to the JavaFX installation guide if necessary.
- For IntelliJ IDEA or Eclipse:
Add the JavaFX SDK to your project libraries. Set the VM options to include JavaFX modules like:--module-path "path-to-javafx-sdk/lib" --add-modules javafx.controls,javafx.fxml
-
Modify Database Credentials:
-
Open the
DatabaseUsers.javafile located in your project folder. -
Find the following lines and update them with your MySQL username and password:
String jdbcUsername = "root"; // MySQL username String jdbcPassword = "root"; // MySQL password String jdbcURL = "jdbc:mysql://localhost:3306/cafeteria_db"; // Database URL
-
Replace
"root"with your actual MySQL username and password. Example:String jdbcUsername = "your_username"; // MySQL username String jdbcPassword = "your_password"; // MySQL password String jdbcURL = "jdbc:mysql://localhost:3306/cafeteria_db"; // Database URL
-
-
Save the file after modifying the credentials.
To run the application, follow these steps:
-
Open a terminal or command prompt in the directory where
cafe.jaris located. -
Use the following command to run the application:
java --module-path "your_lib_file_directory" --add-modules javafx.controls,javafx.fxml -jar cafe.jar -
Run the server (for chat functionality or backend processes).
-
Run the Admin and Client sections of the application as needed.
-
Database Connection Error?
Make sure MySQL is running and that the database URL, username, and password are correctly set in theDatabaseUsers.javafile. -
JavaFX Issues?
Ensure you have added the JavaFX SDK and set the VM options correctly in your IDE.
Feel free to fork, clone, and modify the project. If you encounter any issues, please open an issue on this repository.
🚀 Enjoy using the Cafeteria Management, DU.
- Suraya Jannat Mim (Roll: 17)
- Anisha Tabassum (Roll: 19)
- Jubayer Ahmed Sojib (Roll: 23)
- Tamal Kanti Sarker (Roll: 39)
