From 659871efda4ae067ef354b75de5d33539fb8594c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E6=97=AD?= <2795210596@qq.com> Date: Sun, 13 Apr 2025 22:59:32 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9APP=E7=AB=AF=E6=90=9C?= =?UTF-8?q?=E7=B4=A2=E7=90=83=E6=9D=86=E5=95=86=E5=93=81=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=EF=BC=8C=E5=A2=9E=E5=8A=A0=E7=B2=BE=E5=87=86=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cloud/common/local/dto/CueProductSearchDTO.java | 3 +++ .../builder/LocalCueProductSearchRequestBuilder.java | 4 +++- .../app/LocalCueProductSearchController.java | 10 +--------- 3 files changed, 7 insertions(+), 10 deletions(-) diff --git a/tmerclub-common/tmerclub-common-loacl/src/main/java/com/tmerclub/cloud/common/local/dto/CueProductSearchDTO.java b/tmerclub-common/tmerclub-common-loacl/src/main/java/com/tmerclub/cloud/common/local/dto/CueProductSearchDTO.java index 4712764..72b750e 100644 --- a/tmerclub-common/tmerclub-common-loacl/src/main/java/com/tmerclub/cloud/common/local/dto/CueProductSearchDTO.java +++ b/tmerclub-common/tmerclub-common-loacl/src/main/java/com/tmerclub/cloud/common/local/dto/CueProductSearchDTO.java @@ -1,5 +1,6 @@ package com.tmerclub.cloud.common.local.dto; +import jakarta.validation.constraints.NotNull; import lombok.Data; import java.io.Serial; @@ -23,10 +24,12 @@ public class CueProductSearchDTO implements Serializable { /** * 关联的球杆品牌ID */ + @NotNull(message = "关联的球杆品牌ID不能为空") private Long brandId; /** * 关联的球杆类型ID */ + @NotNull(message = "关联的球杆类型ID不能为空") private Long typeId; public void setProductName(String productName) { diff --git a/tmerclub-search/src/main/java/com/tmerclub/cloud/search/builder/LocalCueProductSearchRequestBuilder.java b/tmerclub-search/src/main/java/com/tmerclub/cloud/search/builder/LocalCueProductSearchRequestBuilder.java index 70e8d25..4b835dc 100644 --- a/tmerclub-search/src/main/java/com/tmerclub/cloud/search/builder/LocalCueProductSearchRequestBuilder.java +++ b/tmerclub-search/src/main/java/com/tmerclub/cloud/search/builder/LocalCueProductSearchRequestBuilder.java @@ -78,7 +78,9 @@ public class LocalCueProductSearchRequestBuilder { */ private void keywordSearch(CueProductSearchDTO param, BoolQueryBuilder boolQueryBuilder, Integer lang) { BoolQueryBuilder keywordShouldQuery = QueryBuilders.boolQuery(); - keywordShouldQuery.must(QueryBuilders.wildcardQuery(EsConstant.CUE_PRODUCT_NAME, "*" + param.getProductName() + "*")); + if (ObjectUtil.isNotEmpty(param.getProductName())) { + keywordShouldQuery.must(QueryBuilders.wildcardQuery(EsConstant.CUE_PRODUCT_NAME, "*" + param.getProductName() + "*")); + } keywordShouldQuery.must(QueryBuilders.termQuery(EsConstant.CUE_BRAND_ID, param.getBrandId())); keywordShouldQuery.must(QueryBuilders.termQuery(EsConstant.CUE_TYPE_ID, param.getTypeId())); boolQueryBuilder.must(keywordShouldQuery); diff --git a/tmerclub-search/src/main/java/com/tmerclub/cloud/search/controller/app/LocalCueProductSearchController.java b/tmerclub-search/src/main/java/com/tmerclub/cloud/search/controller/app/LocalCueProductSearchController.java index 434eed6..02833f3 100644 --- a/tmerclub-search/src/main/java/com/tmerclub/cloud/search/controller/app/LocalCueProductSearchController.java +++ b/tmerclub-search/src/main/java/com/tmerclub/cloud/search/controller/app/LocalCueProductSearchController.java @@ -1,6 +1,5 @@ package com.tmerclub.cloud.search.controller.app; -import cn.hutool.core.util.ObjectUtil; import com.tmerclub.cloud.api.dto.EsPageDTO; import com.tmerclub.cloud.api.vo.EsPageVO; import com.tmerclub.cloud.common.local.dto.CueProductSearchDTO; @@ -38,14 +37,7 @@ public class LocalCueProductSearchController { */ @GetMapping("/searchCueProductPage") @Operation(summary = "APP端搜索球杆商品接口", description = "APP端搜索球杆商品接口") - public ServerResponseEntity> searchCueProductPage(@Valid EsPageDTO pageDTO, CueProductSearchDTO cueProductSearchDTO) { - // 判断搜索必要参数是否为空,如果为空则返回自定义异常 - if (ObjectUtil.isEmpty(cueProductSearchDTO.getProductName()) || - ObjectUtil.isEmpty(cueProductSearchDTO.getBrandId()) || - ObjectUtil.isEmpty(cueProductSearchDTO.getTypeId())) { - return ServerResponseEntity.showFailMsg("搜索参数不能为空"); - } - + public ServerResponseEntity> searchCueProductPage(@Valid EsPageDTO pageDTO, @Valid CueProductSearchDTO cueProductSearchDTO) { EsPageVO page = localCueProductSearchManager.page(pageDTO, cueProductSearchDTO); return ServerResponseEntity.success(page); }