/** * 计算获取分摊优惠金额 计算公式:实付金额所占百分比 * 店铺优惠金额 * * @return */ private Money getItemMjzDiscountFee( Money curPayableFee, Money totalPayableFee, Money discountFee) { Money partMjzDiscountFee = Money.valueOf(0); if (curPayableFee == null || totalPayableFee == null || discountFee == null) { return partMjzDiscountFee; } // 获得当前实付金额所占百分比 BigDecimal paymentPercentBig = getPaymentPercent(curPayableFee, totalPayableFee); // 计算店铺优惠金额的分摊金额 BigDecimal partMjzDiscountFeeBig = paymentPercentBig.multiply(new BigDecimal(discountFee.getAmount())); // 转为Money对象 partMjzDiscountFee = Money.valueOf(partMjzDiscountFeeBig.doubleValue()); return partMjzDiscountFee; }