1.Project introduction This project is a restaurant online ordering system, including the front-end (interface) and back-end (server controller and database), including user login, account management function, menu function, order management function, shopping cart function, payment function, takeaway function, order function and evaluation function. The project was completed by team leader Zhaoyu Pan and team members Huiming He, Yingxi Zeng, Dingzhao Zhang and siyu Chen.
*2.*Function details
Feature # |
Feature |
Description |
Owner |
F101 |
User login system |
Both restraint and customer can log in and register their account. |
Zhaoyu Pan |
F102
|
User profiles management Place an order
|
A user can update their profiles information and delete their account.
|
Zhaoyu Pan
|
F103 |
Supplier Ordering system |
Restraint can select and delete goods from supplier. |
Zhaoyu Pan |
F104
|
Shopping Cart |
Users can add and delete items from the shopping cart. Staff can update the price of an item
|
Huiming He |
F105
|
Menu |
Staff can update create and delete items. Users can order from the menu screen |
Huiming He |
F106
|
Customer place an order
|
Users can place orders for items that have been added to the cart or directly for items that have not been added to the cart. |
Shiyu Chen |
F107
|
Customer |
Users can set their payment information in their personal account to add a bank card and pay for the ordered products through the payment information they have added. |
Shiyu Chen |
F108
|
Delivery |
User can create a food delivery order and track their food’s current location. |
Dingzhao Zhang |
F109
|
User Management System |
System admin staff can create and delete staff. System admin staff can update the details and permission to staff, then give the permission for staff to create, delete, and update changes for customer. |
Yingxi Zeng |
F110
|
Goods Incoming Order Check System |
Staff can view the goods incoming orders for stocking confirmation and update a check list. |
Yingxi Zeng |
F111 |
Evaluation System |
Customer can evaluation the food and the restaurant |
Dingzhao Zhang |
2).Controllers
servlet: used to extend the capabilities of servers that host applications accessed by means of a request-response programming model.
SpringSession: addresses Session sharing in a clustered environment.
java session:Used for state consisting of multiple requests and responses between client and server. Both HTTP and web servers are stateless. Therefore, the way to maintain user state is to utilize techniques that implement session tracking.
3). database MySQL: relational database. The core business data of this project will be stored by MySQL.
MybatisPlus: This project persistence layer will use MybatisPlus to simplify the development, the basic single table add, delete, change and check directly call the method provided by the frame.
Redis: an in-memory database stored in key-value format with high access speed. It is often used as a cache (to reduce database access pressure and provide access efficiency) and will be used in future performance optimization.
4.Tools Git: A version control tool that is used to manage code in a project during team work.
Maven: Project building tool.
Junit: unit test tool. After functions are implemented, developers need to use junit to unit test functions.