完成的商品搜索和条件功能

This commit is contained in:
YunaiV
2020-08-04 19:42:54 +08:00
parent f3316d14c7
commit b83262af5f
240 changed files with 246 additions and 859 deletions

View File

@@ -4,9 +4,11 @@ import cn.iocoder.common.framework.vo.PageResult;
import cn.iocoder.mall.productservice.rpc.category.dto.ProductCategoryRespDTO;
import cn.iocoder.mall.productservice.rpc.spu.dto.ProductSpuRespDTO;
import cn.iocoder.mall.searchservice.dal.es.dataobject.ESProductDO;
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 cn.iocoder.mall.searchservice.service.product.bo.SearchProductBO;
import cn.iocoder.mall.searchservice.service.product.bo.SearchProductConditionBO;
import cn.iocoder.mall.searchservice.service.product.bo.SearchProductPageQueryBO;
import cn.iocoder.mall.searchservice.service.product.bo.SearchProductSaveBO;
import org.mapstruct.Mapper;
@@ -37,13 +39,15 @@ public interface SearchProductConvert {
List<SearchProductBO> convertList(List<ESProductDO> list);
default PageResult<SearchProductBO> convertPage(Page<ESProductDO> searchPage) {
return new PageResult<SearchProductBO>().setList(convertList(searchPage.getContent()))
.setTotal(searchPage.getTotalElements());
default PageResult<SearchProductBO> convertPage(Page<ESProductDO> page) {
return new PageResult<SearchProductBO>().setList(convertList(page.getContent()))
.setTotal(page.getTotalElements());
}
SearchProductPageQueryBO convert(SearchProductPageReqDTO bean);
PageResult<SearchProductRespDTO> convertPage(PageResult<SearchProductBO> pageResult);
PageResult<SearchProductRespDTO> convertPage(PageResult<SearchProductBO> page);
SearchProductConditionRespDTO convert(SearchProductConditionBO bean);
}

View File

@@ -11,10 +11,13 @@ import cn.iocoder.mall.productservice.rpc.sku.dto.ProductSkuRespDTO;
import cn.iocoder.mall.productservice.rpc.spu.ProductSpuRpc;
import cn.iocoder.mall.productservice.rpc.spu.dto.ProductSpuRespDTO;
import cn.iocoder.mall.searchservice.convert.product.SearchProductConvert;
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 cn.iocoder.mall.searchservice.service.product.SearchProductService;
import cn.iocoder.mall.searchservice.service.product.bo.SearchProductBO;
import cn.iocoder.mall.searchservice.service.product.bo.SearchProductConditionBO;
import cn.iocoder.mall.searchservice.service.product.bo.SearchProductSaveBO;
import lombok.extern.slf4j.Slf4j;
import org.apache.dubbo.config.annotation.DubboReference;
@@ -48,6 +51,12 @@ public class SearchProductManager {
return SearchProductConvert.INSTANCE.convertPage(pageResult);
}
public SearchProductConditionRespDTO getSearchProductCondition(SearchProductConditionReqDTO conditionReqDTO) {
SearchProductConditionBO conditionBO =
searchProductService.getSearchProductCondition(conditionReqDTO.getKeyword(), conditionReqDTO.getFields());
return SearchProductConvert.INSTANCE.convert(conditionBO);
}
/**
* 重建所有商品的 ES 索引
*

View File

@@ -3,6 +3,8 @@ 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;
@@ -17,8 +19,13 @@ public class SearchProductRpcImpl implements SearchProductRpc {
private SearchProductManager searchProductManager;
@Override
public CommonResult<PageResult<SearchProductRespDTO>> pageSearchProduct(SearchProductPageReqDTO pageQueryReqDTO) {
return success(searchProductManager.pageSearchProduct(pageQueryReqDTO));
public CommonResult<PageResult<SearchProductRespDTO>> pageSearchProduct(SearchProductPageReqDTO pageReqDTO) {
return success(searchProductManager.pageSearchProduct(pageReqDTO));
}
@Override
public CommonResult<SearchProductConditionRespDTO> getSearchProductCondition(SearchProductConditionReqDTO conditionReqDTO) {
return success(searchProductManager.getSearchProductCondition(conditionReqDTO));
}
}