1.3-Object-Georienteerd-Programmeren

Hospitality

Today we want you to build restaurant system that allows you to record orders (from customers)). We’ll keep it simple and focus mainly on the ordering process. You can order drinks and food items. Each item to be ordered on the menu has a name and a price. In addition, drinks need to be stored whether they are alcoholic and how many milliliters are in a bottle. Of food items, we store how many people a portion is for and whether it is a hot or cold dish.

Be sure to distinguish between drinks and food when printing the order (because one order has to go to the bar and the other to the kitchen).

To provide your program with some data, we have included menu items.csv containing some menu items. Note carefully that this csv file distinguishes between drinks and dishes.

After using the CSV data, feel free to add another more specific drink or food item using inheritance to test your application!

Note: The class diagram only shows the inheritance tree. You may want to add other classes to make your programming better.

Example

****** Order system ******
* 1) Show menu and place order
* 2) Show entire order 
* 0) Exit!
***************************************
Please make a selection from the menu: 1

*************** Item selector ***************
1) Cafe Creme (€2.75) [alcoholic: false, amount: 250ml]
2) Flesje Appelsap (€2.95) [alcoholic: false, amount: 250ml]
3) Bier van het fust (€5.75) [alcoholic: true, amount: 500ml]
4) Grote reuze pannenkoek (€7.95) [hot: true, for 1 people.]
5) Grote salade (€11.75) [hot: false, for 4 people.]
6) Shoarma pannenkoek (€14.75) [hot: true, for 1 people.]
7) De Noorse pannenkoek (€13.75) [hot: true, for 1 people.]
8) Twee van Dobben-kroketten (€13.75) [hot: true, for 2 people.]
9) Rode port (€3.75) [alcoholic: true, amount: 150ml]
10) Whisky (€4.25) [alcoholic: true, amount: 60ml]
11) Moccachino (€3.0) [alcoholic: false, amount: 175ml]

Please select a value: 4

****** Order system ******
* 1) Show menu and place order
* 2) Show entire order 
* 0) Exit!
***************************************
Please make a selection from the menu: 2
*** Table bill *** 

Food items: 
    Grote reuze pannenkoek (€7.95) [hot: true, for 1 people.]

Drinks: 


The total amount for this order: €7.95


****** Order system ******
* 1) Show menu and place order
* 2) Show entire order 
* 0) Exit!
***************************************
Please make a selection from the menu: 1

*************** Item selector ***************
1) Cafe Creme (€2.75) [alcoholic: false, amount: 250ml]
2) Flesje Appelsap (€2.95) [alcoholic: false, amount: 250ml]
3) Bier van het fust (€5.75) [alcoholic: true, amount: 500ml]
4) Grote reuze pannenkoek (€7.95) [hot: true, for 1 people.]
5) Grote salade (€11.75) [hot: false, for 4 people.]
6) Shoarma pannenkoek (€14.75) [hot: true, for 1 people.]
7) De Noorse pannenkoek (€13.75) [hot: true, for 1 people.]
8) Twee van Dobben-kroketten (€13.75) [hot: true, for 2 people.]
9) Rode port (€3.75) [alcoholic: true, amount: 150ml]
10) Whisky (€4.25) [alcoholic: true, amount: 60ml]
11) Moccachino (€3.0) [alcoholic: false, amount: 175ml]

Please select a value: 2

****** Order system ******
* 1) Show menu and place order
* 2) Show entire order 
* 0) Exit!
***************************************
Please make a selection from the menu: 2
*** Table bill *** 

Food items: 
    Grote reuze pannenkoek (€7.95) [hot: true, for 1 people.]

Drinks: 
    Flesje Appelsap (€2.95) [alcoholic: false, amount: 250ml]


The total amount for this order: €10.9


****** Order system ******
* 1) Show menu and place order
* 2) Show entire order 
* 0) Exit!
***************************************
Please make a selection from the menu: 0

Thank you, please come again