diff --git a/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/PayServiceImpl.java b/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/PayServiceImpl.java index 35d27646..e30dcefc 100644 --- a/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/PayServiceImpl.java +++ b/cash-service/order-service/src/main/java/com/czg/service/order/service/impl/PayServiceImpl.java @@ -432,6 +432,8 @@ public class PayServiceImpl implements PayService { @Override public CzgResult> recharge(String clientIP, VipPayParamDTO rechargeDTO, Long shopUserId) { + boolean isFree = checkPayVip(rechargeDTO); + ShopUser shopUser = shopUserService.getOne(new QueryWrapper().eq(ShopUser::getSourceShopId, rechargeDTO.getShopId()) .eq(ShopUser::getId, shopUserId)); AssertUtil.isNull(shopUser, "充值失败 该店铺用户不存在"); @@ -444,8 +446,8 @@ public class PayServiceImpl implements PayService { BigDecimal amount = shopRechargeService.checkRecharge(mainShopId, rechargeDTO.getShopId(), shopUser.getUserId(), rechargeDTO.getRechargeDetailId(), rechargeDTO.getAmount()); String payOrderNo = rechargeDTO.getPlatformType() + IdUtil.getSnowflakeNextId(); - initOrderPayment(new OrderPayment(rechargeDTO.getShopId(), shopUser.getId(), "memberIn", payOrderNo, - "", amount, rechargeDTO.getRechargeDetailId())); + initOrderPayment(new OrderPayment(rechargeDTO.getShopId(), shopUser.getId(), isFree ? "free" : "memberIn", payOrderNo, + "", amount, isFree ? rechargeDTO.getOrderId() : rechargeDTO.getRechargeDetailId())); return ltPay(rechargeDTO.getShopId(), rechargeDTO.getPayType(), new CzgLtPayReq(payOrderNo, amount.multiply(MONEY_RATE).longValue(), rechargeDTO.getPayType(), "会员充值", "wechatPay".equals(rechargeDTO.getPayType()) ? userInfo.getWechatOpenId() : userInfo.getAlipayOpenId(), clientIP, rechargeDTO.getReturnUrl(), rechargeDTO.getBuyerRemark(), "")); }