From 7ed6e5c827b302a7c91c5f16bcca67848a62bfd8 Mon Sep 17 00:00:00 2001
From: zhaojs <349234519@qq.com>
Date: 星期二, 22 八月 2023 14:06:27 +0800
Subject: [PATCH] no message

---
 application/api/logic/taoke/Search.php |   77 +++++++++++++++++---------------------
 1 files changed, 34 insertions(+), 43 deletions(-)

diff --git a/application/api/logic/taoke/Search.php b/application/api/logic/taoke/Search.php
index e0e446f..a80cda1 100644
--- a/application/api/logic/taoke/Search.php
+++ b/application/api/logic/taoke/Search.php
@@ -143,14 +143,15 @@
         //鏍规嵁浼犲叆鐨勫唴瀹硅皟鐢╝st鏂规硶
         $goods = $this->ast($content);
         $title = '';
+        $ogoods=[];
         $newGoods = [];
         //鍒ゆ柇goods鏄惁涓虹┖
         if(empty($goods)){
             $title = $content;
-            $newGoods=array_merge($newGoods,$goods);
         }
         else{
             $title = $goods['title'];
+            $ogoods=array_merge($ogoods,$goods);
         }
         //鏍规嵁$title鎼滅储鍚勫ぇ骞冲彴鐨勫晢鍝佸ぉ鐚紝娣樺疂锛屼含涓滆嚜钀ワ紝浜笢POP锛屾嫾澶氬锛屽敮鍝佷細锛屾姈闊�
         $LogicDingdanxia = new LogicDingdanxia();
@@ -158,6 +159,9 @@
         $LogicPdd = new LogicPdd();
         $LogicHaodanku = new LogicHaodanku();
         $LogicDataoke=new LogicDataoke();
+        // $c=$exclude_tb+$exclude_jd+$exclude_pdd+$exclude_dy;
+        // $pagesize=bcdiv(40,(4-$c)==0?1:(4-$c),0)+1;
+        $pagesize=10;
         //鏍规嵁鏍囬鏌ヨ澶╃尗鍟嗗搧
         $taobaoGoods = $LogicDataoke->superSearch($title,1,40,0,1);
         //鍘婚櫎閿�閲忎负0鐨勫晢鍝佸苟鎸夌収浠锋牸鎺掑簭
@@ -165,17 +169,11 @@
             return $v['monthSales'] > 0&&strstr($v['shopName'],'鏃楄埌搴�');
             unset($v);
         });
-        //鎸夌収浠锋牸鎺掑簭
-        $sort1 = array_column($tmGoods, 'actualPrice');
-        array_multisort($sort1, SORT_ASC, $tmGoods);
 
         $tmcsGoods=array_filter($taobaoGoods,function($v){
             return $v['monthSales'] > 0&&strstr($v['shopName'],'澶╃尗瓒呭競');
             unset($v);
         });
-        //鎸夌収浠锋牸鎺掑簭
-        $sort1 = array_column($tmcsGoods, 'actualPrice');
-        array_multisort($sort1, SORT_ASC, $tmcsGoods);
 
         //鏍规嵁鏍囬鏌ヨ浜笢鑷惀鍟嗗搧
         $jdGoods=$LogicJd->searchGoods($title,'desc','g',0,'match',1,40);
@@ -183,82 +181,73 @@
         $jdGoods = array_filter($jdGoods,function($v){
             return $v['monthSales'] > 0;
         });
-        //鎸夌収浠锋牸鎺掑簭
-        $sort1 = array_column($jdGoods, 'actualPrice');
-        array_multisort($sort1, SORT_ASC, $jdGoods);
 
         $ppdGoodes=[];
         $common_relation_id='168369887871568';
         //鏍规嵁鏍囬鏌ヨ鎷煎澶氬晢鍝�
         if(!empty($common_relation_id)){
-            $ppdGoodes=$LogicPdd->searchGoods($title,'',$common_relation_id,'',1,20,0,'');
+            $ppdGoodes=$LogicPdd->searchGoods($title,'',$common_relation_id,'',1,40,0,'');
             //鍘婚櫎閿�閲忎负0鐨勫晢鍝佸苟鎸夌収浠锋牸鎺掑簭
             $ppdGoodes = array_filter($ppdGoodes,function($v){
-                return $v['monthSales'] > 0;
+                return $v['monthSales'] > 0&&strstr($v['shopName'],'鏃楄埌搴�');
             });
-            //鎸夌収浠锋牸鎺掑簭
-            $sort1 = array_column($ppdGoodes, 'actualPrice');
-            array_multisort($sort1, SORT_ASC, $ppdGoodes);
         }
         
         //鏍规嵁鏍囬鏌ヨ鎶栭煶鍟嗗搧
-        $dyGoods =$LogicHaodanku->getDygoodsList('',$title,0,1,20);
+        $dyGoods =$LogicHaodanku->getDygoodsList('',$title,0,1,40);
         //鍘婚櫎閿�閲忎负0鐨勫晢鍝佸苟鎸夌収浠锋牸鎺掑簭
         $dyGoods = array_filter($dyGoods,function($v){
             return $v['monthSales'] > 0;
         });
