From ef469c51ef6fec8986164471afb8f44a7d39dbeb Mon Sep 17 00:00:00 2001 From: zhaojs <349234519@qq.com> Date: 星期四, 29 六月 2023 14:29:50 +0800 Subject: [PATCH] Merge tag '618修复' into develop --- application/api/logic/taoke/device/Haodanku.php | 141 +++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 137 insertions(+), 4 deletions(-) diff --git a/application/api/logic/taoke/device/Haodanku.php b/application/api/logic/taoke/device/Haodanku.php index f32058c..5e7c5f4 100644 --- a/application/api/logic/taoke/device/Haodanku.php +++ b/application/api/logic/taoke/device/Haodanku.php @@ -4,7 +4,7 @@ use app\api\logic\taoke\Parser; use fast\Http; use think\Cache; - +use think\log; class Haodanku extends Parser { @@ -35,7 +35,10 @@ 'dy_goods_detail_url' => 'https://v2.api.haodanku.com/dy_detail', 'get_dyitem_link_url'=>'https://v2.api.haodanku.com/get_dyitem_link', 'dy_analyze_code_url'=>'https://v2.api.haodanku.com/dy_analyze_code', - 'tk_rest_url'=>'https://v3.api.haodanku.com/rest' + 'tk_rest_url'=>'https://v3.api.haodanku.com/rest', + 'jd_hot_rank_url'=>'http://v2.api.haodanku.com/jd_hot_rank', + 'dy_hot_rank_url'=>'https://v3.api.haodanku.com/dy_rankitem_list', + 'pdd_hot_rank_url'=>'http://v2.api.haodanku.com/pdd_hot_rank', ]; /** @@ -96,6 +99,7 @@ if(empty($result) || $result['code'] != 200) fault('杞摼澶辫触'); return $result['data']['url']; } + public function getShareLink($goods_id,$common_relation_id,$relation_id) @@ -173,6 +177,133 @@ } /** + * 浜笢姒滃崟锛堝疄鏃剁儹姒滐級 https://www.haodanku.com/Openapi/api_detail?id=52 + * + */ + public function getJdHotRank($cid,$mainid) + { + $send_data = [ + 'apikey' => $this->apikey, + 'sort'=>3, + 'min_id'=>$mainid, + 'cid'=>$cid + ]; + $result = send_get(self::request_url['jd_hot_rank_url'],$send_data); + if(empty($result) || $result['code'] != 200) return []; + + $goodsList = isset($result['data']) ? $result['data'] : []; + foreach($goodsList as &$goods){ + $goods = self::initJdGoodsFy($goods); + } + return $goodsList; + } + /** + * 鎶栭煶姒滃崟 https://www.haodanku.com/Openapi/api_detail?id=135 + * + */ + public function getDyHotRank($cid,$mainid) + { + $send_data = [ + 'apikey' => $this->apikey, + 'sort_id'=>1, + 'min_id'=>$mainid, + 'cate_id'=>$cid, + 'back'=>50 + ]; + $result = send_get(self::request_url['dy_hot_rank_url'],$send_data); + if(empty($result) || $result['code'] != 200) return []; + + $goodsList = isset($result['data']) ? $result['data'] : []; + foreach($goodsList as &$goods){ + $goods = self::initDyGoodsFy($goods); + } + return $goodsList; + } + + /** + * 鎷煎澶氭鍗� https://www.haodanku.com/Openapi/api_detail?id=53 + */ + + public function getPddHotRank($cid,$mainid) + { + $send_data = [ + 'apikey' => $this->apikey, + 'sort'=>1, + 'min_id'=>$mainid, + 'cid'=>$cid + ]; + $result = send_get(self::request_url['pdd_hot_rank_url'],$send_data); + if(empty($result) || $result['code'] != 200) return []; + + $goodsList = isset($result['data']) ? $result['data'] : []; + foreach($goodsList as &$goods){ + $goods = self::initPddGoodsFy($goods); + } + return $goodsList; + } + + public function initJdGoodsFy($goods) + { + if(empty($goods)) return []; + $init_goods = self::FqgoodsField(); + $init_goods['dtitle'] = isset($goods['goodsname']) ? $goods['goodsname'] : ''; + $init_goods['goodsid'] = isset($goods['skuid']) ? $goods['skuid'] : ''; + $init_goods['jiage'] = isset($goods['itemendprice']) ? $goods['itemendprice'] : ''; + $init_goods['mallDesc'] = isset($goods['shopname']) ? $goods['shopname'] : ''; + $init_goods['pic'] = isset($goods['itempic']) ? $goods['itempic'] : ''; + $init_goods['quanJine'] = isset($goods['couponmoney']) ? $goods['couponmoney'] : ''; + $init_goods['quanNum'] = isset($goods['couponnum']) ? $goods['couponnum'] : ''; + $init_goods['salesNum'] = isset($goods['itemsale']) ? $goods['itemsale'] : ''; + $init_goods['yuanjia'] = isset($goods['itemprice']) ? $goods['itemprice'] : ''; + $init_goods['fanli'] = self::rebate($goods["itemendprice"],$goods['commissionshare']/100); + $init_goods['topFanli'] = self::rebate($goods['itemendprice'],$goods['commissionshare']/100,self::$topFanliRate); + $init_goods['sourceType']='jd'; + return $init_goods; + } + + public function initDyGoodsFy($goods) + { + if(empty($goods)) return []; + $init_goods = self::FqgoodsField(); + $init_goods['dtitle'] = isset($goods['itemtitle']) ? $goods['itemtitle'] : ''; + $init_goods['goodsid'] = isset($goods['product_id']) ? $goods['product_id'] : ''; + $init_goods['goodsId'] = isset($goods['product_id']) ? $goods['product_id'] : ''; + $init_goods['jiage'] = isset($goods['itemendprice']) ? $goods['itemendprice'] : ''; + $init_goods['mallDesc'] = isset($goods['shop_name']) ? $goods['shop_name'] : ''; + $init_goods['pic'] = isset($goods['itempic']) ? $goods['itempic'] : ''; + $init_goods['quanJine'] = 0; + $init_goods['salesNum'] = isset($goods['sales']) ? $goods['sales'] : ''; + $init_goods['yuanjia'] = isset($goods['itemprice']) ? $goods['itemprice'] : ''; + $init_goods['fanli'] = self::rebate($goods["itemendprice"],$goods['dyrates']/100); + $init_goods['topFanli'] = self::rebate($goods['itemendprice'],$goods['dyrates']/100,self::$topFanliRate); + $init_goods['sourceType']='dy'; + return $init_goods; + } + + public function initPddGoodsFy($goods) + { + if(empty($goods)) return []; + $init_goods = self::FqgoodsField(); + $init_goods['dtitle'] = isset($goods['goodsname']) ? $goods['goodsname'] : ''; + $init_goods['goodsid'] = isset($goods['goods_id']) ? $goods['goods_id'] : ''; + $init_goods['goods_sign'] = isset($goods['goods_sign']) ? $goods['goods_sign'] : ''; + $init_goods['jiage'] = isset($goods['itemendprice']) ? $goods['itemendprice'] : ''; + $init_goods['mallDesc'] = '鎷煎澶�'; + $init_goods['pic'] = isset($goods['itempic']) ? $goods['itempic'] : ''; + $init_goods['quanJine'] = isset($goods['couponmoney']) ? $goods['couponmoney'] : ''; + $init_goods['quanNum'] = isset($goods['couponnum']) ? $goods['couponnum'] : ''; + $init_goods['salesNum'] = isset($goods['itemsale']) ? $goods['itemsale'] : ''; + $init_goods['yuanjia'] = isset($goods['itemprice']) ? $goods['itemprice'] : ''; + $init_goods['fanli'] = self::rebate($goods["itemendprice"],$goods['promotion_rate']/100); + $init_goods['topFanli'] = self::rebate($goods['itemendprice'],$goods['promotion_rate']/100,self::$topFanliRate); + $init_goods['sourceType']='pdd'; + + return $init_goods; + } + + + + /** * 鑾峰彇鎶栭煶鍟嗗搧璇︽儏https://www.haodanku.com/Openapi/api_detail?id=112 * * @param [type] $itemid @@ -185,9 +316,11 @@ 'apikey' => $this->apikey, ]; $result = send_get(self::request_url['dy_goods_detail_url'],$send_data); - if(empty($result) || $result['code'] != 200) fault('鏁版嵁鑾峰彇澶辫触'); + if(empty($result) || $result['code'] != 200) return []; $goods = isset($result['data'][0]) ? $result['data'][0] : []; + + if(empty($goods['product_id'])) return []; $goods = self::initDyDetailGoods($goods); @@ -593,7 +726,7 @@ 'back' => $pageSize ]; $result = send_get(self::request_url['dy_goods_url'],$send_data); - + log::write($result); if(empty($result) || $result['code'] != 200) fault('鏁版嵁鑾峰彇澶辫触'); $list = $result['data']; -- Gitblit v1.9.3