From 7ca9ce3620c7f5c4ca02e3346271542c8d40c746 Mon Sep 17 00:00:00 2001 From: Vova Date: Mon, 25 Feb 2019 19:54:45 +0200 Subject: [PATCH] Use override --- .gitignore | 1 + src/checkout/AnyGoodsOffer.java | 3 ++- src/checkout/CheckoutService.java | 11 ----------- src/checkout/FactorByCategoryOffer.java | 3 ++- 4 files changed, 5 insertions(+), 13 deletions(-) diff --git a/.gitignore b/.gitignore index 8b054a0..d6c53af 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ .idea/vcs.xml .idea/workspace.xml +.idea/misc.xml out diff --git a/src/checkout/AnyGoodsOffer.java b/src/checkout/AnyGoodsOffer.java index 8b11348..345995d 100644 --- a/src/checkout/AnyGoodsOffer.java +++ b/src/checkout/AnyGoodsOffer.java @@ -11,6 +11,7 @@ public AnyGoodsOffer(int totalCost, int points) { @Override public void apply(Check check) { - + if (this.totalCost <= check.getTotalCost()) + check.addPoints(this.points); } } diff --git a/src/checkout/CheckoutService.java b/src/checkout/CheckoutService.java index 3ac7cbb..72e9a53 100644 --- a/src/checkout/CheckoutService.java +++ b/src/checkout/CheckoutService.java @@ -23,16 +23,5 @@ public Check closeCheck() { public void useOffer(Offer offer) { offer.apply(check); - if (offer instanceof FactorByCategoryOffer) { - FactorByCategoryOffer fbOffer = (FactorByCategoryOffer) offer; - int points = check.getCostByCategory(fbOffer.category); - check.addPoints(points * (fbOffer.factor - 1)); - } else { - if (offer instanceof AnyGoodsOffer) { - AnyGoodsOffer agOffer = (AnyGoodsOffer) offer; - if (agOffer.totalCost <= check.getTotalCost()) - check.addPoints(agOffer.points); - } - } } } diff --git a/src/checkout/FactorByCategoryOffer.java b/src/checkout/FactorByCategoryOffer.java index fee57f0..0f90070 100644 --- a/src/checkout/FactorByCategoryOffer.java +++ b/src/checkout/FactorByCategoryOffer.java @@ -11,6 +11,7 @@ public FactorByCategoryOffer(Category category, int factor) { @Override public void apply(Check check) { - + int points = check.getCostByCategory(this.category); + check.addPoints(points * (this.factor - 1)); } }