Просмотр исходного кода

fix(merchant): 修复商品列表推荐逻辑避免分类筛选冲突

- 添加 cate_id 参数检查避免分类筛选时显示推荐商品
- 确保有分类筛选时不执行关键词匹配商品的随机混入逻辑
- 保持跨页去重功能在分类筛选场景下正常工作
shichen месяцев назад: 2
Родитель
Сommit
8b3107d6dd
1 измененных файлов с 2 добавлено и 1 удалено
  1. 2 1
      app/controller/api/store/merchant/Merchant.php

+ 2 - 1
app/controller/api/store/merchant/Merchant.php

@@ -172,7 +172,8 @@ class Merchant extends BaseController
172 172
         // 用户已登录且没有主动搜索时,将搜索关键词匹配的商品随机混入列表,保持每页商品数量不变
173 173
         // 跨页去重方案:一次性查询所有匹配商品形成"推荐池",按页码切片取不同子集
174 174
         $hasKeyword = !empty($params['keyword'] ?? '') || !empty($this->request->param('keyword', ''));
175
-        if (!is_null($this->userInfo) && !empty($result['list']) && !$hasKeyword) {
175
+        $hasCateId = !empty($params['cate_id'] ?? '') || !empty($this->request->param('cate_id', ''));
176
+        if (!is_null($this->userInfo) && !empty($result['list']) && !$hasKeyword && !$hasCateId) {
176 177
             try {
177 178
                 // 1. 获取用户最近的搜索关键词(SQL 层去重)
178 179
                 $searchKeywords = Db::name('user_visit')