"https://openapi.dataoke.com/api/goods/get-goods-details", 'cate_rank_url' => 'https://openapi.dataoke.com/api/subdivision/get-rank-list', 'cate_url' => 'https://openapi.dataoke.com/api/category/get-super-category', 'daily_explosion_url' => 'https://openapi.dataoke.com/api/goods/super-discount-goods', 'rank_url'=>'https://openapi.dataoke.com/api/goods/get-ranking-list', 'suggestion_url' => 'https://openapi.dataoke.com/api/goods/search-suggestion', 'hot_word_url' => 'https://openapi.dataoke.com/api/etc/search/list-hot-words', 'privilege_link_url' => 'https://openapi.dataoke.com/api/tb-service/get-privilege-link', 'ddq_url' => 'https://openapi.dataoke.com/api/category/ddq-goods-list', 'super_search_url' => 'https://openapi.dataoke.com/api/goods/list-super-goods', 'acrivity_link_url' => 'https://openapi.dataoke.com/api/tb-service/activity-link', 'op_goods_list_url' => 'https://openapi.dataoke.com/api/goods/nine/op-goods-list', 'brand_list_url' => 'https://openapi.dataoke.com/api/delanys/brand/get-column-list', 'goods_list' => 'https://openapi.dataoke.com/api/goods/get-goods-list', 'price_trend_url'=>'https://openapi.dataoke.com/api/goods/price-trend', 'album_url' => 'https://openapi.dataoke.com/api/album/album-list', 'album_goods_url'=>'https://openapi.dataoke.com/api/album/goods-list', 'fqb_url'=>'https://dtkapi.ffquan.cn/dtk_go_app_api/v1/page-goods-ranking', 'zsz_url'=>'https://dtkapi.ffquan.cn/dtk_go_app_api/v1/page-super-discount', 'xy_url'=>'https://v2.api.haodanku.com/makeup_items', 'friends-circle-list'=>'https://openapi.dataoke.com/api/goods/friends-circle-list', 'parse_url'=>'https://openapi.dataoke.com/api/dels/kit/contentParse', 'similer_url'=>'https://openapi.dataoke.com/api/goods/list-similer-goods-by-open', 'gift_money_url'=>'https://openapi.dataoke.com/api/goods/first-order-gift-money', 'bottom_price_url'=>'https://openapi.dataoke.com/api/goods/get-history-low-price-list', 'jdnines_url'=>'https://openapi.dataoke.com/api/dels/jd/column/list-nines' ]; const shop_type = ["0"=>"淘宝","1"=>"天猫","2"=>"天猫超市","3"=>"天猫国际"]; public function __construct() { parent::__construct(); $this->config = config('site.dataoke'); $this->appKey = $this->config['appKey']; $this->version = $this->config['version']; $this->appSecret = $this->config['appSecret']; if(empty($this->appKey)) return fault('配置信息错误'); } /** * 签名参数 * @param $data * @return string */ public function makeSign($timer, $nonce) { return strtoupper(md5('appKey=' . $this->appKey . '&timer=' . $timer. '&nonce='.$nonce.'&key='. $this->appSecret)); } /** * 统一生成参数 * * @param [type] $params * @return void */ private function setParams($params = []) { //毫秒级时间戳 list($msec, $sec) = explode(' ', microtime()); $timer = (float)sprintf('%.0f', (floatval($msec) + floatval($sec)) * 1000); //6位随机数 $nonce = rand(100000, 999999); $version = isset($params['version']) ? $params['version'] : $this->version; //默认必传参数 $data = [ 'appKey' => $this->appKey, 'version' => $version, 'timer' => $timer, 'nonce' => $nonce, ]; //加密的参数 if ($params) { $data = array_merge($params, $data); } $data['signRan'] = $this->makeSign($timer, $nonce); return $data; } /** * 京东9.9包邮 https://www.dataoke.com/pmc/api-d.html?id=66 * */ public function jdNine($pageId,$pageSize) { $params = $this->setParams(['pageId'=>$pageId,'pageSize' => $pageSize]); $result = send_get(self::request_url['jdnines_url'],$params); if(empty($result) || $result['code'] != 0) return []; $list = $result['data']['list']; $list_new=[]; if(!empty($list)){ foreach($list as &$goods){ $goods = self::initJdGoods($goods); array_push($list_new,$goods); } } return $list_new; } /** * 大淘客疯抢榜 * */ public function fqbGoodsList($cid,$type,$pid) { $params = $this->setParams(['cId'=>$cid,'type'=>$type,'app_key'=>$pid]); $result = send_get(self::request_url['fqb_url'],$params); if(empty($result) || $result['code'] != 1) return []; $list = $result['data']['data']; if(!empty($list)){ foreach($list as &$goods){ $goods = self::GetGoodsFy($goods,$goods["jiage"],$goods["yongjin"]/100); } } $result['data']['data']=$list; return $result; } /** * *折上折单页接口 */ public function zszGoodsList($cid,$appkey) { $params = $this->setParams(['cId'=>$cid,'app_key'=>$appkey]); $result = send_get(self::request_url['zsz_url'],$params); if(empty($result) || $result['code'] != 1) return []; $list = $result['data']['data']['list']; if(!empty($list)){ foreach($list as &$goods){ $goods = self::GetGoodsFy($goods,$goods["jiage"],$goods["yongjin"]/100); } } $result['data']['data']['list']=$list; return $result; } /** * *小样单页接口 */ public function xyGoodsList($apikey,$keyword,$min_id,$back) { $params = $this->setParams(['apikey'=>$apikey,'keyword'=>$keyword,'min_id'=>$min_id,'back'=>$back]); $result = send_get(self::request_url['xy_url'],$params); if(empty($result) || $result['code'] != 200) return []; $list = $result['data']; if(!empty($list)){ foreach($list as &$goods){ $goods = self::GetGoodsFy($goods,$goods["itemendprice"],$goods["tkrates"]); } } $result['data']=$list; return $result; } /** * 历史新低商品 */ public function bottomPrice($pageSize,$pageId,$cids,$sort) { if($cids==0) { $cids=""; } $params_data = [ 'pageSize'=>$pageSize, 'pageId' =>$pageId, 'cids' => $cids, 'sort'=>$sort ]; $params = $this->setParams($params_data); $result = send_get(self::request_url['bottom_price_url'],$params); if(empty($result) || $result['code'] != 0) return []; $list = $result['data']['list']; if(!empty($list)){ foreach($list as &$goods){ $goods = self::GetGoodsFy($goods,$goods["actualPrice"],$goods["commissionRate"]); } } $result['data']['list']=$list; return $result; } /** * 获取专辑列表 * * @param [type] $albumType * @param integer $sort * @param [type] $page * @param [type] $pageSize * @return void */ public function albumList($albumType,$sort=0,$page,$pageSize) { $params = $this->setParams(['albumType'=>$albumType,'sort'=>$sort,'pageId'=>$page,'pageSize'=>$pageSize]); $result = send_get(self::request_url['album_url'],$params); if(empty($result) || $result['code'] != 0) return []; return $result['data']['list']; } /** * 单个专辑商品列表 https://www.dataoke.com/kfpt/api-d.html?id=54 * * @return void */ public function albumGoodsList($albumId) { $params = $this->setParams(['albumId'=>$albumId]); $result = send_get(self::request_url['album_goods_url'],$params); if(empty($result) || $result['code'] != 0) return []; if(!isset($result['data']['goodsList'])) return []; $list = $result['data']['goodsList']; if(!empty($list)){ foreach($list as &$goods){ $goods = self::initGoods($goods); } } return $list; } /** * 淘系商品历史券后价 https://www.dataoke.com/pmc/api-d.html?id=36 * * @param [type] $id 在大淘客的在线商品id * @param [type] $goodsId 淘宝商品id * @return void */ public function getPriceTrend($id,$goodsId) { $params = $this->setParams(['id'=>$id,'goodsId' => $goodsId]); $result = send_get(self::request_url['price_trend_url'],$params); $qushi = [ 'dateList' => [], 'priceList' => [], ]; if(empty($result) || $result['code'] != 0) return ['goodsInfo' => [],'qushi'=>$qushi]; $info = $result['data']; $goods = []; if(!empty($info)){ $tmp = end($info['historicalPrice']); $info['actualPrice'] = isset($tmp['actualPrice']) ? $tmp['actualPrice'] : 0; $goods = self::initGoods($info); foreach($info['historicalPrice'] as $key => $item){ $qushi['dateList'][] = date("Ymd",strtotime($item['date'])); $qushi['priceList'][] = $item['actualPrice']; } } return ['goodsInfo' => $goods,'qushi'=>$qushi]; } /** * 获取商品列表 https://www.dataoke.com/pmc/api-d.html?id=5 * * @param [type] $cids 分类ID * @param [type] $sort 排序 排序方式,默认为0,0-综合排序,1-商品上架时间从高到低,2-销量从高到低,3-领券量从高到低,4-佣金比例从高到低,5-价格(券后价)从高到低,6-价格(券后价)从低到高,7-券金额从高到底 * @param mixed 大淘客的二级类目id,通过超级分类API获取。仅允许传一个二级id,当一级类目id和二级类目id同时传入时,会自动忽略二级类目id * @return void */ public function getGoodsList($cids,$subcid,$sort=0,$page = 1,$page_size,$tchaoshi=0,$secrend_search=0,$couponPriceLowerLimit="") { $params = $this->setParams(['cids'=>$cids,'tchaoshi'=>$tchaoshi,'subcid'=>$subcid,'sort'=>$sort,'pageId'=>$page,'pageSize'=>$page_size]); if($secrend_search>0) {//有二级筛选 switch($secrend_search) { case 1://60天最低价 $params['lowestPrice']=1; break; case 2://聚划算 $params['juHuaSuan']=1; break; case 3://淘抢购 $params['taoQiangGou']=1; break; case 4://多买多送 $params['specialId']=2; break; case 5://限量抢购 $params['specialId']=3; break; case 6://额外满减 $params['specialId']=4; break; default: break; } } if(!empty($couponPriceLowerLimit)) { $params['couponPriceLowerLimit']=$couponPriceLowerLimit; } $result = send_get(self::request_url['goods_list'],$params); if(empty($result) || $result['code'] != 0) return []; $list = $result['data']['list']; if(!empty($list)){ foreach($list as &$goods){ $goods = self::initGoods($goods); } } return $list; } /** * 品牌栏目 https://www.dataoke.com/kfpt/api-d.html?id=44 * * @param [type] $cid * @param integer $page * @param [type] $pageSize * @return void */ public function getBrandList($cid,$page = 1,$page_size) { $params = $this->setParams(['cid'=>$cid,'pageId'=>$page,'pageSize'=>$page_size]); dump($params);exit; $result = send_get(self::request_url['brand_list_url'],$params); if(empty($result) || $result['code'] != 0) return []; $list = $result['data']['lists']; if(!empty($list)){ foreach($list as &$brand){ if(!empty($brand['goodsList'])){ foreach($brand['goodsList'] as &$goods){ $goods = self::initGoods($goods); } } } } return $list; } /** * 9.9包邮精选 https://www.dataoke.com/kfpt/api-d.html?id=15 * * @param [type] $nineCid 9.9精选的类目id,分类id请求详情:-1-精选,1 -5.9元区,2 -9.9元区,3 -19.9元区(调整字段) * @return void */ public function getOpGoodsList($nineCid,$page = 1,$page_size,$excludecid=[]) { $params = $this->setParams(['version'=>'v3.0.0','nineCid'=>$nineCid,'pageId'=>$page,'pageSize'=>$page_size]); $result = send_get(self::request_url['op_goods_list_url'],$params); if(empty($result) || $result['code'] != 0) return []; $list = $result['data']['list']; $list_new=[]; if(!empty($list)){ foreach($list as &$goods){ //排除指定分类 if(!empty($excludecid) && in_array($goods['cid'],$excludecid)) continue; $goods = self::initGoods($goods); array_push($list_new,$goods); } } return $list_new; } /** * 官方活动会场转链 https://www.dataoke.com/kfpt/api-d.html?id=31 * * * @param [type] $promotionSceneId 联盟官方活动ID,从联盟官方活动页获取或从大淘客官方活动推广接口获取 * @return void */ public function acrivityLink($promotionSceneId,$relationId) { $params = $this->setParams(['version'=>'v1.0.0','promotionSceneId'=>$promotionSceneId,'relationId'=>$relationId]); $result = send_get(self::request_url['acrivity_link_url'],$params); if(empty($result) || $result['code'] != 0) return []; $result['data']['app_id'] = 'gh_6506303a12bb'; //饿了么小程序原始ID return $result['data']; } /** * 超级搜索 https://www.dataoke.com/pmc/api-d.html?id=14 * * @return void */ public function superSearch($keyWords,$page = 1,$page_size,$sort,$tmall=0) { $params = $this->setParams(['type'=>"0",'keyWords'=>$keyWords,'type'=>0,'pageId'=>$page,'pageSize'=>$page_size,'sort'=>$sort,'tmall'=>$tmall]); $result = send_get(self::request_url['super_search_url'],$params); if(empty($result) || $result['code'] != 0) return []; $list = $result['data']['list']; if(!empty($list)){ foreach($list as &$goods){ $goods = self::initGoods($goods); } } return $list; } /** * 获取商品详情信息 https://www.dataoke.com/kfpt/api-d.html?id=8 * * @param [type] $goods_id 商品id * @return void */ public function getGoodsDetail($goods_id) { $params = $this->setParams(['goodsId'=>$goods_id]); $result = send_get(self::request_url['goods_detail_url'],$params); if(empty($result) || $result['code'] != 0) fault('商品信息获取失败'); $goods = $result['data']; $goods = self::initGoods($goods); self::browseLog($goods); return $goods; } /** * 高佣反链 https://www.dataoke.com/kfpt/api-d.html?id=7 */ public function getPrivilegeLlink($goods_id,$channelId) { $params_data = [ 'goodsId'=>$goods_id, 'pid' => MOBILE_INFO == "IOS" ? config('site.taobao_pid')['ios_pid'] : config('site.taobao_pid')['android_pid'], 'channelId' => $channelId ]; $params = $this->setParams($params_data); //dump($params); $result = send_get(self::request_url['privilege_link_url'],$params); //dump($result);exit; if(empty($result) || $result['code'] != 0) fault('券链接获取失败'); $info = $result['data']; $info["tpwd"]= $info['longTpwd']; // $info["link"]= $info['shortUrl']; $info['kuaiZhanUrl'] = isset($info['kuaiZhanUrl']) ? $info['kuaiZhanUrl'] : ''; return $info; } /** * 细分类目榜 https://www.dataoke.com/kfpt/api-d.html?id=41 * * @param [type] $subdivisionId 细分类目榜分类id * @return void */ public function getRankList($subdivisionId) { $params = $this->setParams(['subdivisionId'=>$subdivisionId]); $result = send_get(self::request_url['cate_rank_url'],$params); if(empty($result) || $result['code'] != 0) return []; $list = $result['data']; if(!empty($list)){ foreach($list as &$goods){ $goods = self::initGoods($goods); } } return $list; } /** * 获取淘宝分类 * * @param [type] $level 分类等级1级2级 * @param [type] $cate_id 父级别id level为2时使用 * @return void */ public function getCate($level,$cate_id = "") { $params = $this->setParams(); $result = send_get(self::request_url['cate_url'],$params); if(empty($result) || $result['code'] != 0) return []; $list = $result['data']; $cate_list = []; if(!empty($list)){ foreach($list as $cate){ if($level == 2 && !empty($cate_id)){ if($cate['cid'] == $cate_id){ foreach($cate['subcategories'] as $item){ $tmp = [ 'id' => $item['subcid'], 'name' => $item['subcname'], 'cpic' => $item['scpic'] ]; array_push($cate_list,$tmp); } } }else{ $tmp = [ 'id' => $cate['cid'], 'name' => $cate['cname'], 'cpic' => $cate['cpic'] ]; array_push($cate_list,$tmp); } } } return $cate_list; } /** * 每日爆款 https://www.dataoke.com/pmc/api-d.html?id=39 * * @param [type] $cate_id 分类id * @param integer $page * @param [type] $page_size * @return void */ public function dailyExplosion($cate_id="",$page = 1,$page_size) { $params = $this->setParams(['cate_id'=>$cate_id,'pageId'=>$page,'pageSize'=>$page_size]); $result = send_get(self::request_url['daily_explosion_url'],$params); if(empty($result) || $result['code'] != 0) return []; $list = $result['data']['list']; if(!empty($list)){ foreach($list as &$goods){ $goods = self::initGoods($goods); } } return $list; } /** * 各大榜单 https://www.dataoke.com/pmc/api-d.html?id=6 * * @param [type] $rankType 榜单类型,1.实时榜 2.全天榜 3.热推榜 5.热词飙升榜 6.热词排行榜 7.综合热搜榜 * @param [type] $cate_id 大淘客一级类目id,仅对实时榜单、全天榜单有效 * @param integer $page * @param [type] $page_size * @return void */ public function getRank($rankType,$cate_id="",$page = 1,$page_size = 10) { $params = $this->setParams(['rankType'=>$rankType,'cid'=>$cate_id,'pageId'=>$page,'pageSize'=>$page_size]); $result = send_get(self::request_url['rank_url'],$params); if(empty($result) || $result['code'] != 0) fault('数据获取失败'); $list = $result['data']; if(!empty($list)){ foreach($list as &$goods){ $goods = self::initGoods($goods); } } return $list; } /** * 咚咚抢 https://www.dataoke.com/kfpt/api-d.html?id=23 * * @return void */ public function getDdqGoods($roundTime = "") { $params = []; if(!empty($roundTime)) $params['roundTime'] = $roundTime; $params = $this->setParams($params); $result = send_get(self::request_url['ddq_url'],$params); if(empty($result) || $result['code'] != 0) fault('数据获取失败'); $list = $result['data']['goodsList']; if(!empty($list)){ foreach($list as &$goods){ $goods = self::initGoods($goods); } } return ['list'=>$list,'ddqTime'=>date('H',strtotime($result['data']['ddqTime']))]; } /** * 联想词 https://www.dataoke.com/kfpt/api-d.html?id=18 * * @param [type] $keyWords * @return void */ public function getSuggestion($keyWords) { $params = $this->setParams(['keyWords'=>$keyWords,'type'=>3]); $result = send_get(self::request_url['suggestion_url'],$params); if(empty($result) || $result['code'] != 0) return fault($result['msg']); $list = $result['data']; if(empty($list)) return []; return $list; } /** * 热搜榜 https://www.dataoke.com/kfpt/api-d.html?id=61 * * @return void */ public function getHotWord() { $params = $this->setParams(); $result = send_get(self::request_url['hot_word_url'],$params); if(empty($result) || $result['code'] != 0) fault($result['msg']); $list = $result['data']; if(empty($list)) return []; $LogicHaodanku = new LogicHaodanku(); foreach($list as &$theme){ $goods_list = $LogicHaodanku->searchGoods($theme['words'],'','','',1,5); if(count($goods_list) > 3)$goods_list = array_slice($goods_list,0,3); $theme['goods_list'] = $goods_list; } return $list; } /** * 获取商品分佣信息 * */ private static function GetGoodsFy($goods,$actprice,$rate) { //计算返利金额 $goods['fanli'] = self::rebate($actprice,$rate); $goods['topFanli'] = self::rebate($actprice,$rate,self::$topFanliRate); return $goods; } /** * 朋友圈文案 https://www.dataoke.com/kfpt/api-d.html?id=62 * * @param integer $page * @param [type] $page_size * @return void */ public function getFriendscircles($page = 1,$page_size = 10,$cid,$sort){ $params = $this->setParams(['pageId'=>$page,'pageSize'=>$page_size,'cid'=>$cid,'sort'=>$sort]); $result = send_get(self::request_url['friends-circle-list'],$params); if(empty($result) || $result['code'] != 0) fault($result['msg']); $list = $result['data']; if(empty($list)) return []; if(!empty($list)){ foreach($list['list'] as &$goods){ $goods = self::GetGoodsFy($goods,$goods["actualPrice"],$goods["commissionRate"]/100); } } return $list; } /** * 剪切板识别 https://www.dataoke.com/kfpt/api-d.html?id=80 * * @param [type] $url * @return void */ public function zhuanlian($url) { $params = $this->setParams(['content'=>$url]); $result = send_get(self::request_url['parse_url'],$params); if(empty($result) || $result['code'] != 0) return []; $list = $result['data']; $goods_id=$list["itemId"]; $params = $this->setParams(['goodsId'=>$goods_id]); $result2 = send_get(self::request_url['goods_detail_url'],$params); if(empty($result2) || $result2['code'] != 0) return []; $goods = $result2['data']; $goods = self::initGoods($goods); return $goods; } /** * 猜你喜欢商品 https://www.dataoke.com/pmc/api-d.html?id=16 * * @param [type] $goodsId * @param [type] $page_size 每页数据 * @return void */ public function getSimilarInfo($goods_id,$page_size) { $params = $this->setParams(['id'=>$goods_id,'size'=>$page_size]); $result = send_get(self::request_url['similer_url'],$params); if(empty($result) || $result['code'] != 0) return []; $list = $result['data']; if(!empty($list)){ foreach($list as &$goods){ $goods = self::initGoods($goods); } } return $list; } /** * 淘礼金商品 https://www.dataoke.com/kfpt/api-d.html?id=29 * * @param [type] $page * @param [type] $page_size * @return void */ public function GetFirstOrderGiftMoney($pageSize,$pageId) { log::write($pageSize); $params = $this->setParams(['pageSize'=>$pageSize,'pageId'=>$pageId]); $result = send_get(self::request_url['gift_money_url'],$params); if(empty($result) || $result['code'] != 0) return []; $list = $result['data']; if(!empty($list)){ foreach($list as &$goods){ // log::write($goods); // if((double)$goods['firstOrderAmount']<4){ // //删除佣金小于4的商品 // $list=array_diff_key($data, ['id'=>$goods['id']]); // } } } return $list; } /** * 京东数据 */ private static function initJdGoods($goods) { if(empty($goods)) return []; $init_goods = self::goodsField(); $init_goods['id'] = isset($goods['skuId']) ? $goods['skuId'] : ''; $init_goods['goodsId'] =(isset($goods['skuId']) && !empty($goods['skuId']) ? $goods['skuId'] : (isset($goods['skuId']) ? $goods['skuId'] : '')); //商品id $init_goods['itemLink'] = isset($goods['materialUrl']) ? $goods['materialUrl'] : ''; //商品链接 $init_goods['title'] = isset($goods['skuName']) ? $goods['skuName'] : ''; //商品标题 $init_goods["dtitle"] = isset($goods['skuName']) ? $goods['skuName'] : ''; //短标题 if(empty($init_goods['dtitle'])) $init_goods['skuName'] = $init_goods['skuName']; $init_goods["actualPrice"] = isset($goods['actualPrice']) ? $goods['actualPrice'] : ''; //券后价 $init_goods["originalPrice"] = isset($goods['originPrice']) ? $goods['originPrice'] : ''; //商品原价 if(isset($goods['originPrice']))$init_goods["originPrice"] = $goods['originPrice']; $init_goods["sellerId"] = isset($goods['shopId']) ? $goods['shopId'] : ''; //店铺Id $init_goods["shopName"] = isset($goods['shopName']) ? $goods['shopName'] : ''; //店铺名称 //$init_goods['shopLogo'] = isset($goods['shopLogo']) ? $goods['shopLogo'] : ''; //$init_goods['shopLevel'] = isset($goods['shopLevel']) ? $goods['shopLevel'] : ''; //店铺等级 $init_goods['descScore'] = isset($goods['goodsCommentShare']) ? $goods['goodsCommentShare'] : ''; //描述分 //$init_goods['dsrScore'] = isset($goods['dsrScore']) ? $goods['dsrScore'] : ''; //描述相符 //$init_goods['dsrPercent'] = isset($goods['dsrPercent']) ? $goods['dsrPercent'] : ''; //描述同行比 //$init_goods['shipScore'] = isset($goods['shipScore']) ? $goods['shipScore'] : ''; //物流服务 //$init_goods['serviceScore'] = isset($goods['serviceScore']) ? $goods['serviceScore'] : ''; //服务态度 $init_goods["couponPrice"] = isset($goods['couponAmount']) ? $goods['couponAmount'] : ''; //优惠券金额 $init_goods["monthSales"] = isset($goods['inOrderCount30Days']) ? format_number($goods['inOrderCount30Days']) : 0; //30天销量 $init_goods['twoHoursSales'] = isset($goods['inOrderCount30Days']) ? format_number($goods['inOrderCount30Days']) : 0; // //$init_goods['specialText'] = isset($goods['specialText']) ? $goods['specialText'] : []; $init_goods["mainPic"] = isset($goods['picMain']) ? $goods['picMain'] : ''; //商品主图 //$init_goods["video"] = isset($goods['video']) ? $goods['video'] : ''; //商品视频 $init_goods['couponLink'] = isset($goods['couponLink']) ? $goods['couponLink'] : ''; //优惠券链接 $init_goods['couponEndTime'] = isset($goods['couponEndTime']) && !empty($goods['couponEndTime']) ? date('Y-m-d',strtotime($goods['couponEndTime'])) : ''; //优惠券结束时间 $init_goods['couponStartTime'] = isset($goods['couponStartTime']) && !empty($goods['couponStartTime']) ? date('Y-m-d',strtotime($goods['couponStartTime'])) : ''; //优惠券开始时间 //if(isset($goods['tchaoshi']) && $goods['tchaoshi'] == 1)$goods['shopType'] = 2; //天猫超市 $init_goods['sourceType'] = "jd"; /* if(isset($goods['shopType'])){ $init_goods['shopType'] = isset(self::shop_type[$goods['shopType']]) ? self::shop_type[$goods['shopType']] : "未知"; //店铺类型 switch($goods['shopType']){ case 1 : $init_goods['sourceType'] = "tm"; break; case 2 : $init_goods['sourceType'] = "tmshop"; break; case 3 : $init_goods['sourceType'] = "tminte"; break; } } */ $init_goods['desc'] = isset($goods['extensionContent']) ? $goods['extensionContent'] : ''; //推广文案 $init_goods['imgs'] = isset($goods['smallImages']) ? $goods['smallImages'] : []; empty($goods['smallImages'])&& $init_goods['smallImages'] =explode(",",$goods['smallImages']); //!empty($goods['reimgs']) && $init_goods['reimgs'] = explode(",",$goods['reimgs']); if(!empty($goods['detailPics'])){ $detailPics = json_decode($goods['detailPics'],true); if($detailPics){ $tmp = []; foreach($detailPics as $key => $img){ array_push($tmp,$img['img']); } $init_goods['detailPics'] = $tmp; } }else{ $init_goods['detailPics'] = $init_goods['imgs']; } $init_goods['faction']='j'; /* $init_goods['isSubdivision'] = isset($goods['isSubdivision']) ? $goods['isSubdivision'] : 0; // 该商品是否有细分类目 $init_goods['subdivisionId'] = isset($goods['subdivisionId']) ? $goods['subdivisionId'] : ''; //该商品所属细分类目id $init_goods['subdivisionName'] = isset($goods['subdivisionName']) ? $goods['subdivisionName'] : ''; //该商品所属细分类目名称 $init_goods['subdivisionRank'] = isset($goods['subdivisionRank']) ? $goods['subdivisionRank'] : ''; //该商品所属细分类目排名 */ $init_goods['labelImg'] = self::initSourse($init_goods['sourceType']); //计算返利金额 $init_goods['fanli'] = self::rebate($goods['actualPrice'],$goods['commissionShare']/100); $init_goods['topFanli'] = self::rebate($goods['actualPrice'],$goods['commissionShare']/100,self::$topFanliRate); $init_goods['isCollect'] = self::isCollect($init_goods); return $init_goods; } /** * 格式化商品信息 * * @param [type] $goods * @return void */ private static function initGoods($goods) { if(empty($goods)) return []; $init_goods = self::goodsField(); $init_goods['id'] = isset($goods['id']) ? $goods['id'] : ''; $init_goods['goodsId'] =(isset($goods['goodsSign']) && !empty($goods['goodsSign']) ? $goods['goodsSign'] : (isset($goods['goodsId']) ? $goods['goodsId'] : '')); //商品id $init_goods['itemLink'] = isset($goods['itemLink']) ? $goods['itemLink'] : ''; //商品链接 $init_goods['title'] = isset($goods['title']) ? $goods['title'] : ''; //商品标题 $init_goods["dtitle"] = isset($goods['dtitle']) ? $goods['dtitle'] : ''; //短标题 if(empty($init_goods['dtitle'])) $init_goods['dtitle'] = $init_goods['title']; $init_goods["actualPrice"] = isset($goods['actualPrice']) ? $goods['actualPrice'] : ''; //券后价 $init_goods["originalPrice"] = isset($goods['originalPrice']) ? $goods['originalPrice'] : ''; //商品原价 if(isset($goods['originPrice']))$init_goods["originalPrice"] = $goods['originPrice']; $init_goods["sellerId"] = isset($goods['sellerId']) ? $goods['sellerId'] : ''; //店铺Id $init_goods["shopName"] = isset($goods['shopName']) ? $goods['shopName'] : ''; //店铺名称 $init_goods['shopLogo'] = isset($goods['shopLogo']) ? $goods['shopLogo'] : ''; $init_goods['shopLevel'] = isset($goods['shopLevel']) ? $goods['shopLevel'] : ''; //店铺等级 $init_goods['descScore'] = isset($goods['descScore']) ? $goods['descScore'] : ''; //描述分 $init_goods['dsrScore'] = isset($goods['dsrScore']) ? $goods['dsrScore'] : ''; //描述相符 $init_goods['dsrPercent'] = isset($goods['dsrPercent']) ? $goods['dsrPercent'] : ''; //描述同行比 $init_goods['shipScore'] = isset($goods['shipScore']) ? $goods['shipScore'] : ''; //物流服务 $init_goods['serviceScore'] = isset($goods['serviceScore']) ? $goods['serviceScore'] : ''; //服务态度 $init_goods["couponPrice"] = isset($goods['couponPrice']) ? $goods['couponPrice'] : ''; //优惠券金额 $init_goods["monthSales"] = isset($goods['monthSales']) ? format_number($goods['monthSales']) : 0; //30天销量 $init_goods['twoHoursSales'] = isset($goods['twoHoursSales']) ? format_number($goods['twoHoursSales']) : 0; // $init_goods['specialText'] = isset($goods['specialText']) ? $goods['specialText'] : []; $init_goods["mainPic"] = isset($goods['mainPic']) ? $goods['mainPic'] : ''; //商品主图 $init_goods["video"] = isset($goods['video']) ? $goods['video'] : ''; //商品视频 $init_goods['couponLink'] = isset($goods['couponLink']) ? $goods['couponLink'] : ''; //优惠券链接 $init_goods['couponEndTime'] = isset($goods['couponEndTime']) && !empty($goods['couponEndTime']) ? date('Y-m-d',strtotime($goods['couponEndTime'])) : ''; //优惠券结束时间 $init_goods['couponStartTime'] = isset($goods['couponStartTime']) && !empty($goods['couponStartTime']) ? date('Y-m-d',strtotime($goods['couponStartTime'])) : ''; //优惠券开始时间 if(isset($goods['tchaoshi']) && $goods['tchaoshi'] == 1)$goods['shopType'] = 2; //天猫超市 $init_goods['sourceType'] = "tb"; if(isset($goods['shopType'])){ $init_goods['shopType'] = isset(self::shop_type[$goods['shopType']]) ? self::shop_type[$goods['shopType']] : "未知"; //店铺类型 switch($goods['shopType']){ case 1 : $init_goods['sourceType'] = "tm"; break; case 2 : $init_goods['sourceType'] = "tmshop"; break; case 3 : $init_goods['sourceType'] = "tminte"; break; } } $init_goods['desc'] = isset($goods['desc']) ? $goods['desc'] : ''; //推广文案 !empty($goods['imgs']) && $init_goods['imgs'] = explode(",",$goods['imgs']); empty($goods['imgs'])&& $init_goods['imgs'] =explode(",",$goods['mainPic']); !empty($goods['reimgs']) && $init_goods['reimgs'] = explode(",",$goods['reimgs']); if(!empty($goods['detailPics'])){ $detailPics = json_decode($goods['detailPics'],true); if($detailPics){ $tmp = []; foreach($detailPics as $key => $img){ array_push($tmp,$img['img']); } $init_goods['detailPics'] = $tmp; } }else{ $init_goods['detailPics'] = $init_goods['imgs']; } $init_goods['isSubdivision'] = isset($goods['isSubdivision']) ? $goods['isSubdivision'] : 0; // 该商品是否有细分类目 $init_goods['subdivisionId'] = isset($goods['subdivisionId']) ? $goods['subdivisionId'] : ''; //该商品所属细分类目id $init_goods['subdivisionName'] = isset($goods['subdivisionName']) ? $goods['subdivisionName'] : ''; //该商品所属细分类目名称 $init_goods['subdivisionRank'] = isset($goods['subdivisionRank']) ? $goods['subdivisionRank'] : ''; //该商品所属细分类目排名 $init_goods['labelImg'] = self::initSourse($init_goods['sourceType']); //计算返利金额 $init_goods['fanli'] = self::rebate($goods['actualPrice'],$goods['commissionRate']/100); $init_goods['topFanli'] = self::rebate($goods['actualPrice'],$goods['commissionRate']/100,self::$topFanliRate); $init_goods['isCollect'] = self::isCollect($init_goods); //补充返回值商品类目 $init_goods['cid'] = isset($goods['cid']) ? $goods['cid'] : ''; return $init_goods; } }