| | |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.ruoyi.member.domain.pojo.coupon.Coupon; |
| | | import com.ruoyi.member.domain.pojo.coupon.CouponTotal; |
| | | import com.ruoyi.member.domain.pojo.coupon.MemberCouponRecord; |
| | | import com.ruoyi.member.mapper.coupon.MemberCouponRecordMapper; |
| | | import com.ruoyi.member.service.coupon.CouponTotalService; |
| | | import com.ruoyi.member.service.coupon.MemberCouponRecordService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | /** |
| | | * <p> |
| | |
| | | @Service |
| | | public class MemberCouponRecordServiceImpl extends ServiceImpl<MemberCouponRecordMapper, MemberCouponRecord> implements MemberCouponRecordService { |
| | | |
| | | |
| | | @Resource |
| | | private CouponTotalService couponTotalService; |
| | | |
| | | /** |
| | | * @description 获取用户优惠券领取记录 |
| | |
| | | public void updateMemberCouponRecord(Coupon coupon, Long userId, Integer number) { |
| | | // 根据优惠券ID和用户ID获取会员优惠券记录 |
| | | MemberCouponRecord memberCouponRecord = this.getByCouponIdAndUserId(coupon.getCouponId(), userId); |
| | | CouponTotal couponTotal = couponTotalService.getById(coupon.getCouponId()); |
| | | if (memberCouponRecord != null) { |
| | | // 如果会员优惠券记录存在,则更新数量 |
| | | memberCouponRecord.setNum(memberCouponRecord.getNum() + number); |
| | |
| | | } else { |
| | | memberCouponRecord.setLimitFlag(0); |
| | | } |
| | | couponTotal.setSendUserCount(couponTotal.getSendUserCount()+1); |
| | | } |
| | | // 保存或更新会员优惠券记录 |
| | | this.saveOrUpdate(memberCouponRecord); |
| | | couponTotal.setSendCount(couponTotal.getSendCount()+number); |
| | | couponTotalService.saveOrUpdate(couponTotal); |
| | | } |
| | | } |