电商(9)
作者:互联网
电商第九天:
全文检索:
用户在前台页面数据检索条件,es 根据用户输入的检索条件检索出数据并显示到页面上!
页面需要显示的内容:
1. 显示skuLsInfo 的集合
gmall-list-web
a. 添加静态资源
b. 编写控制器
c. 测试并运行项目:测试是否能够跳转到商品详情页!
gmall-list-service,gmall-list-web,gmall-manage-service,gmall-item-web
d. 首页显示
首页页面数据,通常来讲是静态,
2. 显示平台属性平台属性值
baseAttrInfo,baseAttrValue
三级分类Id :catalog3Id
sql: SELECT * FROM base_attr_info bai ,base_attr_value bav WHERE bai.id = bav.attr_id AND bai.catalog3_id = 61;
全文检索:通过聚合平台属性值Id
sql:SELECT * from base_attr_value bav,base_attr_info bai WHERE bai.id=bav.attr_id AND bav.id in (163,164,165,168,170,171);
2.1 平台属性值过滤
分析:
1. 在用户点击平台属性值的时候,将平台属性值Id 传递给 url。
2. 在显示的时候,将对应的平台属性,平台属性值移除!
3. 面包屑
组成:平台属性:平台属性值 --- 集合
删除: 实质就是将url 后面的参数进行修改!
用户点击的平台属性值Id 与 参数后面的平台属性值Id 做比较,如果相等。则不拼接该平台属性值Id
1. href="list.html?urlParam" urlParam:表示最新的参数连接
2. 点击的时候,最新参数连接如何得到!
原来的:http://list.gmall.com/list.html?keyword=%E5%8D%8E%E4%B8%BA&valueId=163&valueId=170
点击:valueId=170 excludeValueIds
makeUrlParam(skuLsParams, valueId);
if(valueId=170 == valueId=170 ){
continue;
}
if (urlParam.length()>0){
urlParam += "&";
}
urlParam += "valueId="+valueId;
return urlParam;
http://list.gmall.com/list.html?keyword=%E5%8D%8E%E4%B8%BA&valueId=163
4. 分页显示
// 设置每页显示两条数据
skuLsParams.setPageSize(2);
放在第一行
5. 热度排名
热度排名:hotScore
记录用户访问商品的次数
计数器:用户看了一次,更新一次es 是么?不是嘛!
借助 redis 来记录商品被访问的次数,100 次,则写入一次es ,更新一次hotScore。
标签:urlParam,valueId,list,平台,gmall,电商,属性 来源: https://blog.csdn.net/weixin_44050355/article/details/100586879