diff --git a/src/main/java/com/yn/bftl/thirdparty/modules/business/service/impl/SubaccountServiceImpl.java b/src/main/java/com/yn/bftl/thirdparty/modules/business/service/impl/SubaccountServiceImpl.java index dbdad0a..178463f 100644 --- a/src/main/java/com/yn/bftl/thirdparty/modules/business/service/impl/SubaccountServiceImpl.java +++ b/src/main/java/com/yn/bftl/thirdparty/modules/business/service/impl/SubaccountServiceImpl.java @@ -1554,7 +1554,7 @@ } if (platformServiceFeeRatio.compareTo(BigDecimal.ZERO) == 1) { // statementamount - platformServiceFee = statement.getOrders().getAmount().add(refundAmount).multiply(platformServiceFeeRatio).setScale(2, BigDecimal.ROUND_UP); + platformServiceFee = statement.getOrders().getAmount().add(refundAmount).multiply(platformServiceFeeRatio).setScale(2, BigDecimal.ROUND_HALF_UP); if (platformServiceFee.compareTo(BigDecimal.ZERO) == 1) { // 生成平台服务费分账单 return generatePlatformSubaccount(platformServiceFeeRatio, platformServiceFee, statement.getOrders(), statement.getShipping(), statement.getCompany()); @@ -2518,7 +2518,7 @@ OrderItemFeeRatio orderItemFeeRatio = orderFeeRatio.getOrderItemFeeRatio().stream().filter(filterOrderItemFeeRatio -> filterOrderItemFeeRatio.getOrderItem().getBrandId().equals(chinaumsPayment.getBrandId())).findFirst().orElse(null); if (orderItemFeeRatio != null && orderItemFeeRatio.getBrandAuthCostServiceCostRatio().compareTo(BigDecimal.ZERO) == 1) { // 计算平台服务费 - platformServiceFee = brandAuthFee.subtract(brandAuthFeeRefundAmount).multiply(orderItemFeeRatio.getBrandAuthCostServiceCostRatio()).setScale(2, BigDecimal.ROUND_UP); + platformServiceFee = brandAuthFee.subtract(brandAuthFeeRefundAmount).multiply(orderItemFeeRatio.getBrandAuthCostServiceCostRatio()).setScale(2, BigDecimal.ROUND_HALF_UP); // 拼接平台服务费分账 if (platformServiceFee.compareTo(BigDecimal.ZERO) == 1) { platformSubaccount = generatePlatformSubaccount(orderItemFeeRatio.getBrandAuthCostServiceCostRatio(), platformServiceFee, order, null, company);