Realization of KFC cash register system by java

  • 2021-07-26 07:50:28
  • OfStack

Refer to the information of KFC official website to simulate the cash register system of KFC fast food restaurant, and reasonably use C + + or Java or Python combined design mode (more than 2 kinds) to realize at least the following functions of the system:

1. Normal meal settlement and change.

2. Basic package settlement and change.

3. Use coupons to purchase meals for settlement and change.

4. You can participate in in-store activities in a fixed period of time (design by yourself or refer to official website information).

5. Simulate the function of printing receipts (write them to files).

Receipt information saving


class print{ 
 String s=""; // Save order information 
}

Food factory


interface FoodFactory{
 public Hamburger createHamburger(print s,int kind,int num); // To produce hamburgers 
 public Drink createDrink(print s,int kind,int num);  // Production of drinks 
 public Chicken createChicken(print s,int kind,int num);  // Production of chicken 
 public Sweetmeats createSweetmeats(print s,int kind,int num); // To produce dessert 
 public Snack createSnack(print s,int kind,int num);  // Production of snacks 
 public FrenchFries createFrenchFries(print s,int kind,int num); // Make French fries 
 public SetMeal createSetMeal(print s,int kind,int num);  // Production package 
}

Specific food factory


interface Hamburger{  
 public double price(int num);
}
interface Drink{
 public double price(int num);
 
}
interface Chicken{
 public double price(int num); 
}
interface Sweetmeats{
 public double price(int num);
}
interface Snack{
 public double price(int num); 
}
interface FrenchFries{
 public double price(int num); 
}
interface SetMeal{
 public double price(int num);
}

Specific food


// Hamburg 
// Orleans Baked Castle 
class Hamburger_1 implements Hamburger{
 public double price(int num)
 {
 System.out.println(" Orleans Baked Castle "+" "+"  Quantity: "+num+" "+" Total :"+(num*8));
 return num*8; // Return price 
 }
}
// Spicy chicken leg burger 
class Hamburger_2 implements Hamburger{ 
 public double price(int num)
 {
 System.out.println(" Spicy chicken leg burger "+" "+"  Quantity: "+num+" "+" Total :"+(num*9));
 return num*9;
 }
}
// Crispy chicken leg burger 
class Hamburger_3 implements Hamburger{ 
 public double price(int num)
 {
 System.out.println(" Crispy chicken leg burger "+" "+"  Quantity: "+num+" "+" Total :"+(num*10));
 return num*10;
 }
}
// Beverages 
// Orange juice 
class Drink_1 implements Drink{
 public double price(int num)
 {
 System.out.println(" Orange juice "+" "+"  Quantity: "+num+" "+" Total :"+(num*7));
 return num*7; // Return price 
 }
}
// Pepsi Cola 
class Drink_2 implements Drink{
 public double price(int num)
 {
 System.out.println(" Pepsi Cola "+" "+"  Quantity: "+num+" "+" Total :"+(num*8));
 return num*8;
 } 
}
// Budweiser beer 
class Drink_3 implements Drink{
 public double price(int num)
 {
 System.out.println(" Budweiser beer "+" "+"  Quantity: "+num+" "+" Total :"+(num*9));
 return num*9;
 }
}
// Chicken meat 
// Old Beijing chicken rolls 
class Chicken_1 implements Chicken{
 public double price(int num)
 {
 System.out.println(" Old Beijing chicken rolls "+" "+" Quantity: "+num+" "+" Total :"+(num*9));
 return num*9; // Return price 
 }
}
// Spicy chicken wings 
class Chicken_2 implements Chicken{
 public double price(int num)
 {
 System.out.println(" Spicy chicken wings "+" "+" Quantity: "+num+" "+" Total :"+(num*13));
 return num*13;
 }
}
// Chicken steak 
class Chicken_3 implements Chicken{
 public double price(int num)
 {
 System.out.println(" Chicken steak "+" "+" Quantity: "+num+" "+" Total :"+(num*10));
 return num*10;
 }
}
// Dessert 
// Original sundae 
class Sweetmeats_1 implements Sweetmeats{
 public double price(int num)
 {
 System.out.println(" Original sundae "+" "+" Quantity: "+num+" "+" Total :"+(num*9));
 return num*9; // Return price 
 }
}
// Portuguese egg tart 
class Sweetmeats_2 implements Sweetmeats{
 public double price(int num)
 {
 System.out.println(" Portuguese egg tart "+" "+" Quantity: "+num+" "+" Total :"+(num*12));
 return num*12;
 }
}
// Chocolate waffle 
class Sweetmeats_3 implements Sweetmeats{
 public double price(int num)
 {
 System.out.println(" Chocolate waffle "+" "+" Quantity: "+num+" "+" Total :"+(num*10));
 return num*10;
 }
}
// Snacks 
// Vegetable salad 
class Snack_1 implements Snack{
 public double price(int num)
 {
 System.out.println(" Vegetable salad "+" "+" Quantity: "+num+" "+" Total :"+(num*10));
 return num*10; // Return price 
 }
}
// Mashed potatoes 
class Snack_2 implements Snack{
 public double price(int num)
 {
 System.out.println(" Mashed potatoes "+" "+" Quantity: "+num+" "+" Total :"+(num*11));
 return num*11;
 } 
}
// Sweet Corn Bar 
class Snack_3 implements Snack{
 public double price(int num)
 {
 System.out.println(" Sweet Corn Bar "+" "+" Quantity: "+num+" "+" Total :"+(num*6));
 return num*6;
 }
}
// French fries 
// Corrugated overlord French fries 
class FrenchFries_1 implements FrenchFries{
 public double price(int num)
 {
 System.out.println(" Corrugated overlord French fries "+" "+" Quantity: "+num+" "+" Total :"+(num*12));
 return num*12; // Return price 
 } 
}
// Package 
// Package 1
class SetMeal_1 implements SetMeal{
 public double price(int num) {
 System.out.println(" Spicy chicken wings + Pepsi Cola "+" "+" Quantity: "+num+" "+" Total :"+(num*17));
 return num*17;
 }
}
// Package 2
class SetMeal_2 implements SetMeal{
 public double price(int num) {
 System.out.println(" Crispy chicken leg burger + Orange juice "+" "+" Quantity: "+num+" "+" Total :"+(num*15));
 return num*15;
 }
}
// Package 3
class SetMeal_3 implements SetMeal{
 public double price(int num) {
 System.out.println(" Spicy chicken leg burger + Budweiser beer + Corrugated overlord French fries "+" "+" Quantity: "+num+" "+" Total :"+(num*25));
 return num*25;
 }
}

