When an order is placed, a method is required to be included to check to make sure
Question:
When an order is placed, a method is required to be included to check to make sure that the order number is either letter code (FB or SB) and only contain three digits otherwise an error is thrown.
&
Overriding methods need to be included and i'm not sure how to do either of these
*****************************
package CMIS242ASG2AfetseM;
import java.util.ArrayList; import java.util.Scanner;
public class CMIS242ASG2AfetseM {
// parent class class Gift { private String orderNumber; private String size; private int numFruits; private double price;
public Gift(String orderNumber, String size, int numFruits, int citrusFruits, int nuts) { this.orderNumber = orderNumber; this.size = size; this.numFruits = numFruits; this.price = calculatePrice(size, numFruits, citrusFruits, nuts); }
public String getOrderNumber() { return orderNumber; }
public String getSize() { return size; }
public void setSize(String size) { this.size = size; }
public int getNumFruits() { return numFruits; }
public void setNumFruits(int numFruits) { this.numFruits = numFruits; }
public double getPrice() { return price; }
public double calculatePrice(String size, int numFruits, int citrusFruits, int nuts) { double price = 0.0;
if (size.equals("S")) { price = 19.99; } else if (size.equals("M")) { price = 29.99; } else if (size.equals("L")) { price = 39.99; }
if (citrusFruits == 1) { price += 5.99; }
if (nuts == 1) { price += 4.49; }
return price; }
public void display() { System.out.println("Order number: " + orderNumber); System.out.println("Size: " + size); System.out.println("Number of fruits: " + numFruits); System.out.println("Price: " + "$" +String.format("%.2f", price)); } }
//child class class FruitBasket extends Gift { private int citrusFruits;
public FruitBasket(String orderNumber, String size, int numFruits, int citrusFruits, int nuts) { super(orderNumber, size, numFruits, citrusFruits, nuts); this.citrusFruits = citrusFruits; }
public int getCitrusFruits() { return citrusFruits; }
public void setCitrusFruits(int citrusFruits) { this.citrusFruits = citrusFruits; } }
//child class class SweetsBasket extends Gift { private int nuts;
public SweetsBasket(String orderNumber, String size, int numFruits, int citrusFruits, int nuts) { super(orderNumber, size, numFruits, citrusFruits, nuts); this.nuts = nuts; }
public int getNuts() { return nuts; }
public void setNuts(int nuts) { this.nuts = nuts; } }
//ArrayList to hold orders generated ArrayList
public void run() { boolean quit = false; Scanner scanner = new Scanner(System.in); while (!quit) { System.out.println("********** GIFT ORDER MENU **********"); System.out.println("Please Select From the Following Menu:"); System.out.println("1. Add a gift order"); System.out.println("2. Change a gift order"); System.out.println("3. Display a single gift order"); System.out.println("4. Display all gift orders"); System.out.println("9. Quit");
String input = scanner.nextLine(); switch (input) { case "1": addGiftOrder(scanner); break; case "2": changeGiftOrder(scanner); break; case "3": displaySingleGiftOrder(scanner); break; case "4": displayAllGiftOrders(); break; case "9": System.out.println("Thank You for using the program. Enjoy Your Day!"); quit = true; break; } } }
//add gift public void addGiftOrder(Scanner scanner) { System.out.println("Please enter order number [FB or SB for type of gift and three integers]:"); String orderNumber = scanner.nextLine(); System.out.println("Enter size (e.g., S, M, L):"); String size = scanner.nextLine(); System.out.println("Enter number of fruits (e.g., 6 for S, 9 for M, 15 for L):"); int numFruits = scanner.nextInt(); System.out.println("Does basket have citrus fruits? (e.g., 1 for yes, 2 for no):"); int citrusFruits = scanner.nextInt(); System.out.println("Does basket have nuts? (e.g., 1 for yes, 2 for no):"); int nuts = scanner.nextInt(); scanner.nextLine();
Gift gift = new Gift(orderNumber, size, numFruits, citrusFruits, nuts); orderList.add(gift); System.out.println(" Thank You for Adding a Gift!"); }
//change gift public void changeGiftOrder(Scanner scanner) { if(orderList.size() == 0) { System.out.println("No gift has been ordered yet"); return; } System.out.println("Please enter order number to change:"); String orderNumber = scanner.nextLine(); for (Gift gift : orderList) { if (gift.getOrderNumber().equals(orderNumber)) { System.out.println("Enter size (e.g., S, M, L):"); String size = scanner.nextLine(); System.out.println("Enter number of fruits (e.g., 6 for S, 9 for M, 15 for L):"); int numFruits = scanner.nextInt(); System.out.println("Does basket have citrus fruits? (e.g., 1 for yes, 2 for no):"); int citrusFruits = scanner.nextInt(); System.out.println("Does basket have nuts? (e.g., 1 for yes, 2 for no):"); int nuts = scanner.nextInt();
scanner.nextLine();
gift.setSize(size); gift.setNumFruits(numFruits); gift.calculatePrice(size, numFruits, citrusFruits, nuts); } } }
//display single gift public void displaySingleGiftOrder(Scanner scanner) { if(orderList.size() == 0) { System.out.println("No gift has been ordered yet"); return; } System.out.println("Please enter order number to display:"); String orderNumber = scanner.nextLine(); for (Gift gift : orderList) { if (gift.getOrderNumber().equals(orderNumber)) { gift.display(); } } } //display all gifts public void displayAllGiftOrders() { for (Gift gift : orderList) { gift.display(); } } public static void main(String[] args) { CMIS242ASG2AfetseM driver = new CMIS242ASG2AfetseM(); driver.run(); } }
Understanding Business Ethics
ISBN: 9781506303239
3rd Edition
Authors: Peter A. Stanwick, Sarah D. Stanwick