Browse Source

店铺内搜索产品接口调整,可以搜索品牌、类目、型号、规格

dongbw 7 years ago
parent
commit
0e3aff2488

+ 10 - 2
src/main/java/com/uas/platform/b2c/prod/commodity/service/impl/GoodsServiceImpl.java

@@ -2548,7 +2548,14 @@ public class GoodsServiceImpl implements GoodsService {
             }
         }
         if (StringUtils.hasText(code)) {
-            pageInfo.expression(like("code", code, false));
+            CriterionExpression[] expressions = new CriterionExpression[5];
+            expressions[0] = PredicateUtils.like("code", code, true, true);
+            expressions[1] = PredicateUtils.like("brandNameCn", code, true, true);
+            expressions[2] = PredicateUtils.like("brandNameEn", code, true, true);
+            expressions[3] = PredicateUtils.like("kindNameCn", code, true, true);
+            expressions[4] = PredicateUtils.like("spec", code, true, true);
+            LogicalExpression logicalExpression = PredicateUtils.or(expressions);
+            pageInfo.expression(logicalExpression);
         }
         Page<Goods> goodsPage = goodsDao.findAll(new Specification<Goods>() {
             @Override
@@ -3049,11 +3056,12 @@ public class GoodsServiceImpl implements GoodsService {
 
         pageInfo.filter("status", 601, true);
         if (StringUtils.hasText(keyword)) {
-            CriterionExpression[] expressions = new CriterionExpression[4];
+            CriterionExpression[] expressions = new CriterionExpression[5];
             expressions[0] = PredicateUtils.like("code", keyword, true, true);
             expressions[1] = PredicateUtils.like("brandNameCn", keyword, true, true);
             expressions[2] = PredicateUtils.like("brandNameEn", keyword, true, true);
             expressions[3] = PredicateUtils.like("kindNameCn", keyword, true, true);
+            expressions[4] = PredicateUtils.like("spec", keyword, true, true);
             LogicalExpression logicalExpression = PredicateUtils.or(expressions);
             pageInfo.expression(logicalExpression);
         }

+ 7 - 5
src/main/java/com/uas/platform/b2c/prod/store/api/CommodityController.java

@@ -1,8 +1,6 @@
 package com.uas.platform.b2c.prod.store.api;
 
 import com.alibaba.fastjson.JSON;
-import com.uas.platform.b2c.common.account.model.User;
-import com.uas.platform.b2c.core.support.SystemSession;
 import com.uas.platform.b2c.prod.commodity.model.Goods;
 import com.uas.platform.b2c.prod.commodity.service.GoodsService;
 import com.uas.platform.b2c.prod.product.component.modal.Component;
@@ -16,10 +14,14 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
 
 import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpSession;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -105,7 +107,7 @@ public class CommodityController {
 	 *
 	 * @param storeid	店铺企业UUID
 	 * @param kindUuid	类目UUID
-	 * @param code		搜索型号
+	 * @param code		搜索型号  -- 2018年6月5日 11:44:02  扩展  作为关键词 搜索 品牌、类目、型号、规格
 	 * @param params	分页信息
 	 */
 	@RequestMapping(value = "/commodities", method = RequestMethod.GET, params = "origin=store", produces = "application/json")