Java之品优购课程讲义_day10(6)
2018-09-20 14:42
756 查看
过滤查询
7.1 需求分析
根据上一步构建的查询条件,实现分类、品×××和规格的过滤查询
7.1 代码实现
7.1.1 分类过滤
修改 pinyougou-search-service 工程的 SearchItemServiceImpl.java
7.1.1 品×××过滤
修改 pinyougou-search-service 工程的 SearchItemServiceImpl.java
7.1.1 规格过滤
实现思路:规格有多项,需要循环过滤。循环规格查询条件,根据 key 得到域名城,根据
value 设置过滤条件。
修改 pinyougou-search-service 工程的 SearchItemServiceImpl.java
根据分类查询品×××规格列表
7.1 需求分析
根据上一步构建的查询条件,实现分类、品×××和规格的过滤查询
7.1 代码实现
7.1.1 分类过滤
修改 pinyougou-search-service 工程的 SearchItemServiceImpl.java
/** *根据关键字搜索列表 *@param keywords *@return */ private Map searchList(Map searchMap){ .......
//1.1 关键字查询...... //1.2 按分类筛选 if(!"".equals(searchMap.get("category"))){ Criteria filterCriteria=new Criteria("item_category").is(searchMap.get("category")); FilterQuery filterQuery=new SimpleFilterQuery(filterCriteria); query.addFilterQuery(filterQuery); } //高亮显示处理..... }
7.1.1 品×××过滤
修改 pinyougou-search-service 工程的 SearchItemServiceImpl.java
/** *根据关键字搜索列表 *@param keywords *@return */ private Map searchList(Map searchMap){ .......
//1.1 关键字查询
.......
//1.2 按分类筛选
.......
//1.3 按品×××筛选
if(!"".equals(searchMap.get("brand"))){ Criteria filterCriteria=new
Criteria("item_brand").is(searchMap.get("brand"));
FilterQuery filterQuery=new SimpleFilterQuery(filterCriteria); query.addFilterQuery(filterQuery); } //高亮显示处理............... }
7.1.1 规格过滤
实现思路:规格有多项,需要循环过滤。循环规格查询条件,根据 key 得到域名城,根据
value 设置过滤条件。
修改 pinyougou-search-service 工程的 SearchItemServiceImpl.java
/** *根据关键字搜索列表 *@param keywords *@return */ private Map searchList(Map searchMap){ ...... //1.1 关键字查询 .... //1.2 按分类筛选 ..... //1.3 按品×××筛选 ...... //1.4 过滤规格
if(searchMap.get("spec")!=null){ Map<String,String> specMap= (Map) searchMap.get("spec"); for(String key:specMap.keySet() ){ Criteria filterCriteria=new Criteria("item_spec_"+key).is( specMap.get(key) ); FilterQuery filterQuery=new SimpleFilterQuery(filterCriteria); query.addFilterQuery(filterQuery); } } //高亮显示处理..... }
根据分类查询品×××规格列表
@Override public Map<String, Object> search(Map searchMap) { Map<String,Object> map=new HashMap<>(); //1.按关键字查询(高亮显示) ...... //2.根据关键字查询商品分类 ...... //3.查询品×××和规格列表 String categoryName=(String)searchMap.get("category"); if(!"".equals(categoryName)){//如果有分类名称 map.putAll(searchBrandAndSpecList(categoryName)); }else{//如果没有分类名称,按照第一个查询 if(categoryList.size()>0){ map.putAll(searchBrandAndSpecList(categoryList.get(0))); } } return map; }
相关文章推荐
- Java之品优购课程讲义_day10(4)
- Java之品优购课程讲义_day10(5)
- Java之品优购课程讲义_day10(1)
- Java之品优购课程讲义_day10(2)
- Java之品优购课程讲义_day20(4)
- Java之品优购课程讲义_day16(6)
- Java之品优购课程讲义_day19(6)
- Java之品优购课程讲义_day20(5)
- Java之品优购课程讲义_day19(9)
- Java之品优购课程讲义_day20(6)
- Java之品优购课程讲义_day17(2)
- Java之品优购课程讲义_day17(4)
- Java之品优购课程讲义_day18(3)
- Java之品优购课程讲义_day18(8)
- Java之品优购课程讲义_day08(7)
- Java之品优购课程讲义_day18(4)
- Java之品优购课程讲义_day18(10)
- Java之品优购课程讲义_day08(8)