Production of specific food


// Production of specific food 
class createFood implements FoodFactory{
 print p=new print();
 public Hamburger createHamburger(print s,int kind,int num) {
 if(kind==1){
  s.s=s.s+"\n"+" Orleans burger   Unit price :"+"8"+"  Quantity :"+num+"  Total :"+(num*8); // Save information to s Medium 
  return new Hamburger_1();}
 else if(kind==2) {
  s.s=s.s+"\n"+" Spicy chicken leg burger   Unit price :"+"9"+"  Quantity :"+num+"  Total :"+(num*9);
  return new Hamburger_2();}
 else if(kind==3) {
  s.s=s.s+"\n"+" Crispy chicken leg burger   Unit price :"+"10"+"  Quantity :"+num+"  Total :"+(num*10);
  return new Hamburger_3();}
 else return null;
 }
 public Drink createDrink(print s,int kind,int num) {
 if(kind==1) {
  s.s=s.s+"\n"+" Orange juice   Unit price :"+"7"+"  Quantity :"+num+"  Total :"+(num*7); // Save information to s Medium 
  return new Drink_1();}
 else if(kind==2) {
  s.s=s.s+"\n"+" Pepsi Cola   Unit price :"+"8"+"  Quantity :"+num+"  Total :"+(num*8);
  return new Drink_2();}
 else if(kind==3) {
  s.s=s.s+"\n"+" Budweiser beer   Unit price :"+"9"+"  Quantity :"+num+"  Total :"+(num*9);
  return new Drink_3();}
 else return null;
 }
 public Chicken createChicken(print s,int kind,int num) {
 if(kind==1) {
  s.s=s.s+"\n"+" Old Beijing chicken rolls   Unit price: "+"9"+"  Quantity "+num+"  Total :"+(num*9); // Save information to s Medium 
  return new Chicken_1();}
 else if(kind==2) {
  s.s=s.s+"\n"+" Spicy chicken wings   Unit price: "+"13"+"  Quantity "+num+"  Total :"+(num*13);
  return new Chicken_2();}
 else if(kind==3) {
  s.s=s.s+"\n"+" Chicken steak   Unit price: "+"10"+"  Quantity "+num+"  Total :"+(num*10);
  return new Chicken_3();}
 else return null;
 } 
 public Sweetmeats createSweetmeats(print s,int kind,int num) {
 if(kind==1) {
  s.s=s.s+"\n"+" Original sundae   Unit price: "+"9"+"  Quantity "+num+"  Total :"+(num*9); // Save information to s Medium 
  return new Sweetmeats_1();}
 else if(kind==2) {
  s.s=s.s+"\n"+" Portuguese egg tart   Unit price: "+"12"+"  Quantity "+num+"  Total :"+(num*12);
  return new Sweetmeats_2();}
 else if(kind==3) {
  s.s=s.s+"\n"+" Chocolate waffle   Unit price: "+"10"+"  Quantity "+num+"  Total :"+(num*10);
  return new Sweetmeats_3();}
 else return null;
 }
 public Snack createSnack(print s,int kind,int num) {
 if(kind==1) {
  s.s=s.s+"\n"+" Vegetable salad   Unit price: "+"10"+"  Quantity "+num+"  Total :"+(num*10); // Save information to s Medium 
  return new Snack_1();}
 else if(kind==2) {
  s.s=s.s+"\n"+" Mashed potatoes   Unit price: "+"11"+"  Quantity "+num+"  Total :"+(num*11);
  return new Snack_2();}
 else if(kind==3) {
  s.s=s.s+"\n"+" Sweet Corn Bar   Unit price: "+"6"+"  Quantity "+num+"  Total :"+(num*6);
  return new Snack_3();}
 else return null;
 }
 public FrenchFries createFrenchFries(print s,int kind,int num){
 if(kind==1) {
  s.s=s.s+"\n"+" Corrugated overlord French fries   Unit price: "+"12"+"  Quantity "+num+"  Total :"+(num*12); // Save information to s Medium 
  return new FrenchFries_1();}
 else return null;
 }
 public SetMeal createSetMeal(print s,int kind, int num) {
 if(kind==1) {
  s.s=s.s+"\n"+" Package 1  Unit price: "+"17"+"  Quantity "+num+"  Total :"+(num*17); // Save information to s Medium 
  return new SetMeal_1();}
 else if(kind==2) {
  s.s=s.s+"\n"+" Package 2  Unit price: "+"15"+"  Quantity "+num+"  Total :"+(num*15);
  return new SetMeal_2();}
 else if(kind==3) {
  s.s=s.s+"\n"+" Package 3  Unit price: "+"25"+"  Quantity "+num+"  Total :"+(num*25);
  return new SetMeal_3();}
 else return null;
 }
}

