fix: 选择会员保存会员相关信息
This commit is contained in:
@@ -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);
|
||||
|
||||
|
||||
@@ -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<TbShopUser>()
|
||||
.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;
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user