Commit 3989db1b16722e59faa016fdb2729f273c4149b5
1 parent
afbd3382
fix: categoryIds判断是否为空
Showing
1 changed file
with
29 additions
and
28 deletions
shop/src/main/java/com/canrd/shop/service/impl/ProductServiceImpl.java
@@ -6,7 +6,6 @@ import com.alibaba.fastjson2.JSON; | @@ -6,7 +6,6 @@ import com.alibaba.fastjson2.JSON; | ||
6 | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | 6 | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
7 | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; | 7 | import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; |
8 | import com.baomidou.mybatisplus.core.metadata.IPage; | 8 | import com.baomidou.mybatisplus.core.metadata.IPage; |
9 | -import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; | ||
10 | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | 9 | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
11 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | 10 | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
12 | import com.canrd.shop.common.constant.PriceConstants; | 11 | import com.canrd.shop.common.constant.PriceConstants; |
@@ -23,6 +22,7 @@ import com.canrd.shop.service.*; | @@ -23,6 +22,7 @@ import com.canrd.shop.service.*; | ||
23 | import com.google.common.collect.Lists; | 22 | import com.google.common.collect.Lists; |
24 | import com.google.common.collect.Sets; | 23 | import com.google.common.collect.Sets; |
25 | import lombok.extern.slf4j.Slf4j; | 24 | import lombok.extern.slf4j.Slf4j; |
25 | +import org.apache.commons.collections4.CollectionUtils; | ||
26 | import org.apache.commons.lang3.BooleanUtils; | 26 | import org.apache.commons.lang3.BooleanUtils; |
27 | import org.apache.ibatis.annotations.Param; | 27 | import org.apache.ibatis.annotations.Param; |
28 | import org.springframework.beans.factory.annotation.Autowired; | 28 | import org.springframework.beans.factory.annotation.Autowired; |
@@ -137,36 +137,37 @@ public class ProductServiceImpl extends ServiceImpl<ProductMapper, ProductDO> im | @@ -137,36 +137,37 @@ public class ProductServiceImpl extends ServiceImpl<ProductMapper, ProductDO> im | ||
137 | .eq(Productcategoryrelation::getProductId, productQueryVO.getId()) | 137 | .eq(Productcategoryrelation::getProductId, productQueryVO.getId()) |
138 | .list(); | 138 | .list(); |
139 | List<String> categoryIds = productcategoryrelations.stream().map(Productcategoryrelation::getCategoryId).collect(Collectors.toList()); | 139 | List<String> categoryIds = productcategoryrelations.stream().map(Productcategoryrelation::getCategoryId).collect(Collectors.toList()); |
140 | - | ||
141 | - List<ProductCategoryDO> productCategories = categoryService.lambdaQuery() | ||
142 | - .in(ProductCategoryDO::getId, categoryIds) | ||
143 | - .eq(ProductCategoryDO::getParentId, "33ba6943c8bf4ca082614f299865341c") | ||
144 | - .list(); | ||
145 | - ProductCategoryDO firstCategory = productCategories.get(0); | ||
146 | - List<ProductCategoryDO> productCategories2 = categoryService.lambdaQuery() | ||
147 | - .in(ProductCategoryDO::getId, categoryIds) | ||
148 | - .eq(ProductCategoryDO::getParentId, firstCategory.getId()) | ||
149 | - .list(); | 140 | + if (CollectionUtils.isNotEmpty(categoryIds)) { |
141 | + List<ProductCategoryDO> productCategories = categoryService.lambdaQuery() | ||
142 | + .in(ProductCategoryDO::getId, categoryIds) | ||
143 | + .eq(ProductCategoryDO::getParentId, "33ba6943c8bf4ca082614f299865341c") | ||
144 | + .list(); | ||
145 | + ProductCategoryDO firstCategory = productCategories.get(0); | ||
146 | + List<ProductCategoryDO> productCategories2 = categoryService.lambdaQuery() | ||
147 | + .in(ProductCategoryDO::getId, categoryIds) | ||
148 | + .eq(ProductCategoryDO::getParentId, firstCategory.getId()) | ||
149 | + .list(); | ||
150 | // ProductCategoryDO secondCategory = productCategories2.get(0); | 150 | // ProductCategoryDO secondCategory = productCategories2.get(0); |
151 | - ProductCategoryDO secondCategory = productCategories2.stream() | ||
152 | - .filter(category -> !"Not specified".equals(category.getName())) | ||
153 | - .findFirst() | ||
154 | - .orElse(productCategories2.get(0)); // 如果找不到,使用列表第一个元素 | ||
155 | - // 从 functionService 获取 functionId | ||
156 | - List<ProductFunctionDO> functions = functionService.getFirstFunction(productVO.getId()); | ||
157 | - ProductFunctionDO selectedFunction = null; | ||
158 | - if(functions != null && functions.size() > 0) { | ||
159 | - selectedFunction = functions.stream() | ||
160 | - .filter(function -> !"Not specified".equals(function.getName())) | 151 | + ProductCategoryDO secondCategory = productCategories2.stream() |
152 | + .filter(category -> !"Not specified".equals(category.getName())) | ||
161 | .findFirst() | 153 | .findFirst() |
162 | - .orElse(functions.get(0)); // 如果找不到,使用列表第一个元素 | 154 | + .orElse(productCategories2.get(0)); // 如果找不到,使用列表第一个元素 |
155 | + // 从 functionService 获取 functionId | ||
156 | + List<ProductFunctionDO> functions = functionService.getFirstFunction(productVO.getId()); | ||
157 | + ProductFunctionDO selectedFunction = null; | ||
158 | + if (functions != null && functions.size() > 0) { | ||
159 | + selectedFunction = functions.stream() | ||
160 | + .filter(function -> !"Not specified".equals(function.getName())) | ||
161 | + .findFirst() | ||
162 | + .orElse(functions.get(0)); // 如果找不到,使用列表第一个元素 | ||
163 | + } | ||
164 | + ProductCrumbsVO productCrumbsVO = ProductCrumbsVO.builder() | ||
165 | + .category1(firstCategory.getName()) // | ||
166 | + .category2(secondCategory.getName()) | ||
167 | + .function(selectedFunction.getName()) | ||
168 | + .build(); | ||
169 | + productVO.setProductCrumbsVO(productCrumbsVO); | ||
163 | } | 170 | } |
164 | - ProductCrumbsVO productCrumbsVO = ProductCrumbsVO.builder() | ||
165 | - .category1(firstCategory.getName()) // | ||
166 | - .category2(secondCategory.getName()) | ||
167 | - .function(selectedFunction.getName()) | ||
168 | - .build(); | ||
169 | - productVO.setProductCrumbsVO(productCrumbsVO); | ||
170 | 171 | ||
171 | List<EbCategorysRelation> cateRelations = ebCategorysRelationService.lambdaQuery() | 172 | List<EbCategorysRelation> cateRelations = ebCategorysRelationService.lambdaQuery() |
172 | .in(EbCategorysRelation::getCategoryId, categoryIds) | 173 | .in(EbCategorysRelation::getCategoryId, categoryIds) |