From 8c00bd0245ca4756ca04483a4980ad202714e43e Mon Sep 17 00:00:00 2001
From: zhaojs <349234519@qq.com>
Date: 星期四, 20 七月 2023 09:40:44 +0800
Subject: [PATCH] Merge branch 'release/v1.1.4发布'

---
 application/api/logic/taoke/Search.php |  134 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 133 insertions(+), 1 deletions(-)

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

--
Gitblit v1.9.3