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 menudriven 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.
Store Functionality 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 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 sales tax. Implement at least three discount options based on total spending:
Spend $ or more: discount
Spend $ or more: discount
Spend $ or more: discount
Data Handling 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 points
Store Class:
Fields: Store Type, Store Name, Store Location Methods: Accessors, mutators, toString for output formatting, and display inventory items.
Constructors:
Noargument 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:
Noargument 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 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
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
