zhaojs
2023-07-06 5405b2d58041464e1b44cbdebd941a7d605782d3
no message
已修改2个文件
119 ■■■■■ 文件已修改
application/api/controller/Taoke.php 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
application/api/logic/taoke/device/Dataoke.php 99 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
application/api/controller/Taoke.php
@@ -678,12 +678,24 @@
        $page_size = request()->param('pageSize',10);
        if(empty($nineCid)) $this->error('类目id不能为空');
        $plat=request()->param('plat','tb');
        if($plat=='tb'&&empty($nineCid)) $this->error('类目id不能为空');
        $LogicDataoke = new LogicDataoke();
        $list = $LogicDataoke->getOpGoodsList($nineCid,$page,$page_size);
        $list=null;
        switch($plat)
        {
            case 'tb':
                $list = $LogicDataoke->getOpGoodsList($nineCid,$page,$page_size);
                break;
            case 'jd':
                $list = $LogicDataoke->jdNine($page,$page_size);
                break;
            default:
                $list = $LogicDataoke->getOpGoodsList($nineCid,$page,$page_size);
                break;
        }
        if($list === false) $this->error($LogicDataoke->getError());
        $this->success('获取成功',['list'=>$list]);
application/api/logic/taoke/device/Dataoke.php
@@ -38,6 +38,7 @@
        '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"=>"天猫国际"];
@@ -102,6 +103,27 @@
        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;
    }
    
      /**
@@ -804,6 +826,83 @@
        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['smallImages']) ? $goods['smallImages'] : '';      //商品主图
        //$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'] : '';  //推广文案
        //!empty($goods['imgs']) && $init_goods['imgs'] = explode(",",$goods['imgs']);
        empty($goods['imgs'])&& $init_goods['imgs'] =explode(",",$goods['picMain']);
        //!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['commissionShare']/100);
        $init_goods['topFanli'] = self::rebate($goods['actualPrice'],$goods['commissionShare']/100,self::$topFanliRate);
        $init_goods['isCollect'] = self::isCollect($init_goods);
        return $init_goods;
    }
    /**
     * 格式化商品信息