diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java index f0456786..0ed526f4 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/shopimpl/TbShopTableServiceImpl.java @@ -2817,7 +2817,7 @@ public class TbShopTableServiceImpl implements TbShopTableService { // 计算当前商品占比 BigDecimal ratio = calcDetailRatio(orderDetail, returnNum); currentDetailAMount = orderDetail.getPriceAmount().divide(orderDetail.getNum(), 8, RoundingMode.HALF_UP) - .multiply(returnNum).setScale(2, RoundingMode.HALF_UP); + .multiply(returnNum).setScale(2, RoundingMode.DOWN); if (oldOrderInfo.getRefundAmount() == null) { oldOrderInfo.setRefundAmount(BigDecimal.ZERO); } @@ -2905,8 +2905,8 @@ public class TbShopTableServiceImpl implements TbShopTableService { } } - return orderDetail.getPriceAmount().divide(totalAmount, 8, RoundingMode.HALF_UP) - .divide(orderDetail.getNum(), 8, RoundingMode.HALF_UP).multiply(returnNum).setScale(2, RoundingMode.HALF_UP); + return orderDetail.getPriceAmount().divide(totalAmount, 10, RoundingMode.DOWN) + .divide(orderDetail.getNum(), 10, RoundingMode.DOWN).multiply(returnNum).setScale(2, RoundingMode.DOWN); } private void updateStockAndRecord(List orderDetailList) {