Please read the following
instructions carefully before solving & submitting assignment:
Uploading Instructions:
- You are not allowed to use any other software/IDE except NetBeans IDE for this assignment development.
- The submission must be a complete NetBeans IDE project folder (which should contain complete source code, Java files, database file and builds etc.). After finalizing, compress it with Zip or RAR format, save with your own Student ID (e.g. bc000000000.zip) and submit it at VU-LMS within due date.
- Your assignment should be in .zip /.rar format. Other file formats will not be accepted.
- No assignment will be accepted through email.
Rules for Marking:
It
should be clear that your assignment will not get any credit if:
- The assignment is submitted after due date.
- The assignment is not submitted in .zip /.rar format.
- The submitted assignment does not open or file is corrupted.
- The assignment is fully or partially copied from other student or ditto copy from handouts or Internet; strict disciplinary action will be taken in this case.
- The submitted code is unable to compile/execute in NetBeans IDE; during evaluation, submitted code will be checked on NetBeans IDE. If unable to execute then ZERO marks will be awarded and no excuses will be accepted in this regard.
Note:
Do not put any query on MDB regarding this assignment, if you have
any query then email at cs506@vu.edu.pk
Lectures Covered: This assignment covers Lecture # 1-17
GOOD LUCK
Problem Statement:
You are required to write a
Java program, named ShoppingCart,
for a typical online shopping system. In which a customer can add and
remove items to the shopping cart. The program will calculate the
total bill as the items are added/removed to/from shopping cart and
will display the amount via user friendly Interface on real time
basis. Further, all orders will be saved in a backend database using
MS Access so that the administrator could process the orders
properly.
Detailed Description:
At start, your program should
read Products Data
from MS Access database file (sample
data is given below)
and display a GUI (i.e.
Graphical User Interface)
which should contain options for selecting quantity of products,
sample is given below;
Fig. 1: Shopping Cart GUI
Here, the customer can select
the quantity (i.e. 0
to 10) for
available products by clicking on add (+) or remove (–) buttons;
the cart should be updated on each action and correct amount after
calculating the number of items, subtotal, shipping charges (shipping
charges are given below)
and grand total should be displayed.
When user clicks on "Place
Order" then the program should check whether the cart contains
any item or not. If cart is empty then a message "Cart is
empty!" should be displayed. Otherwise, order details will be
saved to MS Access database file and interface will be updated with
initial values (i.e.
zero quantity for each item and zero in amount fields etc.)
as well.
Further, cross icon at top
right corner of the interface should terminate the program and show
the developer information (i.e.
Student Id and name)
via message dialog.
Fig. 2: Developer Info
Required Stuff:
Java Classes:
Product.java
Cart.java
DatabaseHelper.java
(should contain all database related code)
MainClass.java
(should contain GUI code)
Database file:
BSxxxxxxxx.accdb
(must be same as your own VU student id)
Note:
need to put database file in assets folder in NetBeans project
directory; as shown below;
Fig. 3: Folder "assets"
in NetBeans project directory
Sample Data:
#
|
Item
|
Price
($)
|
1
|
Orange
|
2.0
|
2
|
Grapes
|
2.5
|
3
|
Banana
|
1.5
|
4
|
Mango
|
3.0
|
Semester
Tab. 1: Sample Products
Data
#
|
No
of Items
|
Charges
|
1
|
0
|
$0
|
2
|
1
to 5
|
$0.5
|
3
|
6
to 10
|
$1.0
|
4
|
11
to 15
|
$1.5
|
5
|
16
to 20
|
$2.0
|
6
|
21
to 25
|
$2.5
|
7
|
26
to 30
|
$3.0
|
8
|
31
to 35
|
$3.5
|
9
|
More
than 35
|
$4.0
|
Tab. 2: Sample Shipping
Charges
Tab.
3: Products Table in MS Access Database file
Tab.
4: Orders Table in MS Access Database file
Important Things to
Implement:
- For GUI, relevant components (i.e. JFrame, JPanel, JButton, JTextField and JLable etc.) from AWT and Swing packages should be used.
- You will have to use ucanaccess driver to connect to MS Access database. In this case, you are suggested to view the following video tutorial.
- For storing/fetching data to/from database, you will need to use proper SQL queries.
- You can use same Product and Cart Java classes as provided in assignment # 1 and also can make changes as required.
- Java classes must have proper Data Members and Member Functions along with Constructors, Standard Setters and Getters etc.
- Need to make sure that exceptions are managed properly throughout the program; especially NullPointerException, ClassNotFoundException and SQLException.
Good
Luck
0 Comments