Question: Develop a menu - driven program that simulates a store and is capable of representing various store types. The program will manage customers, inventory, and

Develop a menu-driven program that simulates a storeand is capable of representing various store types. The program will manage customers, inventory, and pricing. The user interface will be a graphical one, implemented using the JavaFX Library.
1. Store Functionality (15 points)
Implement a Store class that serves as a base for various store types.
Manage inventory and pricing for each item using an Array or ArrayList of store objects.
User Interaction (15 points)
Prompt the user for store details (store type, name, and location). Collect customer details (name, age, address, phone number, email) using an instance of the Customer class. Utilize JavaFX for all program functionalities. Enable users to purchase items continuously until they decide to finish shopping. Calculate the total purchase amount, including a 7% sales tax. Implement at least three discount options based on total spending:
* Spend $25 or more: 5% discount
* Spend $50 or more: 10% discount
* Spend $100 or more: 20% discount
Data Handling (15 points)
Create a menu that allows users to select from the following options:
Create a store View inventory View customers Add customers Upload inventory Purchase items Upload video testimony Exit the program
Implementation Details (15 points)
Store Class:
Fields: Store Type, Store Name, Store Location Methods: Accessors, mutators, toString for output formatting, and display inventory items.
Constructors:
No-argument constructor for default values.
Constructor with parameters for specific values.
Customer Class:
Fields: Name, Age, Address, Phone, Email
Methods:
Accessors, mutators, andtoString for output formatting.
Constructors:
No-argument constructor for default values. Constructor with parameters for specific values.
Main Class:
Use the final keyword for constants. Utilize an ArrayList or Array to hold store items. Include a method to calculate the total price, formatted to two decimal places.
Input and Output (10 points)
Input:
Validate user input to prevent invalid data types and handle exceptions. Prevent transactions involving unselected items or negative values. Implement exception handling as necessary.
Output:
Display all purchased items, their prices (formatted to two decimal places), discounts, and tax amounts in a tabular format. Refer to program challenges in the textbook for examples. Apply custom styling throughout your application.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!