| | |
| | | @Override |
| | | @CacheEvict(key = "#memberId") |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public void receiveCoupon(String couponId, String memberId, String memberName) { |
| | | public MemberCoupon receiveCoupon(String couponId, String memberId, String memberName) { |
| | | Coupon coupon = couponService.getById(couponId); |
| | | if (coupon != null) { |
| | | this.receiverCoupon(couponId, memberId, memberName, coupon); |
| | | return this.receiverCoupon(couponId, memberId, memberName, coupon); |
| | | } else { |
| | | throw new ServiceException(ResultCode.COUPON_NOT_EXIST); |
| | | } |
| | |
| | | * @return 会员优惠券列表 |
| | | */ |
| | | @Override |
| | | @Cacheable(key = "#memberId") |
| | | // @Cacheable(key = "#memberId") |
| | | public List<MemberCoupon> getMemberCoupons(String memberId) { |
| | | MemberCouponSearchParams searchParams = new MemberCouponSearchParams(); |
| | | searchParams.setMemberId(Objects.requireNonNull(UserContext.getCurrentUser()).getId()); |
| | |
| | | return this.update(updateWrapper); |
| | | } |
| | | |
| | | private void receiverCoupon(String couponId, String memberId, String memberName, Coupon coupon) { |
| | | private MemberCoupon receiverCoupon(String couponId, String memberId, String memberName, Coupon coupon) { |
| | | this.checkCouponLimit(couponId, memberId); |
| | | MemberCoupon memberCoupon = new MemberCoupon(coupon); |
| | | memberCoupon.setMemberId(memberId); |
| | |
| | | memberCoupon.setPlatformFlag((PromotionTools.PLATFORM_ID).equals(coupon.getStoreId())); |
| | | this.save(memberCoupon); |
| | | couponService.receiveCoupon(couponId, 1); |
| | | return memberCoupon; |
| | | } |
| | | } |