diff --git a/eladmin-system/src/main/java/cn/ysk/cashier/service/TbPayService.java b/eladmin-system/src/main/java/cn/ysk/cashier/service/TbPayService.java index e2dfd181..6fc11b4f 100644 --- a/eladmin-system/src/main/java/cn/ysk/cashier/service/TbPayService.java +++ b/eladmin-system/src/main/java/cn/ysk/cashier/service/TbPayService.java @@ -3,6 +3,7 @@ package cn.ysk.cashier.service; import cn.ysk.cashier.dto.ScanPayDTO; import cn.ysk.cashier.dto.shoptable.PayDTO; import cn.ysk.cashier.pojo.order.TbOrderInfo; +import cn.ysk.cashier.pojo.shop.TbShopUser; import javax.validation.constraints.Max; import javax.validation.constraints.Min; @@ -12,7 +13,7 @@ import java.math.BigDecimal; public interface TbPayService { TbOrderInfo scanPay(Integer shopId, String code, Integer merchantId, Integer memberId, BigDecimal payMount, TbOrderInfo orderInfo); - void vipPay(BigDecimal payMount, Integer userId, Integer vipUserId); + TbShopUser vipPay(BigDecimal payMount, Integer vipUserId); TbOrderInfo cashPay(PayDTO payDTO); 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 c1db2f3d..3bed9280 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 @@ -306,13 +306,12 @@ public class TbPayServiceImpl implements TbPayService { } @Override - public void vipPay(BigDecimal payMount, Integer userId, Integer vipUserId) { + public TbShopUser vipPay(BigDecimal payMount, Integer vipUserId) { // 扣减会员余额 TbShopUser shopUser = shopUserMapper.selectOne(new LambdaUpdateWrapper() .eq(TbShopUser::getStatus, 1) - .eq(TbShopUser::getId, vipUserId) - .eq(TbShopUser::getUserId, userId)); + .eq(TbShopUser::getId, vipUserId)); if (shopUser == null) { throw new BadRequestException("用户不存在或已被禁用"); @@ -333,6 +332,8 @@ public class TbPayServiceImpl implements TbPayService { userFlow.setType("-"); shopUserFlowMapper.insert(userFlow); + return shopUser; + } 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 c7241c53..0dde792c 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 @@ -1619,7 +1619,9 @@ public class TbShopTableServiceImpl implements TbShopTableService { if (payDTO.getVipUserId() != null) { orderInfo.setUserId(String.valueOf(payDTO.getVipUserId())); } - tbPayServiceImpl.vipPay(finalAmount, Integer.valueOf(orderInfo.getUserId()), payDTO.getVipUserId()); + TbShopUser shopUser = tbPayServiceImpl.vipPay(finalAmount, payDTO.getVipUserId()); + orderInfo.setMemberId(String.valueOf(shopUser.getId())); + orderInfo.setUserId(shopUser.getUserId()); orderInfo.setPayOrderNo("vipPay".concat(SnowFlakeUtil.generateOrderNo())); orderInfo.setPayType("deposit"); break;