订单页优惠券查询

邀请页 是否可邀请 是否可领取
This commit is contained in:
2024-11-13 15:48:45 +08:00
parent b30d618e47
commit 99e9aae70a
4 changed files with 37 additions and 38 deletions

View File

@@ -3,6 +3,7 @@ package com.chaozhanggui.system.cashierservice.entity.dto;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
@Data @Data
public class CouponDto { public class CouponDto {

View File

@@ -87,7 +87,7 @@ public class TbShopCouponServiceImpl implements TbShopCouponService {
boolean isUse = true; boolean isUse = true;
TbShopCoupon tbShopCoupon = couponMapper.queryById(tbUserCouponVo.getCouponId()); TbShopCoupon tbShopCoupon = couponMapper.queryById(tbUserCouponVo.getCouponId());
StringBuilder useRestrictions = new StringBuilder("每天 "); StringBuilder useRestrictions = new StringBuilder("每天 ");
if (tbShopCoupon.getType().equals(1)) { if (amount != null && tbShopCoupon.getType().equals(1)) {
if (amount.compareTo(tbShopCoupon.getFullAmount()) < 0) { if (amount.compareTo(tbShopCoupon.getFullAmount()) < 0) {
isUse = false; isUse = false;
} }
@@ -125,10 +125,6 @@ public class TbShopCouponServiceImpl implements TbShopCouponService {
if (param.getOrderId() != null) { if (param.getOrderId() != null) {
TbShopUser tbShopUser = shopUserMapper.selectByUserIdAndShopId(param.getUserId().toString(), param.getShopId().toString()); TbShopUser tbShopUser = shopUserMapper.selectByUserIdAndShopId(param.getUserId().toString(), param.getShopId().toString());
TbOrderInfo tbOrderInfo = orderInfoMapper.selectByPrimaryKey(param.getOrderId());
List<TbOrderDetail> tbOrderDetails = orderDetailMapper.selectAllByOrderId(param.getOrderId());
Set<Integer> pros = tbOrderDetails.stream().map(TbOrderDetail::getProductId).collect(Collectors.toSet());
if (CollectionUtil.isNotEmpty(tbOrderDetails)) {
List<TbUserCouponVo> tbUserCouponVos = inRecordMapper.queryByVipIdAndShopId(Arrays.asList(Integer.valueOf(tbShopUser.getId())), param.getShopId()); List<TbUserCouponVo> tbUserCouponVos = inRecordMapper.queryByVipIdAndShopId(Arrays.asList(Integer.valueOf(tbShopUser.getId())), param.getShopId());
if (CollectionUtil.isNotEmpty(tbUserCouponVos)) { if (CollectionUtil.isNotEmpty(tbUserCouponVos)) {
String week = DateUtil.dayOfWeekEnum(new Date()).toChinese(""); String week = DateUtil.dayOfWeekEnum(new Date()).toChinese("");
@@ -139,22 +135,16 @@ public class TbShopCouponServiceImpl implements TbShopCouponService {
Map<Integer, JsonObject> coupons = new HashMap<>(); Map<Integer, JsonObject> coupons = new HashMap<>();
for (TbUserCouponVo tbUserCouponVo : tbUserCouponVos) { for (TbUserCouponVo tbUserCouponVo : tbUserCouponVos) {
if (!coupons.containsKey(tbUserCouponVo.getCouponId())) { if (!coupons.containsKey(tbUserCouponVo.getCouponId())) {
setCouponInfo(coupons, tbUserCouponVo, tbOrderInfo.getAmount(), week, now, formatter); setCouponInfo(coupons, tbUserCouponVo, null, week ,now, formatter);
} }
JsonObject couponJson = coupons.get(tbUserCouponVo.getCouponId()); JsonObject couponJson = coupons.get(tbUserCouponVo.getCouponId());
tbUserCouponVo.setUseRestrictions(couponJson.get("useRestrictions").toString()); tbUserCouponVo.setUseRestrictions(couponJson.get("useRestrictions").toString());
if (tbUserCouponVo.getType().equals(1)) {
tbUserCouponVo.setUse(couponJson.get("isUse").getAsBoolean()); tbUserCouponVo.setUse(couponJson.get("isUse").getAsBoolean());
} else if (tbUserCouponVo.getType().equals(2) && couponJson.get("isUse").getAsBoolean()) {
if (!pros.contains(tbUserCouponVo.getProId())) {
tbUserCouponVo.setUse(false);
}
}
} }
tbUserCouponVos.sort(Comparator.comparing(TbUserCouponVo::isUse).reversed().thenComparing(TbUserCouponVo::getExpireTime)); tbUserCouponVos.sort(Comparator.comparing(TbUserCouponVo::isUse).reversed().thenComparing(TbUserCouponVo::getExpireTime));
return new Result(CodeEnum.SUCCESS, tbUserCouponVos); return new Result(CodeEnum.SUCCESS, tbUserCouponVos);
} }
}
} else { } else {
List<TbShopUser> tbShopUser = shopUserMapper.selectAllByUserId(param.getUserId().toString()); List<TbShopUser> tbShopUser = shopUserMapper.selectAllByUserId(param.getUserId().toString());
if (CollectionUtil.isNotEmpty(tbShopUser)) { if (CollectionUtil.isNotEmpty(tbShopUser)) {

View File

@@ -150,6 +150,9 @@ public class TbShopShareRecordServiceImpl implements TbShopShareRecordService {
for (TbShopShare.ShareCoupons newCoupon : tbShopShare.getNewCoupons()) { for (TbShopShare.ShareCoupons newCoupon : tbShopShare.getNewCoupons()) {
TbShopCoupon coupon = couponMapper.queryById(newCoupon.getCouponId()); TbShopCoupon coupon = couponMapper.queryById(newCoupon.getCouponId());
if (coupon != null) { if (coupon != null) {
if (coupon.getLeftNumber() <= 0) {
query.setStatus(0);
}
if (coupon.getType() == 1) { if (coupon.getType() == 1) {
//满减 //满减
newCoupon.setType(1); newCoupon.setType(1);
@@ -286,6 +289,8 @@ public class TbShopShareRecordServiceImpl implements TbShopShareRecordService {
} }
} }
activateInRecordMapper.insertBatch(actGiveRecords); activateInRecordMapper.insertBatch(actGiveRecords);
tbShopCoupon.setLeftNumber(tbShopCoupon.getLeftNumber()-newCoupon.getCouponNum());
couponMapper.update(tbShopCoupon);
} }
} }

View File

@@ -40,6 +40,9 @@ public class TbShopShareServiceImpl implements TbShopShareService {
for (TbShopShare.ShareCoupons newCoupon : tbShopShare.getNewCoupons()) { for (TbShopShare.ShareCoupons newCoupon : tbShopShare.getNewCoupons()) {
TbShopCoupon coupon = couponMapper.queryById(newCoupon.getCouponId()); TbShopCoupon coupon = couponMapper.queryById(newCoupon.getCouponId());
if (coupon != null) { if (coupon != null) {
if (coupon.getLeftNumber() <= 0) {
tbShopShare.setStatus(0);
}
if (coupon.getType() == 1) { if (coupon.getType() == 1) {
//满减 //满减
newCoupon.setType(1); newCoupon.setType(1);