Skip to content

Commit

Permalink
Merge pull request #10 from IDATT2003-gruppe06/main
Browse files Browse the repository at this point in the history
Filled out remaining functionality in SaleCalculator
  • Loading branch information
nolydvo authored Mar 4, 2026
2 parents fe0e60e + cac776a commit a6ae521
Showing 1 changed file with 24 additions and 1 deletion.
25 changes: 24 additions & 1 deletion src/main/java/temppackage/calculators/SaleCalculator.java
Original file line number Diff line number Diff line change
@@ -1,14 +1,37 @@
package temppackage.calculators;

import java.math.BigDecimal;
import java.math.RoundingMode;

import temppackage.Share;

public class SaleCalculator {
public class SaleCalculator implements TransactionCalculator{
BigDecimal purchasePrice;
BigDecimal salesPrice;
BigDecimal quantity;
public SaleCalculator(Share share) {
super();
this.purchasePrice = share.getPurchasePrice();
}
@Override
public BigDecimal calculateGross() {
return salesPrice.multiply(quantity);
}

@Override
public BigDecimal calculateComission() {
return this.calculateGross().divide(new BigDecimal("100"), RoundingMode.HALF_UP);
}

@Override
public BigDecimal calculateTax() {
BigDecimal purchaseCosts = this.purchasePrice.multiply(this.quantity);
BigDecimal earnings = this.calculateGross().subtract(this.calculateComission()).subtract(purchaseCosts);
return earnings.multiply(new BigDecimal("30")).divide(new BigDecimal("100"), RoundingMode.HALF_UP);
}

@Override
public BigDecimal calculateTotal() {
return this.calculateGross().subtract(this.calculateComission()).subtract(this.calculateTax());
}
}

0 comments on commit a6ae521

Please sign in to comment.