A role-based E-Commerce platform with distinct functionality for guests, customers, multiple staff members, and a single manager. This application supports product browsing, shopping, reviews, user management, and an admin dashboard for internal operations. The project follows the MVC architecture (Model-View-Controller), utilizes OOP (Object-Oriented Programming), and implements JPA (Java Persistence API). The user interface is built using Bootstrap.
- Browse and search products
- Register as a customer
- Add products to cart and place orders
- Submit product reviews
- Customize personal profile
- Manage product listings (create, update, delete)
- View customer information
- Reply to customer reviews
- Customize own profile
- Access the manager dashboard
- All permissions granted to staff
- Manage staff accounts (create, edit, delete)
- Manage customer accounts (ban, delete, edit)
- Customize own profile
| Feature | Guest | Customer | Staff | Manager |
|---|---|---|---|---|
| Browse/Search Products | ✅ | ✅ | ✅ | ✅ |
| Register/Login | ✅ | ✅ | ✅ | ✅ |
| Add to Cart | ❌ | ✅ | ❌ | ❌ |
| Place Orders | ❌ | ✅ | ❌ | ❌ |
| Manage Orders | ❌ | ❌ | ✅ | ✅ |
| Submit Reviews | ❌ | ✅ | ❌ | ❌ |
| Reply to Reviews | ❌ | ❌ | ✅ | ✅ |
| Manage Products | ❌ | ❌ | ✅ | ✅ |
| View Customers | ❌ | ❌ | ✅ | ✅ |
| Manage Staff | ❌ | ❌ | ❌ | ✅ |
| Manage Customers | ❌ | ❌ | ❌ | ✅ |
| Customize Profile | ❌ | ✅ | ✅ | ✅ |