Order food and return the price


class Price{
 public FoodFactory create;
 // Constructor passes the abstract factory into the 
 public Price(FoodFactory create) {
 this.create=create;
 }
 public double orderHamburger(print s,int kind,int num) {
 Hamburger hamburger=create.createHamburger(s,kind, num);
 return hamburger.price(num);
 }
 public double orderDrink(print s,int kind,int num) {
 Drink drink=create.createDrink(s,kind, num);
 return drink.price(num);
 }
 public double orderChicken(print s,int kind,int num) {
 Chicken chicken=create.createChicken(s,kind, num);
 return chicken.price(num);
 }
 public double orderSweetmeats(print s,int kind,int num) {
 Sweetmeats sweetmeats=create.createSweetmeats(s,kind, num);
 return sweetmeats.price(num);
 }
 public double orderSnack(print s,int kind,int num) {
 Snack snack=create.createSnack(s,kind, num);
 return snack.price(num);
 }
 public double orderFrenchFries(print s,int kind,int num) {
 FrenchFries frenchFries=create.createFrenchFries(s,kind, num);
 return frenchFries.price(num);
 }
 public double orderSetMeal(print s,int kind,int num) {
 SetMeal setMeal=create.createSetMeal(s,kind, num);
 return setMeal.price(num);
 }
}

Related articles: