限时折扣 商品重填

This commit is contained in:
2025-10-23 15:17:33 +08:00
parent 46820794d7
commit 8985676d5b

View File

@@ -1,6 +1,7 @@
package com.czg.service.market.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.czg.TimeQueryParam;
import com.czg.account.entity.PictureClassify;
@@ -11,6 +12,8 @@ import com.czg.exception.CzgException;
import com.czg.market.dto.MkLimitTimeDiscountDTO;
import com.czg.market.entity.MkLimitTimeDiscount;
import com.czg.market.service.MkLimitTimeDiscountService;
import com.czg.product.entity.Product;
import com.czg.product.service.ProductService;
import com.czg.service.market.mapper.MkLimitTimeDiscountMapper;
import com.czg.utils.AssertUtil;
import com.czg.utils.CzgStrUtils;
@@ -24,6 +27,9 @@ import org.springframework.stereotype.Service;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeParseException;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
/**
* 限时折扣 服务层实现。
@@ -36,6 +42,8 @@ public class MkLimitTimeDiscountServiceImpl extends ServiceImpl<MkLimitTimeDisco
@DubboReference
private ShopInfoService shopInfoService;
@DubboReference
private ProductService productService;
@Override
public Page<MkLimitTimeDiscountDTO> getLimitTimeDiscountPage(TimeQueryParam param, Long shopId) {
@@ -57,7 +65,23 @@ public class MkLimitTimeDiscountServiceImpl extends ServiceImpl<MkLimitTimeDisco
});
});
});
return pageAs(PageUtil.buildPage(), queryWrapper, MkLimitTimeDiscountDTO.class);
Page<MkLimitTimeDiscountDTO> page = pageAs(PageUtil.buildPage(), queryWrapper, MkLimitTimeDiscountDTO.class);
for (MkLimitTimeDiscountDTO record : page.getRecords()) {
if (record.getFoodType() == 2 && StrUtil.isNotBlank(record.getFoods())) {
List<String> foodIds = Arrays.stream(record.getFoods().split(","))
.map(String::trim)
.filter(StrUtil::isNotBlank)
.distinct()
.toList();
List<String> ids = productService.listAs(QueryWrapper.create().in(Product::getId, foodIds), String.class);
if(CollUtil.isEmpty(ids)){
record.setFoods("");
}else {
record.setFoods(String.join(",", ids));
}
}
}
return page;
}