搜索改造

This commit is contained in:
zhuyang
2021-10-09 21:49:56 +08:00
parent 53a33e4999
commit b5480816ef
9 changed files with 90 additions and 46 deletions

View File

@@ -26,6 +26,10 @@
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-openfeign-core</artifactId>
</dependency>
</dependencies>
</project>

View File

@@ -6,19 +6,28 @@ import cn.iocoder.mall.searchservice.rpc.product.dto.SearchProductConditionReqDT
import cn.iocoder.mall.searchservice.rpc.product.dto.SearchProductConditionRespDTO;
import cn.iocoder.mall.searchservice.rpc.product.dto.SearchProductPageReqDTO;
import cn.iocoder.mall.searchservice.rpc.product.dto.SearchProductRespDTO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 商品搜索 RPC 接口
* Title:
* Description:
*
* @author zhuyang
* @version 1.0 2021/10/9
*/
public interface SearchProductRpc {
@FeignClient(value = "search-service")
public interface SearchProductFeign {
/**
* 获得商品搜索分页
*
* @param pageReqDTO 分页请求 DTO
* @return 商品搜索分页结果
*/
CommonResult<PageResult<SearchProductRespDTO>> pageSearchProduct(SearchProductPageReqDTO pageReqDTO);
@PostMapping("/search/product//pageSearchProduct")
CommonResult<PageResult<SearchProductRespDTO>> pageSearchProduct(@RequestBody SearchProductPageReqDTO pageReqDTO);
/**
* 获得商品搜索条件
@@ -26,6 +35,6 @@ public interface SearchProductRpc {
* @param conditionReqDTO 搜索条件 DTO
* @return 搜索条件
*/
CommonResult<SearchProductConditionRespDTO> getSearchProductCondition(SearchProductConditionReqDTO conditionReqDTO);
@PostMapping("/search/product/getSearchProductCondition")
CommonResult<SearchProductConditionRespDTO> getSearchProductCondition(@RequestBody SearchProductConditionReqDTO conditionReqDTO);
}

View File

@@ -105,6 +105,10 @@
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<dependency>
<groupId>io.swagger</groupId>
<artifactId>swagger-annotations</artifactId>
</dependency>
</dependencies>
<build>

View File

@@ -0,0 +1,54 @@
package cn.iocoder.mall.searchservice.controller;
import cn.iocoder.common.framework.vo.CommonResult;
import cn.iocoder.common.framework.vo.PageResult;
import cn.iocoder.mall.searchservice.manager.product.SearchProductManager;
import cn.iocoder.mall.searchservice.rpc.product.dto.SearchProductConditionReqDTO;
import cn.iocoder.mall.searchservice.rpc.product.dto.SearchProductConditionRespDTO;
import cn.iocoder.mall.searchservice.rpc.product.dto.SearchProductPageReqDTO;
import cn.iocoder.mall.searchservice.rpc.product.dto.SearchProductRespDTO;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import static cn.iocoder.common.framework.vo.CommonResult.success;
/**
* Title:
* Description:
*
* @author zhuyang
* @version 1.0 2021/10/9
*/
@RestController
@RequestMapping("/search/product")
@Api("商品搜索")
public class SearchProductController {
@Autowired
private SearchProductManager searchProductManager;
/**
* 获得商品搜索分页
*
* @param pageReqDTO 分页请求 DTO
* @return 商品搜索分页结果
*/
@PostMapping("/pageSearchProduct")
CommonResult<PageResult<SearchProductRespDTO>> pageSearchProduct(@RequestBody SearchProductPageReqDTO pageReqDTO){
return success(searchProductManager.pageSearchProduct(pageReqDTO));
}
/**
* 获得商品搜索条件
*
* @param conditionReqDTO 搜索条件 DTO
* @return 搜索条件
*/
@PostMapping("/getSearchProductCondition")
CommonResult<SearchProductConditionRespDTO> getSearchProductCondition(@RequestBody SearchProductConditionReqDTO conditionReqDTO){
return success(searchProductManager.getSearchProductCondition(conditionReqDTO));
}
}

View File

@@ -1,31 +0,0 @@
package cn.iocoder.mall.searchservice.rpc.product;
import cn.iocoder.common.framework.vo.CommonResult;
import cn.iocoder.common.framework.vo.PageResult;
import cn.iocoder.mall.searchservice.manager.product.SearchProductManager;
import cn.iocoder.mall.searchservice.rpc.product.dto.SearchProductConditionReqDTO;
import cn.iocoder.mall.searchservice.rpc.product.dto.SearchProductConditionRespDTO;
import cn.iocoder.mall.searchservice.rpc.product.dto.SearchProductPageReqDTO;
import cn.iocoder.mall.searchservice.rpc.product.dto.SearchProductRespDTO;
import org.apache.dubbo.config.annotation.DubboService;
import org.springframework.beans.factory.annotation.Autowired;
import static cn.iocoder.common.framework.vo.CommonResult.success;
@DubboService
public class SearchProductRpcImpl implements SearchProductRpc {
@Autowired
private SearchProductManager searchProductManager;
@Override
public CommonResult<PageResult<SearchProductRespDTO>> pageSearchProduct(SearchProductPageReqDTO pageReqDTO) {
return success(searchProductManager.pageSearchProduct(pageReqDTO));
}
@Override
public CommonResult<SearchProductConditionRespDTO> getSearchProductCondition(SearchProductConditionReqDTO conditionReqDTO) {
return success(searchProductManager.getSearchProductCondition(conditionReqDTO));
}
}