From 2dda6304029c95e171b2f9e32406eb4600d77ebd Mon Sep 17 00:00:00 2001 From: 44323 <443237572@qq.com> Date: 星期三, 01 十一月 2023 18:57:58 +0800 Subject: [PATCH] 支付会员送券功能补充 运营商权限bug修改 --- cloud-server-account/src/main/java/com/dsh/account/service/impl/VipPaymentServiceImpl.java | 22 +++++++++++++++++----- 1 files changed, 17 insertions(+), 5 deletions(-) diff --git a/cloud-server-account/src/main/java/com/dsh/account/service/impl/VipPaymentServiceImpl.java b/cloud-server-account/src/main/java/com/dsh/account/service/impl/VipPaymentServiceImpl.java index 932f0df..f03a65d 100644 --- a/cloud-server-account/src/main/java/com/dsh/account/service/impl/VipPaymentServiceImpl.java +++ b/cloud-server-account/src/main/java/com/dsh/account/service/impl/VipPaymentServiceImpl.java @@ -4,16 +4,21 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.dsh.account.entity.TAppUser; import com.dsh.account.entity.VipPayment; +import com.dsh.account.feignclient.activity.UserConponClient; import com.dsh.account.mapper.VipPaymentMapper; +import com.dsh.account.model.IncomeQuery; import com.dsh.account.service.IVipPaymentService; import com.dsh.account.service.TAppUserService; import com.dsh.account.util.PayMoneyUtil; import com.dsh.account.util.ResultUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.StringUtils; +import java.math.BigDecimal; import java.util.Calendar; import java.util.Date; +import java.util.List; import java.util.Map; /** @@ -29,8 +34,6 @@ @Autowired private PayMoneyUtil payMoneyUtil; - - /** * 购买年度会员 * @param uid @@ -41,7 +44,7 @@ public ResultUtil addVipPayment(Integer uid, Integer payType) throws Exception { VipPayment vipPayment = new VipPayment(); vipPayment.setCode(VipPayment.CODE()); - vipPayment.setAmount(199D); + vipPayment.setAmount(0.01D); vipPayment.setAppUserId(uid); vipPayment.setInsertTime(new Date()); vipPayment.setPayStatus(1); @@ -108,7 +111,6 @@ vipPayment1.setPayTime(new Date()); vipPayment1.setOrderNumber(transaction_id); VipPaymentServiceImpl.this.updateById(vipPayment1); - TAppUser appUser = appUserService.getById(vipPayment1.getAppUserId()); Date vipEndTime = appUser.getVipEndTime(); if(null == vipEndTime){ @@ -117,8 +119,11 @@ Calendar calendar = Calendar.getInstance(); calendar.setTime(vipEndTime); calendar.set(Calendar.YEAR, calendar.get(Calendar.YEAR) + 1); + appUser.setIsVip(1); appUser.setVipEndTime(calendar.getTime()); appUserService.updateById(appUser); + // 注册会员送券 先判断是否有注册送券类型的优惠券 判断优惠券状态 审核是否通过 是否删除 是否在有效期内 是否领取数量达上限 + userConponClient.queryCouponByUser(appUser.getId()); return; } if("USERPAYING".equals(trade_state) || "ACCEPT".equals(trade_state)){ @@ -202,6 +207,8 @@ calendar.set(Calendar.YEAR, calendar.get(Calendar.YEAR) + 1); appUser.setVipEndTime(calendar.getTime()); appUserService.updateById(appUser); + // 注册会员送券 先判断是否有注册送券类型的优惠券 判断优惠券状态 审核是否通过 是否删除 是否在有效期内 是否领取数量达上限 + userConponClient.queryCouponByUser(appUser.getId()); return; } if("WAIT_BUYER_PAY".equals(tradeStatus)){ @@ -228,6 +235,8 @@ + @Autowired + private UserConponClient userConponClient; /** * 购买年度会员支付回调处理 * @param code @@ -235,7 +244,7 @@ * @throws Exception */ @Override - public ResultUtil addVipPaymentCallback(String code, String orderNumber) throws Exception { + public synchronized ResultUtil addVipPaymentCallback(String code, String orderNumber) throws Exception { VipPayment vipPayment1 = VipPaymentServiceImpl.this.getOne(new QueryWrapper<VipPayment>().eq("code", code)); if(vipPayment1.getPayStatus() != 1){ return ResultUtil.success(); @@ -255,6 +264,9 @@ calendar.set(Calendar.YEAR, calendar.get(Calendar.YEAR) + 1); appUser.setVipEndTime(calendar.getTime()); appUserService.updateById(appUser); + return ResultUtil.success(); } + + } -- Gitblit v1.7.1