黑马程序员技术交流社区
标题: 【郑州校区】Java之品优购课程讲义_day11(4) [打印本页]
作者: 谷粒姐姐 时间: 2018-9-25 14:15
标题: 【郑州校区】Java之品优购课程讲义_day11(4)
4.2 按上架时间排序
4.2.1 增加域定义
修改 solrhome 的 schema.xml 添加域定义
[AppleScript] 纯文本查看 复制代码
<field name="item_updatetime" type="date" indexed="true" stored="true" />
4.2.1 修改实体类
为 updatetime 属性添加注解
[AppleScript] 纯文本查看 复制代码
@Field("item_updatetime")
private Date updateTime;
4.2.1 重新运行导入程序
重新启动 solr
安装 pinyougou-pojo
重新运行 pinyougou-solr-util
4.2.2 修改页面
修改 search.html
[AppleScript] 纯文本查看 复制代码
<li>
<a href="#" ng-click="sortSearch('updatetime','DESC')">新品</a>
</li>
4.2 按销量排序(实现思路)
(1)增加域 item_salecount 用于存储每个 SKU 的销量数据
(2)编写定时器程序,用于更新每个 SKU 的销量数据(查询近 1 个月的销量数据,不是累计数据)
(3)定时器每天只需执行一次,可以设定为凌晨开始执行。定时器可以使用 spring task 技术来实现,学员们自行百度。
4.3 按评价排序(实现思路)
与按销量排序思路基本相同,有一个细节需要注意:
评论分为好评、中评、差评,我们不能简单地将评论数相加,而是应该根据每种评论加权进行统计。比如好评的权重是 3 ,中评的权重是 1,而差评的权重是 -3,这样得出的是评价的综合得分。
隐藏品牌列表
5.1 需求分析需求:如果用户输入的是品牌的关键字,则隐藏品牌列表
5.2 代码实现
(1)修改 searchController.js
[AppleScript] 纯文本查看 复制代码
//判断关键字是不是品牌
$scope.keywordsIsBrand=function(){
for(var i=0;i<$scope.resultMap.brandList.length;i++){
if($scope.searchMap.keywords.indexOf($scope.resultMap.brandList.text)>=0){//
如果包含
}
}
}
(2)修改页面
[AppleScript] 纯文本查看 复制代码
< div class="type-wrap logo" ng-if="resultMap.brandList!=null&& searchMap.brand=='' &&
keywordsIsBrand()==false">
<div class="fl key brand">品牌</div>
.........
</div>
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |