diff --git a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkLimitTimeDiscountServiceImpl.java b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkLimitTimeDiscountServiceImpl.java index b6942fac8..1346750d0 100644 --- a/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkLimitTimeDiscountServiceImpl.java +++ b/cash-service/market-service/src/main/java/com/czg/service/market/service/impl/MkLimitTimeDiscountServiceImpl.java @@ -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 getLimitTimeDiscountPage(TimeQueryParam param, Long shopId) { @@ -57,7 +65,23 @@ public class MkLimitTimeDiscountServiceImpl extends ServiceImpl page = pageAs(PageUtil.buildPage(), queryWrapper, MkLimitTimeDiscountDTO.class); + for (MkLimitTimeDiscountDTO record : page.getRecords()) { + if (record.getFoodType() == 2 && StrUtil.isNotBlank(record.getFoods())) { + List foodIds = Arrays.stream(record.getFoods().split(",")) + .map(String::trim) + .filter(StrUtil::isNotBlank) + .distinct() + .toList(); + List 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; }