-        //鎸夌収浠锋牸鎺掑簭
-        $sort1 = array_column($dyGoods, 'actualPrice');
-        array_multisort($sort1, SORT_ASC, $dyGoods);
-
-        $goodscount=count(array_slice($tmGoods,0,10))+count(array_slice($jdGoods,0,10))+count(array_slice($ppdGoodes,0,10))+count(array_slice($dyGoods,0,10))+count(array_slice($tmcsGoods,0,10));
+        $goodsList=[];
+        $goodscount=count(array_slice($tmGoods,0,$pagesize))+count(array_slice($jdGoods,0,$pagesize))+count(array_slice($ppdGoodes,0,$pagesize))+count(array_slice($dyGoods,0,$pagesize))+count(array_slice($tmcsGoods,0,$pagesize));
         if($goodscount<40){
             //濡傛灉goodscount涓嶆弧瓒�20鍒欎粠澶╃尗鍟嗗搧閲岃ˉ瓒�20
             $needcount=40-$goodscount+10;
             if($exclude_tb==0){
-                $newGoods =array_merge($newGoods,array_slice($tmGoods,0,10));
-                $newGoods =array_merge($newGoods,array_slice($tmcsGoods,0,10));
+                $goodsList =array_merge($goodsList,array_slice($tmGoods,0,$pagesize));
+                $goodsList =array_merge($goodsList,array_slice($tmcsGoods,0,$pagesize));
             }
             if($exclude_jd==0){
-                $newGoods =array_merge($newGoods,array_slice($jdGoods,0,10));
+                $goodsList =array_merge($goodsList,array_slice($jdGoods,0,$pagesize));
             }
             //鎸夌収浠锋牸鎺掑簭
-            if(count($newGoods)>0){
-                $sort1 = array_column($newGoods, 'actualPrice');
-                array_multisort($sort1, SORT_ASC, $newGoods);
+            if(count($goodsList)>0){
+               $sort1 = array_column($goodsList, 'actualPrice');
+               array_multisort($sort1, SORT_ASC, $goodsList);
             }
             if($exclude_pdd==0){
-                $newGoods =array_merge($newGoods,array_slice($ppdGoodes,0,10));
+                $goodsList =array_merge($goodsList,array_slice($ppdGoodes,0,$pagesize));
             }
             if($exclude_tb==0){
-                $newGoods =array_merge($newGoods,array_slice($taobaoGoods,0,$needcount));
+                $goodsList =array_merge($goodsList,array_slice($taobaoGoods,0,$needcount));
             }
             if($exclude_dy==0){
-                $newGoods =array_merge($newGoods,array_slice($dyGoods,0,10));
+                $goodsList =array_merge($goodsList,array_slice($dyGoods,0,$pagesize));
             }
         }
         else{
             if($exclude_tb==0){
-                $newGoods =array_merge($newGoods,array_slice($tmGoods,0,10));
-                $newGoods =array_merge($newGoods,array_slice($tmcsGoods,0,10));
+                $goodsList =array_merge($goodsList,array_slice($tmGoods,0,$pagesize));
+                $goodsList =array_merge($goodsList,array_slice($tmcsGoods,0,$pagesize));
             }
             if($exclude_jd==0){
-                $newGoods =array_merge($newGoods,array_slice($jdGoods,0,10));
+                $goodsList =array_merge($goodsList,array_slice($jdGoods,0,$pagesize));
             }
             //鎸夌収浠锋牸鎺掑簭
-            if(count($newGoods)>0){
-                $sort1 = array_column($newGoods, 'actualPrice');
-                array_multisort($sort1, SORT_ASC, $newGoods);
+            if(count($goodsList)>0){
+                $sort1 = array_column($goodsList, 'actualPrice');
+                array_multisort($sort1, SORT_ASC, $goodsList);
             }
             if($exclude_pdd==0){
-                $newGoods =array_merge($newGoods,array_slice($ppdGoodes,0,10));
+                $goodsList =array_merge($goodsList,array_slice($ppdGoodes,0,$pagesize));
             }
             if($exclude_dy==0){
-                $newGoods =array_merge($newGoods,array_slice($dyGoods,0,10));
+                $goodsList =array_merge($goodsList,array_slice($dyGoods,0,$pagesize));
             }
         }
         //濡傛灉杩樻槸涓嶆弧瓒�20鍒欎粠娣樺疂鍟嗗搧閲岃ˉ瓒�20
-        if(count($newGoods)<20){
+        if(count($goodsList)<40){
             if($exclude_tb==0){
                 $tbGoods = $LogicDataoke->superSearch($title,1,20,0,0);
                 //鍘婚櫎閿�閲忎负0鐨勫晢鍝佸苟鎸夌収浠锋牸鎺掑簭
@@ -268,14 +257,16 @@
                 //鎸夌収浠锋牸鎺掑簭
                 $sort1 = array_column($tbGoods, 'actualPrice');
                 array_multisort($sort1, SORT_ASC, $tbGoods);
-                $newGoods =array_merge($newGoods,array_slice($tbGoods,0,20));
+                $goodsList =array_merge($goodsList,array_slice($tbGoods,0,20));
             }
         }
-
+        //灏�$ogoods鎻掑叆鍒�$goodsList绗竴琛�
+        if(!empty($ogoods)){
+            array_unshift($goodsList,$ogoods);
+        }
         //鍙栧嚭鍓�20涓晢鍝�
-        $goodsList = array_slice($newGoods,0,40);
+        $goodsList = array_slice($goodsList,0,40);
         return $goodsList;
-
        
 
     }

--
Gitblit v1.9.3