diff --git a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkShopCouponRecordServiceImpl.java b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkShopCouponRecordServiceImpl.java index 6262a098..285513c9 100644 --- a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkShopCouponRecordServiceImpl.java +++ b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkShopCouponRecordServiceImpl.java @@ -5,6 +5,7 @@ import cn.hutool.core.date.LocalDateTimeUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson2.JSONObject; import com.czg.account.dto.QueryReceiveDto; +import com.czg.account.entity.PictureGallery; import com.czg.account.entity.ShopInfo; import com.czg.account.entity.ShopUser; import com.czg.account.entity.UserInfo; @@ -28,6 +29,7 @@ import com.czg.utils.AssertUtil; import com.czg.utils.PageUtil; import com.mybatisflex.core.paginate.Page; import com.mybatisflex.core.query.QueryWrapper; +import com.mybatisflex.core.update.UpdateWrapper; import com.mybatisflex.spring.service.impl.ServiceImpl; import jakarta.annotation.Resource; import org.apache.dubbo.config.annotation.DubboReference; @@ -80,9 +82,27 @@ public class MkShopCouponRecordServiceImpl extends ServiceImpl getRecord(MkShopCouponRecordDTO mkShopCouponRecordDTO, String startTime, String endTime) { Map userInfoMap = new HashMap<>(); + if (mkShopCouponRecordDTO.getCouponId() == null) { + throw new CzgException("优惠券Id不能为空"); + } + + ShopCoupon coupon = couponService.selectOneById(mkShopCouponRecordDTO.getCouponId()); + AssertUtil.isNull(coupon, "优惠券不存在"); QueryWrapper recordQueryWrapper = new QueryWrapper(); + if (coupon.getSyncId() != null) { + recordQueryWrapper.and(q -> { + q.eq(MkShopCouponRecord::getCouponId, coupon.getId()).or(q1 -> { + q1.eq(MkShopCouponRecord::getCouponSyncId, coupon.getSyncId()); + }); + }); + }else { + recordQueryWrapper.and(q -> { + q.eq(MkShopCouponRecord::getCouponId, coupon.getId()).or(q1 -> { + q1.eq(MkShopCouponRecord::getCouponSyncId, coupon.getId()); + }); + }); + } recordQueryWrapper.eq(MkShopCouponRecord::getShopId, mkShopCouponRecordDTO.getShopId()) - .eq(MkShopCouponRecord::getCouponId, mkShopCouponRecordDTO.getCouponId()) .eq(MkShopCouponRecord::getIsDel, 0) .eq(MkShopCouponRecord::getStatus, mkShopCouponRecordDTO.getStatus()) .orderBy(MkShopCouponRecord::getCreateTime).desc(); @@ -190,7 +210,21 @@ public class MkShopCouponRecordServiceImpl extends ServiceImpl { + q.eq(ShopCoupon::getId, coupon.getSyncId()).or(q1 -> { + q1.eq(ShopCoupon::getSyncId, coupon.getSyncId()); + }); + }); + couponService.updateByQuery(newCoupon, queryWrapper); + } else { + queryWrapper.eq(ShopCoupon::getId, coupon.getId()); + couponService.update(coupon, true); + } } diff --git a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/ShopCouponServiceImpl.java b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/ShopCouponServiceImpl.java index b2393004..b5f76777 100644 --- a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/ShopCouponServiceImpl.java +++ b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/ShopCouponServiceImpl.java @@ -392,9 +392,23 @@ public class ShopCouponServiceImpl extends ServiceImpl { + q.eq(ShopCoupon::getId, tbShopCoupon.getId()).or(q1 -> { + q1.eq(ShopCoupon::getSyncId, tbShopCoupon.getSyncId()); + }); + }); + } else { + recordQueryWrapper.and(q -> { + q.eq(ShopCoupon::getId, tbShopCoupon.getId()).or(q1 -> { + q1.eq(ShopCoupon::getSyncId, tbShopCoupon.getId()); + }); + }); + } + update(coupon1, recordQueryWrapper); }); return recordService.updateChain() .set(MkShopCouponRecord::getStatus, 1)