Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.Scanner;
- public class SoftdrinksDealership
- {
- // Default data of SoftDrinksData
- static int[][] SoftDrinksData = {
- /* Stocks Price */
- {20, 30}, // DRINK_SPRITE
- {20, 25}, // DRINK_ROYAL
- {20, 30}, // DRINK_COKE
- {20, 25}, // DRINK_MOUNTAIN
- {20, 25}, // DRINK_SARSI
- {20, 25}, // DRINK_PEPSI
- };
- // Constant of Sizes
- final static int
- SIZE_LARGE = 1, // 750 ML
- SIZE_MEDIUM = 2, // 355 ML
- SIZE_AVERAGE = 3, // 250 ML
- SIZE_SMALL = 4; // 240 ML
- // Constant of Drinks
- final static int
- DRINK_SPRITE = 0,
- DRINK_ROYAL = 1,
- DRINK_COKE = 2,
- DRINK_MOUNTAIN = 3,
- DRINK_SARSI = 4,
- DRINK_PEPSI = 5;
- // Default Sizes of Array
- final static int
- MAX_CUSTOMER = 50,
- MAX_RECEIPT = 999,
- MAX_DRINKSIZE = 5;
- final static String[] MAINMENU = {
- "Sell Softdrinks",
- "Update Stocks",
- "Update Price",
- "Delete Stocks",
- "Logs of Buyer"
- };
- final static int
- MAINMENU_ID = 0,
- SELLSOFDRINKSMENU_ID = 1,
- UPDATESTOCKS_ID = 2,
- UPDATEPRICE_ID = 3,
- DELETESTOCKS_ID = 4,
- LOGSOFBUYER_ID = 5;
- static String[][] customerData = new String[MAX_CUSTOMER][2]; // 1 = Firstname | 2 = Lastname
- static int[][][] customerReceiptData = new int[MAX_RECEIPT][MAX_CUSTOMER][4];
- // 0 = Type of Drink | 1 = Drink Size | 2 = Drink Price | 3 = Drink Case
- static int
- menuStep = MAINMENU_ID,
- CUSTOMER_UNIQUE_ID = 0,
- RECEIPT_UNIQUE_ID = 0; // DEFAULT
- static String
- customerChoice = "Yes";
- static Scanner userInput = new Scanner(System.in);
- static String getDrinkName(int id) // METHOD USE TO GET THE DRINK NAME
- {
- switch(id)
- {
- case DRINK_SPRITE:
- return "SPRITE";
- case DRINK_ROYAL:
- return "ROYAL";
- case DRINK_COKE:
- return "COKE";
- case DRINK_MOUNTAIN:
- return "MOUNTAIN DEW";
- case DRINK_SARSI:
- return "SARSI";
- case DRINK_PEPSI:
- return "PEPSI";
- }
- return "";
- }
- static String getDrinkSize(int size) // USE TO GET THE DRINK SIZE NAME
- {
- switch(size)
- {
- case SIZE_LARGE:
- return "750 ML";
- case SIZE_MEDIUM:
- return "355 ML";
- case SIZE_AVERAGE:
- return "250 ML";
- case SIZE_SMALL:
- return "240 ML";
- }
- return "";
- }
- public static void main(String[] args)
- {
- while(true)
- {
- int temp = 0;
- String tempStr = "";
- switch(menuStep)
- {
- case MAINMENU_ID:
- System.out.println("BARKI SOFTDRINKS DEALERSHIP");
- System.out.println("MAIN MENU");
- for(int x = 0; x < MAINMENU.length; x++)
- {
- System.out.println("(" + (x + 1) + ") " + MAINMENU[x]);
- }
- System.out.print("\nChoose from the menu above: ");
- menuStep = userInput.nextInt();
- break;
- case SELLSOFDRINKSMENU_ID:
- while(true)
- {
- userInput = new Scanner(System.in); // RESETTING THE VALUE OF USERINPUT
- System.out.print("\nBuy softdrinks? (Yes/No): ");
- customerChoice = userInput.nextLine();
- if(customerChoice.equalsIgnoreCase("Yes") || customerChoice.equalsIgnoreCase("No"))
- break;
- }
- if(customerChoice.equalsIgnoreCase("No"))
- {
- // We're going to stop the operation and go back to main
- menuStep = MAINMENU_ID; // SET MENUSTEP BACK TO MAIN MENU
- break;
- }
- System.out.print("How many case?: ");
- temp = userInput.nextInt();
- customerReceiptData[RECEIPT_UNIQUE_ID][CUSTOMER_UNIQUE_ID][3] = temp; // DRINK CASE
- userInput = new Scanner(System.in); // RESETTING THE VALUE OF USERINPUT
- System.out.print("\n\nEnter Surname: ");
- tempStr = userInput.nextLine();
- customerData[CUSTOMER_UNIQUE_ID][1] = tempStr; // Set the customer Last Name
- System.out.print("Enter First name: ");
- tempStr = userInput.nextLine();
- customerData[CUSTOMER_UNIQUE_ID][0] = tempStr; // Set the customer Name
- System.out.println(); // BREAKING THE LINE
- for(int x = 0; x < MAX_DRINKSIZE; x++)
- {
- System.out.println("(" + (x + 1) + ") " + ((x != MAX_DRINKSIZE-1) ? (getDrinkSize(x + 1)) : ("Back to Main Menu")));
- }
- System.out.print("\n\nChoose among the sizes of drinks: ");
- temp = userInput.nextInt();
- if(temp == MAX_DRINKSIZE) // BACK TO MAIN MENU
- {
- // ERASE ALL THE DATA BECAUSE THE CUSTOMER DIDN'T BUY DRINKS
- customerReceiptData[RECEIPT_UNIQUE_ID][CUSTOMER_UNIQUE_ID][3] = 0; // SET TO 0
- customerData[CUSTOMER_UNIQUE_ID][1] = ""; // LASTNAME
- customerData[CUSTOMER_UNIQUE_ID][0] = ""; // FIRSTNAME
- menuStep = MAINMENU_ID; // SET MENUSTEP BACK TO MAIN MENU
- break; // BREAKING THE SWITCH CASE STATEMENT AND GOES BACK IN LOOPING FROM THE START
- }
- // Continue if the user choose from sizes
- customerReceiptData[RECEIPT_UNIQUE_ID][CUSTOMER_UNIQUE_ID][3] = temp; // DRINK CASE
- /* NOTE:
- The reason why we save the data input of customerData and the customerReceiptData this is will be use in Logs of Buyers
- */
- CUSTOMER_UNIQUE_ID++; // WE NEED TO INCREMENT THIS IS TO AVOID DUPLICATION OF UNIQUE ID JUST LIKE IN DATABASE
- RECEIPT_UNIQUE_ID++; // WE NEED TO INCREMENT THIS IS TO AVOID DUPLICATION OF UNIQUE ID JUST LIKE IN DATABASE
- menuStep = MAINMENU_ID; // SET MENUSTEP BACK TO MAIN MENU AFTER THE USER BUY DRINKS
- break;
- case UPDATESTOCKS_ID:
- System.out.println("UPDATE STOCKS");
- System.out.println("ID\tNAME\t\tSTOCK");
- for(int x = 0; x < SoftDrinksData.length; x++) // SoftDrinksData.length = get the number of row of SoftDrinksData
- {
- System.out.println((x + 1) + "\t" + getDrinkName(x) + "\t\t" + SoftDrinksData[x][0] + " left");
- if(x == SoftDrinksData.length -1 ) System.out.println((SoftDrinksData.length + 1) + "\t" + "to Go back to Main Menu");
- }
- System.out.print("~Select Variant you want to update: ");
- temp = userInput.nextInt();
- menuStep = MAINMENU_ID; // SET MENUSTEP BACK TO MAIN MENU AFTER THE STOCK UPDATES
- break;
- case UPDATEPRICE_ID:
- break;
- case DELETESTOCKS_ID:
- break;
- case LOGSOFBUYER_ID:
- while(true)
- {
- System.out.println("LOGS OF BUYERS");
- for(int x = 0; x < MAX_CUSTOMER; x++)
- {
- if(customerData[x][1] != null)
- System.out.println((x + 1) + ". " + customerData[x][1] + ", " + customerData[x][0] + "\n");
- }
- System.out.print("\n Back to Main Menu? (Yes/No): ");
- customerChoice = userInput.nextLine();
- if(customerChoice.equalsIgnoreCase("Yes"))
- break;
- menuStep = MAINMENU_ID; // SET MENUSTEP BACK TO MAIN MENU AFTER THE CHECKING THE LOGS
- }
- break;
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement