public ItemReceiptEntry calculateTax(Item item) { ValidationHelper.validateForNull(item, "item"); BigDecimal totalTax = new BigDecimal("0.0"); if (item.getItemType().getIsSalesTaxable()) { totalTax = totalTax.add(calculateSalesTax(item)); } if (item.getItemOrigin().getIsImportDutyTaxable()) { totalTax = totalTax.add(calculateImportDuty(item)); } BigDecimal roundedUpTax = roundUptoNearestPointFive(totalTax); return new ItemReceiptEntry(item, roundedUpTax); }
private BigDecimal calculateImportDuty(Item item) { return item.getItemPrice().getUnitValue().multiply(IMPORT_DUTY_RATE); }
private BigDecimal calculateSalesTax(Item item) { return item.getItemPrice().getUnitValue().multiply(SALES_TAX_RATE); }