diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/TbPayServiceImpl.java b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/TbPayServiceImpl.java index 6906d971..90640034 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/TbPayServiceImpl.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/service/impl/TbPayServiceImpl.java @@ -134,6 +134,7 @@ public class TbPayServiceImpl implements TbPayService { body.append(cashierCart.getName()); } + BigDecimal payMount = orderInfo.getOrderAmount().multiply(BigDecimal.valueOf(scanPayDTO.getDiscount()).setScale(2, RoundingMode.HALF_UP)); TbMerchantThirdApply thirdApply = merchantThirdApplyRepository.getById(Integer.valueOf(orderInfo.getMerchantId())); if (ObjectUtil.isEmpty(thirdApply) || ObjectUtil.isNull(thirdApply)) { @@ -173,7 +174,7 @@ public class TbPayServiceImpl implements TbPayService { if (ObjectUtil.isEmpty(payment) || payment == null) { payment = new TbOrderPayment(); payment.setPayTypeId("ysk"); - payment.setAmount(orderInfo.getOrderAmount().doubleValue()); + payment.setAmount(payMount.doubleValue()); payment.setPaidAmount(orderInfo.getPayAmount().doubleValue()); payment.setHasRefundAmount((double) 0); payment.setPayName(payName); @@ -193,7 +194,7 @@ public class TbPayServiceImpl implements TbPayService { } - orderInfo.setPayAmount(orderInfo.getOrderAmount()); + orderInfo.setPayAmount(payMount); orderInfo.setPayType(qpay); orderInfo.setUpdatedAt(System.currentTimeMillis()); orderInfoMapper.update(orderInfo, new LambdaUpdateWrapper()