ITP4523M Internet & Multimedia Applications Development
Group Project - Web Application
1. Objectives
In this project, students are asked to:
n build a web application which provide different functions for salesperson and manager.
n apply software development skills to develop a website which is user-friendly, interactive, robust, and easy to maintain.
n apply the knowledge that you learned in this module to solve the tasks. (i.e., HTML, CSS, JavaScript, PHP, SQL commands and Python)
2. A simplified procedure to show how the web application will be used
There are two user roles for the management System:
a. Salesperson can place orders and manage customer accounts.
b. Manager can manage items and review customer’s order.
3. Design for Salesperson (Interface Design: 15 marks; Function: 30 marks)
a. Place orders
Managed to create orders into the system with all necessary information
View product information
List of items that available in stock for salesperson to choose
(Show items when stock quantity is greater than zero)
Required information for creating an order as below:
1. Order ID
2. Customer’s Email
3. Staff ID
4. Order Date & Time
5. Delivery Address (optional)
6. Delivery Date (optional)
* orderID should be generated automatically by the system as Primary Key
* deliveryAddress & deliveryDate should be input when the items need to be delivery
b. View orders of the customer
Managed to view the corresponding customer’s order with necessary information when the customer’s email is provided.
Required information for receipt page:
1. Order ID
2. Customer’s Email
3. Customer’s Name
4. Customer’s Phone Number
5. Staff ID
6. Staff Name
7. Order Date & Time
8. Delivery Address
9. Delivery Date
10. Item ID
11. Item Name
12. Order Quantity
13. Total Price
Function requirement:
Items are ordered by name in descending order.
c. Update order with delivery information
Managed to update the specified order with the delivery information.
Required information for the delivery:
1. Delivery Address
2. Delivery Date
d. Delete order
Delete the specified order including all the related records from database.
Function requirement:
- Create a “delete” button to delete the receipt including the related data in table Orders, ItemOrders from the database.
4. Python Plug-in: Discount Calculator (Function: 10 marks)
Develop a simple Python flask application to calculate the discount from the original total price. The RESTful API should accept the HTTP GET request and process the response from the Python program.
Request | /api/discountCalculator |
Input | Key: “discount” Value: Original total price |
Response | New total price |
The discount rates are as follow:
Original total price | >=$3000 | >=$5000 | >=$10000 | default |
Discount Rate | 3% | 8% | 12% | 0% |
5. Design for Manager (Interface Design: 15 marks; Function: 30 marks)
a. Insert and edit items’ information
Managed to insert or update the item with the following information.
Required Item information:
1. Item ID
2. Item Name
3. Item Description
4. Stock Quantity
5. Price
*itemID should be generated automatically by the system as Primary Key.
b. Generate monthly report
Managed to view the monthly sales record of all staffs by providing the month.
Required information for monthly report page:
1. Staff ID
2. Staff Name
3. Number of order records from each staff in that month
4. Total sales amount from each staff in that month
c. Delete customer and their records
Delete the specified customer record with all the related receipt records from database.
Function requirement:
- Create a “delete” button to delete the specified customer record including the related data in table Orders, ItemOrders and Customer from the database.
6. Form your project group
Each student needs to form a project group, the maximum number of students in each group is 2. Strongly recommend you to form a group to complete this project as you can benefit from sharing skills/codes amongst your members, and you can learn to plan, coordinate, and integrate work done by each member. Study carefully the given ERD and table structures before you start the implementation.
7. Additional requirements of your project
a. Your web site should only use PHP as the server-side programming language (i.e. not ASP, ASP.NET, JSP, servlet etc.), however, you may use JavaScript and CSS for specific purposes. The database server used must be mySQL (version 5.0 or above).
b. In your PHP code, you must ensure to use the following parameter values for the following mySQL database functions :
$conn = mysqli_connect($hostname, $username, $password, $database);
set to the values below in a PHP script which is shared by the web pages :
$hostname = "127.0.0.1";
$database = "projectDB";
$username = "root";
$password = "";
8. Items to submit (Phase 1) (30% of total project marks)
Submit all UI design using CSS and HTML. Submission deadline will be announced by the
lecturer.