From 8f351fdb8b7d2c42acb2f24447a4a90b4e82b2d8 Mon Sep 17 00:00:00 2001 From: Chopper Date: Tue, 20 Jul 2021 19:38:21 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E5=AF=B9=E6=B6=88=E6=81=AF=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E9=BB=98=E8=AE=A4=E7=8A=B6=E6=80=81=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/cn/lili/common/exception/ServiceException.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/framework/src/main/java/cn/lili/common/exception/ServiceException.java b/framework/src/main/java/cn/lili/common/exception/ServiceException.java index 20e856f0..3b7b3fc5 100644 --- a/framework/src/main/java/cn/lili/common/exception/ServiceException.java +++ b/framework/src/main/java/cn/lili/common/exception/ServiceException.java @@ -24,7 +24,7 @@ public class ServiceException extends RuntimeException { private ResultCode resultCode; public ServiceException(String msg) { - super(msg); + this.resultCode = ResultCode.ERROR; this.msg = msg; } From bdbf4589ea0a0c9ac97ee08244c8928511fc1af3 Mon Sep 17 00:00:00 2001 From: paulGao Date: Wed, 21 Jul 2021 07:59:58 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=95=86=E5=93=81?= =?UTF-8?q?=E6=90=9C=E7=B4=A2=E4=B8=BA=E5=88=86=E8=AF=8D=E6=90=9C=E7=B4=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../serviceimpl/EsGoodsSearchServiceImpl.java | 24 ++++++++++++++----- 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/framework/src/main/java/cn/lili/modules/search/serviceimpl/EsGoodsSearchServiceImpl.java b/framework/src/main/java/cn/lili/modules/search/serviceimpl/EsGoodsSearchServiceImpl.java index 72239a17..200f805f 100644 --- a/framework/src/main/java/cn/lili/modules/search/serviceimpl/EsGoodsSearchServiceImpl.java +++ b/framework/src/main/java/cn/lili/modules/search/serviceimpl/EsGoodsSearchServiceImpl.java @@ -22,6 +22,7 @@ import lombok.extern.slf4j.Slf4j; import org.apache.lucene.search.join.ScoreMode; import org.elasticsearch.common.lucene.search.function.FunctionScoreQuery; import org.elasticsearch.index.query.BoolQueryBuilder; +import org.elasticsearch.index.query.Operator; import org.elasticsearch.index.query.QueryBuilders; import org.elasticsearch.index.query.functionscore.FunctionScoreQueryBuilder; import org.elasticsearch.index.query.functionscore.ScoreFunctionBuilders; @@ -411,12 +412,23 @@ public class EsGoodsSearchServiceImpl implements EsGoodsSearchService { */ private void keywordSearch(BoolQueryBuilder filterBuilder, BoolQueryBuilder queryBuilder, String keyword, boolean isAggregation) { List filterFunctionBuilders = new ArrayList<>(); - //商品名字匹配 - filterFunctionBuilders.add(new FunctionScoreQueryBuilder.FilterFunctionBuilder(QueryBuilders.wildcardQuery("goodsName", "*" + keyword + "*"), - ScoreFunctionBuilders.weightFactorFunction(10))); - //属性匹配 - filterFunctionBuilders.add(new FunctionScoreQueryBuilder.FilterFunctionBuilder(QueryBuilders.nestedQuery(ATTR_PATH, QueryBuilders.wildcardQuery(ATTR_VALUE, "*" + keyword + "*"), ScoreMode.None), - ScoreFunctionBuilders.weightFactorFunction(8))); + if (keyword.contains(" ")) { + for (String s : keyword.split(" ")) { + filterFunctionBuilders.add(new FunctionScoreQueryBuilder.FilterFunctionBuilder(QueryBuilders.matchQuery("goodsName", s).operator(Operator.AND), + ScoreFunctionBuilders.weightFactorFunction(10))); + //属性匹配 + filterFunctionBuilders.add(new FunctionScoreQueryBuilder.FilterFunctionBuilder(QueryBuilders.nestedQuery(ATTR_PATH, QueryBuilders.wildcardQuery(ATTR_VALUE, "*" + s + "*"), ScoreMode.None), + ScoreFunctionBuilders.weightFactorFunction(8))); + } + } else { + //分词匹配 + filterFunctionBuilders.add(new FunctionScoreQueryBuilder.FilterFunctionBuilder(QueryBuilders.matchQuery("goodsName", keyword).operator(Operator.AND), + ScoreFunctionBuilders.weightFactorFunction(10))); + //属性匹配 + filterFunctionBuilders.add(new FunctionScoreQueryBuilder.FilterFunctionBuilder(QueryBuilders.nestedQuery(ATTR_PATH, QueryBuilders.wildcardQuery(ATTR_VALUE, "*" + keyword + "*"), ScoreMode.None), + ScoreFunctionBuilders.weightFactorFunction(8))); + } + FunctionScoreQueryBuilder.FilterFunctionBuilder[] builders = new FunctionScoreQueryBuilder.FilterFunctionBuilder[filterFunctionBuilders.size()]; filterFunctionBuilders.toArray(builders); From 13ecd5815bd1b79fd7eccd6de8a11ac8a649a1c3 Mon Sep 17 00:00:00 2001 From: paulGao Date: Wed, 21 Jul 2021 08:04:19 +0800 Subject: [PATCH 3/3] =?UTF-8?q?sql=20=E4=B8=AD=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=88=86=E8=AF=8D=E7=AE=A1=E7=90=86=E8=8F=9C=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- update-sql/version4.1to4.2.sql | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/update-sql/version4.1to4.2.sql b/update-sql/version4.1to4.2.sql index ee0c7839..2d1b18c3 100644 --- a/update-sql/version4.1to4.2.sql +++ b/update-sql/version4.1to4.2.sql @@ -13,4 +13,7 @@ ALTER TABLE li_promotion_goods ADD goods_type varchar (200); /** 修改历史积分积分类型的字段类型 **/ alter table li_member_points_history modify column point_type varchar(50); update li_member_points_history set point_type = 'INCREASE' where point_type=1; -update li_member_points_history set point_type = 'REDUCE' where point_type=0; \ No newline at end of file +update li_member_points_history set point_type = 'REDUCE' where point_type=0; + +/** 添加分词管理菜单*/ +INSERT INTO `lilishop`.`li_menu` (`id`, `create_by`, `create_time`, `delete_flag`, `update_by`, `update_time`, `description`, `front_route`, `icon`, `level`, `name`, `parent_id`, `path`, `sort_order`, `title`, `front_component`) VALUES (1349247640584085511, 'admin', '2021-01-13 14:51:20', b'0', 'admin', '2021-02-25 09:02:59', 'null', 'customWords/index', 'ios-american-football', 2, 'customWords', '1349237129847005184', 'customWords', 8.00, '分词管理', 'null'); \ No newline at end of file