A Java console-based e-commerce solution empowering both administrators and customers, enabling inventory and coupon management for admins while providing an efficient shopping experience for customers, all within the simplicity of a text-driven interface.
%%{ init : { "flowchart" : { "curve" : "linear" }}}%%
flowchart TD
A["Launch"] --> B["Create Account"]
A --> C["Login"]
B --> C
C --> D{"Role?"}
D -->|"Administrator"| E["Administrator Menu"]
D -->|"Customer"| F["Customer Menu"]
E --> G["User Management"]
E --> H["Inventory Management"]
E --> X[Logout]
X --> A[Launch];
F --> X
F --> J["Shopping Menu"]
F --> K["View Orders"]
F --> L["Pay an Order"]
F --> M["Cancel an Order"]
G --> N["- Add Administator\n- Display Administators\n- Display Customers\n- Display Orders\n- Delete a User"]
H --> O["- Add Product\n- Display Products\n- Update Product\n- Delete Product\n- Display Inventory\n- Modify Quantity\n- Search Product\n- Add Coupon\n- Deactivate Coupon\n- Display Coupons"]
J --> P["- View Products\n- Rate a Product\n- Add item to Cart\n- Update item quantity\n- Remove item from Cart\n- Display Cart\n- Checkout"]
L --> Q["Cash Payment"]
L --> R["Credit Card Payment"]
- Add, edit, or remove products from the inventory.
- Update product details such as name, price, quantity, and description.
- Create, modify, or delete discount coupons.
- Set coupon codes, discount percentages, and expiration dates.
- Access order history and status.
- View customer information and orders.
- Add other administrators.
- Browse available products and their details.
- Add desired items to the cart.
- Give your honest opinion about products you bought to help other customers make their decisions.
- Proceed to checkout and finalize orders.
- Apply discount coupons if available.
- Cancel your order at anytime.
- View past orders and their statuses.
- Choose to pay via cash or a credit card.
- Differentiate between administrator and customer access levels.
- Secure login for administrators and customers.
- Utilize a command-line interface for user interactions.
Clone the project
git clone https://github.com/yassine-sallemi/ecommerce_project
Compile and run !
1. Create account
2. Login
3. Exit
Enter your choice: 2
Enter username: admin
Enter password: admin
Logged in successfully.
1. User management
2. Inventory management
3. Logout
Enter your choice: 1
1. Add administrator
2. Display administrators
3. Display customers
4. Display all orders
5. Delete a user
6. Back to main menu
Enter your choice: 6
Back to main menu...
1. User management
2. Inventory management
3. Logout
Enter your choice: 2
1. Add product
2. Display product
3. Update product
4. Delete product
5. Display inventory
6. Modify quantity product
7. Search product
8. Add coupon
9. Deactivate coupon
10. Display coupons
11. Back to main menu
Enter your choice: 11
Back to main menu...
1. User management
2. Inventory management
3. Logout
Enter your choice: 3
Logging out...
1. Create account
2. Login
3. Exit
Enter your choice: 3
Exiting...