Merge remote-tracking branch 'origin/test' into test

This commit is contained in:
张松 2025-09-27 17:19:13 +08:00
commit 8a0bd59e9c
2 changed files with 52 additions and 4 deletions

View File

@ -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<MkShopCouponRecor
@Override
public Page<MkShopCouponRecordDTO> getRecord(MkShopCouponRecordDTO mkShopCouponRecordDTO, String startTime, String endTime) {
Map<Long, UserInfo> 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<MkShopCouponRecor
record.setUseEndTime(end);
save(record);
}
couponService.update(coupon, true);
QueryWrapper queryWrapper = new QueryWrapper();
ShopCoupon newCoupon = new ShopCoupon();
newCoupon.setLeftNum(coupon.getLeftNum());
newCoupon.setGiftNum(coupon.getGiftNum());
if (coupon.getSyncId() != null) {
queryWrapper.and(q -> {
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);
}
}

View File

@ -392,9 +392,23 @@ public class ShopCouponServiceImpl extends ServiceImpl<ShopCouponMapper, ShopCou
ShopCoupon tbShopCoupon = getById(couponId);
tbShopCoupon.setUseNum(tbShopCoupon.getUseNum() + count.intValue());
ShopCoupon coupon1 = new ShopCoupon();
coupon1.setId(couponId);
coupon1.setUseNum(tbShopCoupon.getUseNum());
updateById(coupon1);
QueryWrapper recordQueryWrapper = new QueryWrapper();
if (tbShopCoupon.getSyncId() != null) {
recordQueryWrapper.and(q -> {
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)