java
java
Functional Requirements
These requirements outline the core features the system should support:
1. Login Access:
Vendor: Can manage menu items (create, read, update, delete), accept or cancel
orders, view order history, access revenue dashboard, etc.
Customer: Can view menus, place orders, check order status, provide reviews,
view order history, and manage payments.
Delivery Runner: Can accept or decline delivery tasks, update task statuses, and
view task history.
2. User Registration:
3. Menu:
o Display menus for multiple vendors at Tech University, allowing customers to easily
browse and place orders.
o Vendors must manage and accept/reject orders. If rejected, a refund is issued to the
customer.
5. Payment:
o Incorporate a credit-based payment system where customers pay for their orders through
their digital wallet.
o Admins can update customers’ credit and send digital receipts through notifications.
6. Notification System:
o All users should receive notifications about their actions (e.g., vendor accepting/declining
orders, administrator top-up notifications, etc.).
7. Order History:
o Both customers and vendors should have access to order and transaction history.
o Customers can reorder from past orders. Vendors can analyze order data and view
customer reviews.
8. Delivery System:
o If customers choose delivery, a delivery runner is assigned. Runners can accept or decline
tasks, and the system must ensure delivery is assigned to the next available runner if
declined.
o Delivery fees are credited back to the customer if the order is declined.