summaryrefslogtreecommitdiff
path: root/src/main/java/ca/mokhan/assignment1/BonusOnSavings.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/ca/mokhan/assignment1/BonusOnSavings.java')
-rw-r--r--src/main/java/ca/mokhan/assignment1/BonusOnSavings.java36
1 files changed, 0 insertions, 36 deletions
diff --git a/src/main/java/ca/mokhan/assignment1/BonusOnSavings.java b/src/main/java/ca/mokhan/assignment1/BonusOnSavings.java
deleted file mode 100644
index 41090ec..0000000
--- a/src/main/java/ca/mokhan/assignment1/BonusOnSavings.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package ca.mokhan.assignment1;
-
-public class BonusOnSavings {
- double annualRate = 0.0;
- double quarterlyRate = 0.0;
-
- public BonusOnSavings() {
- this(0.03, 0.05);
- }
-
- public BonusOnSavings(double quarterlyRate, double annualRate) {
- this.quarterlyRate = quarterlyRate;
- this.annualRate = annualRate;
- }
-
- public double computeBonus(double monthlyCommitment, double q1, double q2, double q3, double q4) {
- double quarterlyTarget = monthlyCommitment * 3;
- double annualTarget = monthlyCommitment * 12;
-
- return this.quarterlyBonus(quarterlyTarget, q1)
- + this.quarterlyBonus(quarterlyTarget, q2)
- + this.quarterlyBonus(quarterlyTarget, q3)
- + this.quarterlyBonus(quarterlyTarget, q4)
- + this.annualBonus(annualTarget, q1 + q2 + q3 + q4);
- }
-
- private double quarterlyBonus(double target, double actual) {
- return (actual >= target) ? actual * this.quarterlyRate : 0.0;
- }
-
- private double annualBonus(double target, double actual) {
- if (actual < target) return 0.0;
-
- return (actual * this.annualRate) + ((actual - target) * 0.25);
- }
-}