Stock Control :star: (12. Define ProductSettings class :red_flag: (12.7…
Stock Control :star:
1.Define a class which start the application
2.Define a class which allow user to input values from keyboard
2.1 Contains methods which return different data type + Error checking build in.
3.Define a class which format the prices
4.Define a class which will display the App Menu
4.1 Contains 3 Methods which display 3 menu's text
4.2 Contains one method which display the principal menu.
4.3 Contains 2 methods which display the secondary menu's
4.4 Contains one method for system exit (animation purpose only)
5.Define a class which allow the user to save information into an external file.
5.1 Saving data of type Server when the user exit from "Staff Menu"
5.2 Saving data of type double (earnings) when the user exit from "Customer Menu"
6.Define a class which allow the user to extract information from an external file.
6.1 Extract Data of type Server and double (earnings) each time the Customer Menu is been accessed, and store it in 1 ArrayList and one global variable.
7. Define an abstract Server class
7.1 Contains the common attributes for child classes.
7.2 Contains getters/setters and display method.
8. Define a Web Server Class
9. Define a Vps Class
10. Define a Dedicated Server Class
11. Define CreateServer Class
11.1 A method which displays and allow the user to input the common information for all kind of products from the program.
11.2 A method which displays and allow the user to input the specific information for the Web Hosting product.
11.3 A method which displays and allow the user to input the specific information for the DedicatedServer class.
11.4 A method which displays and allow the user to input the specific information for the Vps class.
11.5 Three Methods which Add the specific objects into an ArrayList of type Sever.
11.6 A method which saves the Objects ArrayList into a file.
2. Define ProductSettings class
12.1 When the ProductSettings constructor is called, the information from files is read and stored in specific types (ArrayList and double global variable)
12.2 A method which allow the user to set up a discount to all products.
12.3 Two methods which extract the information from the files.
12.4 A method which display all products and another 3 methods which display the products by category.
12.5 A method which display the total earnings in the Staff Menu
12.6 A method which sorts the general array into three different arraylists of specific types. (from type Server to -> type WebHosting,Vps,DedicatedServer). :check:
12.7 Three methods which allow the user to buy a specific product.
12.7.1 The method will check first time if the specific arraylist of products is empty. If is empty an error message will be displayed.
12.7.2 If the arraylist is not empty, all products from that category will be displayed.
12.7.3 The user will be ask to input the product id, if is wrong the program will ask the user to input again.
12.7.4 If the user inputs the correct id, the program will:
-Update the earnings
-Remove the specific objects from the arraylist.
12.8 A method which add back the objects from the 3 ArrayList back into a single one of type Server.