<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ``` <?php // +------------------------------------------------------------------------------------------------ // | 【使用說明】請將本文件上傳至老虎系統網站服務器:/addons/對應標識/inc/mobile/ 目錄下。 // +------------------------------------------------------------------------------------------------ // | [18淘客助手api文件(老虎微信淘寶客專用-兼容所有新老版本的老虎系統)] Copyright (c) 18.LA // +------------------------------------------------------------------------------------------------ // | 最后修改:2020年03月21日 // +------------------------------------------------------------------------------------------------ // | 官網:http://taoke.18.la/ // +------------------------------------------------------------------------------------------------ global $_W, $_GPC, $return, $cfg; $cfg = $this->module['config']; $return = array('state'=>'ok','code'=>1,'message'=>'','version'=>'6.1','system'=>urlencode('老虎微信淘寶客'),'updatetime'=>urlencode('2020年03月21日')); //如果未傳入有效參數 if (!isset($_GPC['key']) || !isset($_GPC['api'])) { $return['code']=0; $return['message']=urlencode('API接口正常'); exit(urldecode(json_encode($return))); } //判斷密鑰 if($cfg['miyao']!=$_GPC['key']){ $return['code']=0; $return['message']=urlencode('密鑰錯誤'); exit(urldecode(json_encode($return))); } //設置常用變量 $_W['uniacid']=$_GPC['i'];//公眾號id $api=$_GPC['api'];//api名稱 $op=$_GPC['op']; $dtime=time();//當前時間 $message=""; //接口驗證 if($api=='verify'){ $return['code']=1; $return['message']=urlencode('驗證成功'); exit(urldecode(json_encode($return))); } //【訂單同步】 elseif($api=='postorder'){ //獲取post過來的訂單內容 $content=htmlspecialchars_decode($_GPC['content']); //json解碼 $contentArr=@json_decode($content, true); //如果數組不為空 if(!empty($contentArr)){ $orderDbTable=$this->modulename."_tkorder";//訂單數據庫表名 $field=tableField(tablename($orderDbTable));//獲取訂單表的所有字段 $resultStr="";//記錄訂單入庫結果字符串 //遍歷訂單數組 foreach($contentArr as $orderID=>$orderData) { //查詢數據庫 $ord=pdo_fetch('select * from '.tablename($orderDbTable)." where weid='{$_W['uniacid']}' and orderid='{$orderID}'"); if(count($orderData)>1){//訂單號相同的多個訂單集合 //如果已存在 if (!empty($ord)){ $result=pdo_delete($orderDbTable,array ('orderid'=>$orderID,'weid'=>$_W['uniacid']));//刪除該訂單id的所有訂單 } //將所有訂單ID相同的訂單添加到數據庫 $resultTem=1; foreach($orderData as $data){ $newdata=orderFormat($data,$field);//格式化訂單數據 //原有字段值保持不變 if (!empty($ord)){ if (!empty($ord['type'])) $newdata['type']=$ord['type']; if (!empty($ord['zdgd'])) $newdata['zdgd']=$ord['zdgd']; } //添加到數據 $result=pdo_insert($orderDbTable,$newdata); if (!empty($result)) {//添加成功 $resultTem = ($resultTem==1) ? 1 : 0;//如果上次狀態為1,這次也標記為1,否則設置為0 }else{//添加失敗 //嘗試修改唯一索引為普通索引 orderIndex(tablename($orderDbTable)); //再重新添加一次數據 $result=pdo_insert($orderDbTable,$newdata); if (!empty($result)){ $resultTem = ($resultTem==1) ? 1 : 0;//如果上次狀態為1,這次也標記為1,否則設置為0 }else{ $resultTem=0;//將狀態標記為失敗 } } } $resultStr=resultState($resultStr,$orderID,$resultTem);//記錄訂單入庫狀態 }else{//訂單號不同的單個訂單 $newdata=orderFormat($orderData[0],$field); if (!empty($ord)){//如果已存在 if($ord['orderzt']=='訂單失效'){ $resultStr=resultState($resultStr,$orderID,"1");//失效訂單,無需更新,也返回更新成功 continue;//跳過本次循環 } $result=pdo_update($orderDbTable,$newdata,array('orderid' =>$orderID,'weid'=>$_W['uniacid']));//更新數據庫 if (!empty($result)) { //更新成功 $resultStr=resultState($resultStr,$orderID,"1"); }else{ //更新失敗 $resultStr=resultState($resultStr,$orderID,"0"); } }else{ //如果不存在,添加到數據 $result=pdo_insert($orderDbTable,$newdata); if (!empty($result)) { //添加成功 $resultStr=resultState($resultStr,$orderID,"1"); }else{ //添加失敗 $resultStr=resultState($resultStr,$orderID,"0"); } } } } returnExit($return,1,"result:".$resultStr);//code值設置為1,表示成功 }else{ returnExit($return,0,"傳入訂單數據不正確");//code值設置為0,表示失敗 } } //【商品采集】 elseif($api=='postgoods'){ //獲取post過來的訂單內容 $content=htmlspecialchars_decode($_GPC['content']); //json解碼 $contentArr=@json_decode($content, true); //如果數組不為空 if(!empty($contentArr['cat']) && !empty($contentArr['goods'])){ //商品分類 $cat=goodsCat(tablename($this->modulename."_fztype"),$contentArr['cat']); if(empty($cat)){ returnExit($return,0,"分類綁定不正確");//code值設置為0,表示失敗 } //商品數據 $goodsDbTable=$this->modulename."_newtbgoods";//訂單數據庫表名 $field=tableField(tablename($goodsDbTable));//獲取訂單表的所有字段 $resultStr="";//記錄訂單入庫結果字符串 foreach($contentArr['goods'] as $data) { $itemid=$data['商品ID']; //格式化商品數據 $newdata=goodsFormat($cat,$data,$field); //print_r($newdata); //查詢是否存在 $goodsid=pdo_fetch('select itemid from '.tablename($goodsDbTable)." where weid='{$_W['uniacid']}' and itemid='{$itemid}'"); if (empty($goodsid)){ //如果不存在,新增 $result=pdo_insert($goodsDbTable,$newdata); }else{ //如果已存在,更新 $result=pdo_update($goodsDbTable,$newdata,array('itemid' =>$itemid,'weid'=>$_W['uniacid'])); } //記錄入庫結果 if (!empty($result)) { //添加成功 $resultStr=resultState($resultStr,$itemid,"1"); }else{ //添加失敗 $resultStr=resultState($resultStr,$itemid,"0"); } } returnExit($return,1,"result:".$resultStr);//code值設置為1,表示成功 }else{ returnExit($return,0,"傳入商品數據不正確");//code值設置為0,表示失敗 } } //【商品管理】 elseif($api=='delgoods'){ //獲取post過來的訂單內容 $content=htmlspecialchars_decode($_GPC['content']); //json解碼 $contentArr=@json_decode($content, true); //訂單數據庫表名 $goodsDbTable=$this->modulename."_newtbgoods"; //如果where數組不為空 if(!empty($contentArr['where']) ){ $whereArr=$contentArr['where']; //print_r($whereArr); //構造sql語句 if(!empty($whereArr['銷量小于']) ) { if(!empty($where)) $where.=" or "; $where.=" itemsale<'{$whereArr['銷量小于']}' "; } if(!empty($whereArr['價格小于'])){ if(!empty($where)) $where.=" or "; $where.=" itemendprice<'{$whereArr['價格小于']}' "; } if(!empty($whereArr['價格大于'])){ if(!empty($where)) $where.=" or "; $where.=" itemendprice>'{$whereArr['價格大于']}' "; } if(!empty($whereArr['傭金小于']) ) { if(!empty($where)) $where.=" or "; $where.=" tkmoney<'{$whereArr['傭金小于']}' "; } if(!empty($whereArr['傭金比例']) ) { if(!empty($where)) $where.=" or "; $where.=" tkrates<'{$whereArr['傭金比例']}' "; } if(!empty($whereArr['非天貓']) ) { if(!empty($where)) $where.=" or "; $where.=" shoptype!='B' "; } if(!empty($whereArr['非視頻單']) ) { if(!empty($where)) $where.=" or "; $where.=" videoid='0' "; } if(!empty($whereArr['優惠券過期']) ) { if(!empty($where)) $where.=" or "; $where.="(couponendtime<>'' and couponendtime<='{$dtime}') "; } if(!empty($whereArr['無優惠券']) ) { if(!empty($where)) $where.=" or "; $where.=" (quan_id='' and couponurl='') "; } //echo $where; if(!empty($where)){ //執行刪除語句 $result=pdo_query("DELETE FROM " . tablename($goodsDbTable) . " WHERE weid = '{$_W['uniacid']}' and ".$where); if(!empty($result)){ returnExit($return,1,'成功刪除'.$result.'件商品');//code值設置為1,表示成功 }else{ returnExit($return,1,'暫無符合條件商品');//code值設置為1,表示成功 } }else{ returnExit($return,0,'傳入條件數據不正確');//code值設置為1,表示成功 } } //如果goodsid數組不為空 elseif(!empty($contentArr['goodsid']) ){ $count=0; //遍歷訂單ID數組 foreach($contentArr['goodsid'] as $goodsid) { //查詢是否存在 $itemid=pdo_fetch('select itemid from '.tablename($goodsDbTable)." where weid='{$_W['uniacid']}' and itemid='{$goodsid}'"); if (!empty($itemid)){ //如果已存在,刪除 $result=pdo_delete($goodsDbTable,array('itemid' =>$itemid,'weid'=>$_W['uniacid'])); if(!empty($result)){ $count+=$result; } } } if($count>0){ returnExit($return,1,'成功刪除'.$count.'件商品');//code值設置為1,表示成功 }else{ returnExit($return,1,'暫無符合條件商品');//code值設置為1,表示成功 } } //刪除全部商品 elseif(!empty($contentArr['all']) ){ $result=pdo_delete($goodsDbTable,array('weid'=>$_W['uniacid'])); if(!empty($result)){ returnExit($return,1,'成功刪除'.$result.'件商品');//code值設置為1,表示成功 }else{ returnExit($return,1,'暫無商品');//code值設置為1,表示成功 } //無有效參數 }else{ returnExit($return,0,'傳入條件數據不正確');//code值設置為1,表示成功 } } //【代理管理】 elseif($api=='agentadmin'){ //訂單數據庫表名 $agentDbTable=$this->modulename."_share"; //獲取代理信息 if($_GPC['op']=='getrequest'){ //查詢待審核的代理信息(一次最多查詢88條) $list=pdo_fetchall('select * from '.tablename($agentDbTable)." where weid='{$_W['uniacid']}' and dltype=2 LIMIT 88"); if (!empty($list)){ foreach($list as $key=>$data) { $newdata[$key]['id']=$data['from_user']; $newdata[$key]['name']=$data['tname'];//代理姓名:tname,代理微信昵稱:nickname } returnExit($return,1,'獲取未審核代理數據成功',$newdata);//code值設置為1,表示成功 }else{ returnExit($return,1,'暫無未審核代理數據');//code值設置為1,表示成功 } //審核代理 }elseif($_GPC['op']=='check'){ $dailimodulename="tiger_wxdaili";//代理模塊名稱 //獲取post過來的訂單內容 $content=htmlspecialchars_decode($_GPC['content']); //json解碼 $contentArr=@json_decode($content, true); if(empty($contentArr['id'])) { returnExit($return,0,'傳入數據不正確');//code值設置為1,表示成功 } //讀取相關參數 $openid=$contentArr['id'];//用戶微信ID //設置審核數據 $data = array( 'dltype' =>1,// 代理類型 1為代理 2為未審核 'cqtype'=>1,//是否開啟查券 1為開啟,0為不開 'updatetime'=>time(), ); //查詢代理信息 $sharedata=pdo_fetch("select * from ".tablename($agentDbTable)." where weid='{$_W['uniacid']}' and from_user='{$openid}' "); //讀取淘寶用戶ID $memberid=(!empty($contentArr['memberid'])) ? $contentArr['memberid'] : '' ; if(!empty($contentArr['adzoneid']) && !empty($contentArr['pid'])){ //判斷普通PID是否為空 if(empty($sharedata['dlptpid']))//當普通pid為空時,才分配新的pid,防止已有pid被覆蓋 { //將pid數據追加到數組 $data['tgwid']=($contentArr['type']==2)?time():$contentArr['adzoneid'];//推廣位ID(根據用戶咨詢了老虎系統的作者,所反饋的情況,使用渠道模式時,pid必須分配一個固定的默認pid,推廣位id要填一個不存在的數字,老虎系統才能正常使用渠道id匹配訂單,此處取填時間戳,如果想使用默認pid中的推廣位id,請自行修改代碼) //$data['tgwid']=$contentArr['adzoneid'];//推廣位ID $data['dlptpid']=$contentArr['pid'];//普通pid,三段式,類似:mm_181818818_68516333_68516333格式 $data['dlqqpid']=$contentArr['pid'];//鵲橋pid,取普通pid一樣即可 } $memberid=explode('_',$contentArr['pid'])[1];//提取pid中的memberid } //查詢pid對應的淘寶賬號id $tksignsql="select * from ".tablename($this->modulename."_tksign")." where weid='{$_W['uniacid']}' "; if(!empty($memberid)) $tksignsql=$tksignsql."and memberid='{$memberid}' "; $tksigndata=pdo_fetch($tksignsql);//根據memberid從數據庫內查詢 if(!empty($tksigndata['tbuid']))//如果查詢到了tbuid { //將pid數據追加到數組 $data['tbkpidtype']=1;//1代表已綁定,0代表未綁定 $data['tbuid']=$tksigndata['tbuid'];//淘寶用戶數字id } /****************申請拼多多PID開始****************/ $pddsdkfilename = IA_ROOT . "/addons/tiger_newhu/inc/sdk/tbk/pdd.php"; //判斷sdk文件是否存在并且當前拼多多的pid值是否為空 if (file_exists($pddsdkfilename) !== false && empty($sharedata['pddpid'])) { include $pddsdkfilename; $pddset=pdo_fetch("select * from ".tablename('tuike_pdd_set')." where weid='{$_W['uniacid']}'"); $owner_name=$pddset['ddjbbuid']; $pidlist=pddtgw($owner_name,1); $datalist=$pidlist['p_id_generate_response']['p_id_list'];//p_id $pdd_pid=$datalist[0]['p_id']; //判斷拼多多pid是否創建成功 if (!empty($pdd_pid)){ //將拼多多pid添加到數組 $data['pddpid']=$pdd_pid; //*******保存拼多多pid到數據庫********* $pdd_pidres = pdo_fetch("SELECT * FROM " . tablename($dailimodulename."_pddpid") . " weid='{$_W['uniacid']}' and pid='{$pdd_pid}'");//查詢數據庫中pid是否存在 $pdd_data=array( 'weid'=>$_W['uniacid'], 'pid'=>$pdd_pid, 'createtime'=>time(), 'type'=>1, 'uid'=>$sharedata['id'], 'nickname'=>$sharedata['nickname'], ); if(empty($pdd_pidres)){ pdo_insert($dailimodulename."_pddpid", $pdd_data);//寫入到數據庫 }else{ pdo_update($dailimodulename."_pddpid",$pdd_data, array('pid' => $pdd_pid));//更新 } //*******保存拼多多pid到數據庫********* } } /****************申請拼多多PID結束****************/ /****************申請京東PID開始****************/ $jdsdkfilename = IA_ROOT . "/addons/tiger_newhu/inc/sdk/tbk/jd.php"; //判斷sdk文件是否存在并且當前京東的pid值是否為空 if (file_exists($jdsdkfilename) !== false && empty($sharedata['jdpid'])) { include $jdsdkfilename; $jdset=pdo_fetch("select * from ".tablename('tuike_jd_jdset')." where weid='{$_W['uniacid']}' order by id desc"); $jdsign=pdo_fetch("select * from ".tablename('tuike_jd_jdsign')." where weid='{$_W['uniacid']}' order by id desc"); if(!empty($jdset) && !empty($jdsign)){//判斷配置值是否為空 $jd_tgwname=$sharedata['id']."_".time();//京東推廣位名稱 $jd_cjgetarr=array(); $jd_cjgetarr['unionId']=$jdset['unionid']; $jd_cjgetarr['key']=$jdset['jdkey']; $jd_cjgetarr['unionType']="1"; $jd_cjgetarr['type']="4"; $jd_cjgetarr['spaceNameList']=array($jd_tgwname); $jd_cjgetarr=array( 'positionReq'=>$jd_cjgetarr ); $jd_tgwlist=$this->cjget("jd.union.open.position.create",$jd_cjgetarr);//生成京東推廣位 $jd_tgwlist=json_decode($jd_tgwlist,true); $jd_tgw=json_decode($jd_tgwlist['jd_union_open_position_create_response']['result'],true); $jd_pid=$jd_tgw['data']['resultList'][$jd_tgwname];//對應代理推廣位 //判斷京東pid是否創建成功 if (!empty($jd_pid) && $jd_pid!='-1'){ //將京東pid添加到數組 $data['jdpid']=$jd_pid; //*******保存京東pid到數據庫********* $jd_pidres=pdo_fetch("select * from ".tablename($dailimodulename."_jdpid")." where weid='{$_W['uniacid']}' and pid='{$jd_pid}' order by id desc "); //查詢pid是否存在 $jd_data = array( 'weid' => $_W['weid'], 'type' =>1, 'nickname' => $sharedata['nickname'], 'uid'=>$sharedata['id'], 'pid' =>$jd_pid, 'tgwname' =>$jd_tgwname, 'fptime' =>time(), 'createtime' => TIMESTAMP ); if(empty($jd_pidres)){ pdo_insert($dailimodulename."_jdpid", $jd_data);//新增 }else{ pdo_update($dailimodulename."_jdpid",$jd_data, array('pid' => $jd_pid));//更新 } //*******保存京東pid到數據庫********* } } } /****************申請京東PID結束****************/ /****************申請唯品會PID開始****************/ $wphsdkfilename = IA_ROOT."/addons/tiger_newhu/inc/sdk/wph/com/vip/adp/api/open/service/UnionPidServiceClient.php"; //判斷sdk文件是否存在并且當前唯品會的pid值是否為空 if (file_exists($wphsdkfilename) !== false && empty($sharedata['wphpid'])) { include $wphsdkfilename; $wphsignset=pdo_fetch("select * from ".tablename('tiger_newhu_wphsign')." where weid='{$_W['uniacid']}'"); $whpsign=$wphsignset['access_token']; if(!empty($whpsign)){//判斷配置值是否為空 $pidname[0]=$sharedata['id']."_".time();//唯品會推廣位名稱 //生成唯品會推廣位 try { $service=\com\vip\adp\api\open\service\UnionPidServiceClient::getService(); $ctx=\Osp\Context\InvocationContextFactory::getInstance(); $ctx->setAppKey("2bc54d13"); $ctx->setAppSecret("E80CC551126603A3F53AA84F366527F3"); $ctx->setAppURL("https://gw.vipapis.com/"); $ctx->setAccessToken($whpsign); $ctx->setLanguage("zh"); $pidGenRequest1=new \com\vip\adp\api\open\service\PidGenRequest(); $pidNameList2=$pidname; $pidGenRequest1->pidNameList=$pidNameList2; $pidGenRequest1->requestId="requestIdsdddd"; $res=(array)$service->genPidWithOauth($pidGenRequest1); $res=(array)$res['pidInfoList']; // echo "<pre>"; //print_r($res); // exit; } catch(\Osp\Exception\OspException $e){ //var_dump($e); } $wph_tgw=(array)$res[0]; $wph_tgwpid=$wph_tgw['pid']; $wph_tgwname=$wph_tgw['pidName'];//推廣位名稱 $wph_tgwcreateTime=$wph_tgw['createTime'];//推廣位創建時間 //判斷唯品會pid是否創建成功 if (!empty($wph_tgwpid) && !empty($wph_tgwname)){ //將唯品會pid添加到數組 $data['wphpid']=$wph_tgwpid; //*******保存唯品會pid到數據庫********* $vip_pidres=pdo_fetch("select * from ".tablename($dailimodulename."_wphpid")." where weid='{$_W['uniacid']}' and pid='{$wph_tgwpid}'"); //查詢pid是否存在 $vip_data = array( 'weid'=>$_W['uniacid'], 'pid'=>$wph_tgwpid, 'tgwname'=>$wph_tgwname, 'createtime'=>time(), 'type'=>1, 'nickname' => $sharedata['nickname'], 'uid'=>$sharedata['id'], 'fptime' =>time(), ); if(empty($vip_pidres)){ pdo_insert($dailimodulename."_wphpid", $vip_data);//新增 }else{ pdo_update($dailimodulename."_wphpid",$vip_data, array('pid' => $vip_pid));//更新 } //*******保存唯品會pid到數據庫********* } } } /****************申請唯品會PID結束****************/ //更新到數據庫 $result=pdo_update($agentDbTable, $data, array('id' =>$sharedata['id'],'weid'=>$_W['uniacid']));//更新代理信息 //判斷結果 if(!empty($result)){ //跨模塊讀取tiger_wxdaili配置 $wxdaili=pdo_fetch("select value from ".tablename('core_cache')." where `key`='we7:module_setting:{$_W['uniacid']}:tiger_wxdaili'"); if(!empty($wxdaili)){ $value=unserialize($wxdaili['value']); $wxdaili_cfg=unserialize($value['settings']); }else{ //微擎1.7以上版本模塊配置文件保存的地方不一樣 $wxdaili=pdo_fetch("select settings from ".tablename('uni_account_modules')." where `module`='tiger_wxdaili' and `uniacid`='{$_W['uniacid']}'"); $wxdaili_cfg=unserialize($wxdaili['settings']); } //審核成功 if(!empty($wxdaili_cfg['dlshtgtx'])){//管理員訂單提交提醒 $fans=pdo_fetch("select m.uid,m.nickname,m.avatar,f.openid,m.uid,f.followtime,f.follow,m.resideprovince,m.residecity,m.gender from ".tablename('mc_members')." m inner join ".tablename('mc_mapping_fans')." f on m.uid=f.uid and f.openid='{$openid}' and f.uniacid='{$_W['uniacid']}'"); //查詢代理信息 $share=pdo_fetch("select * from ".tablename($agentDbTable)." where weid='{$_W['uniacid']}' and from_user='{$openid}'"); //查詢模版信息 $mb=pdo_fetch("select * from ".tablename($this->modulename."_mobanmsg")." where weid='{$_W['uniacid']}' and id='{$wxdaili_cfg['dlshtgtx']}'"); //設置消息數據 $valuedata=array( 'rmb'=>'', 'txzhanghao'=>'',//提現支付帳帳號 'dlmsg'=>$share['dlmsg'],//申請理由 'tname'=>$share['tname'],//申請人姓名 'dlsqjj'=>$_GPC['glymsg'],//代理申請拒絕原因 'tel'=>$share['tel'], 'weixin'=>$share['weixin'], 'shenhe'=>'',//'審核通過|審核不通過|資料有誤請重新提交審核', 'goodstitle'=>''//'積分商城,商品名稱' ); //發送提醒消息 $msg=$this->mbmsg($openid,$mb,$mb['mbid'],$mb['turl'],$fans,'',$wxdaili_cfg,$valuedata); } returnExit($return,1,'代理審核成功');//code值:1成功 0失敗 }else{ returnExit($return,0,'代理審核失敗');//code值:1成功 0失敗 } }else{ returnExit($return,0,'傳入條件數據不正確');//code值:1成功 0失敗 } } //【拼多多訂單入庫】 elseif($api=='postpddorder'){ //獲取post過來的訂單內容 $content = htmlspecialchars_decode($_GPC['content']); $contentArr = @json_decode($content, true); //json解碼 //判斷傳入訂單數據是否為空 if (!empty($contentArr)) { //定義記錄訂單入庫結果的變量 $resultStr = ""; $goodsDbTable=$this->modulename."_pddorder";//訂單數據庫表名 //遍歷訂單數據 foreach ($contentArr as $orderid => $orderdata) { //格式化訂單數據 $newdata = orderFormatPdd($orderdata); //查詢是否存在 $row = pdo_fetch("SELECT * FROM " . tablename($goodsDbTable) . " WHERE weid='{$_W['uniacid']}' and order_sn='{$orderid}'"); if (empty($row)) { //如果不存在,新增數據 $result = pdo_insert($goodsDbTable, $newdata); } else { //如果存在,更新數據 $result = pdo_update($goodsDbTable, $newdata, array('order_sn' => $orderid,'weid'=>$_W['uniacid'])); } //記錄入庫結果 if (!empty($result)) { $resultStr = resultState($resultStr, $orderid, "1");//成功 } else { $resultStr = resultState($resultStr, $orderid, "0");//失敗 } } returnExit($return, 1, "result:" . $resultStr); //code值設置為1,表示成功 } else { returnExit($return, 0, "傳入訂單數據不正確"); //code值設置為0,表示失敗 } } //【京東訂單入庫】 elseif($api=='postjdorder'){ //獲取post過來的訂單內容 $content = htmlspecialchars_decode($_GPC['content']); $contentArr = @json_decode($content, true); //json解碼 //判斷傳入訂單數據是否為空 if (!empty($contentArr)) { //定義記錄訂單入庫結果的變量 $resultStr = ""; $goodsDbTable=$this->modulename."_jdorder";//訂單數據庫表名 //遍歷訂單數據 foreach ($contentArr as $orderid => $orderdata) { $resultTem=1; //遍歷子訂單數據 foreach($orderdata as $data){ //處理參數 $orderTime=strtotime($data['orderTime']);//下單時間 $finishTime=$data['finishTime'];//結算時間 $finishTime=($finishTime == 0 || $finishTime == "0")?0:strtotime($finishTime); //格式化訂單數據 $newdata=array( 'weid'=>$_W['uniacid'], 'finishTime'=>substr($finishTime , 0 , 10), 'orderEmt'=>$data['orderEmt'], 'orderId'=>$data['orderId'], 'orderTime'=>substr($orderTime , 0 , 10), 'parentId'=>$data['parentId'], 'payMonth'=>$data['payMonth'], 'plus'=>$data['plus'], 'popId'=>$data['popId'], 'actualCommission'=>$data['actualCommission'], 'actualCosPrice'=>$data['actualCosPrice'], 'actualFee'=>$data['actualFee'], 'commissionRate'=>$data['commissionRate'], 'estimateCommission'=>$data['estimateCommission'], 'estimateCosPrice'=>$data['estimateCosPrice'], 'estimateFee'=>$data['estimateFee'], 'finalRate'=>$data['finalRate'], 'firstLevel'=>$data['firstLevel'], 'frozenSkuNum'=>$data['frozenSkuNum'], 'payPrice'=>$data['payPrice'], 'pid'=>$data['pid'], 'price'=>$data['price'], 'secondLevel'=>$data['secondLevel'], 'siteId'=>$data['siteId'], 'skuId'=>$data['skuId'], 'skuName'=>$data['skuName'], 'skuNum'=>$data['skuNum'], 'skuReturnNum'=>$data['skuReturnNum'], 'spId'=>$data['positionId'], 'subSideRate'=>$data['subSideRate'], 'subUnionId'=>$data['subUnionId'], 'subsidyRate'=>$data['subsidyRate'], 'thirdLevel'=>$data['thirdLevel'], 'traceType'=>$data['traceType'], 'unionAlias'=>$data['unionAlias'], 'unionTrafficGroup'=>$data['unionTrafficGroup'], 'unionTag'=>$data['unionTag'], 'validCode'=>$data['validCode'], 'unionId'=>$data['unionId'], 'unionUserName'=>$data['unionUserName'], 'createtime'=>time() ); //查詢是否存在 $row = pdo_fetch("SELECT * FROM " . tablename($goodsDbTable) . " WHERE weid='{$_W['uniacid']}' and orderId='{$data['orderId']}' and skuId='{$data['skuId']}'" ); if (empty($row)) { //如果不存在,新增數據 $result = pdo_insert($goodsDbTable, $newdata); } else { //如果存在,更新數據 $result = pdo_update($goodsDbTable, $newdata, array('weid'=>$_W['uniacid'],'orderId' => $data['orderId'],'skuId' => $data['skuId'])); } //判斷入庫結果 if (!empty($result)){ $resultTem = ($resultTem==1) ? 1 : 0;//如果上次狀態為1,這次也標記為1,否則設置為0 }else{ $resultTem=0;//將狀態標記為失敗 } } //記錄入庫結果 $resultStr = resultState($resultStr, $orderid, $resultTem); } returnExit($return, 1, "result:" . $resultStr); //code值設置為1,表示成功 } else { returnExit($return, 0, "傳入訂單數據不正確"); //code值設置為0,表示失敗 } } //【唯品會訂單入庫】 elseif($api=='postviporder'){ //獲取post過來的訂單內容 $content = htmlspecialchars_decode($_GPC['content']); $contentArr = @json_decode($content, true); //json解碼 //判斷傳入訂單數據是否為空 if (!empty($contentArr)) { //定義記錄訂單入庫結果的變量 $resultStr = ""; $orderDbTable=$this->modulename."_wphorder";//訂單數據庫表名 //遍歷訂單數據 foreach ($contentArr as $orderid => $orderdata) { //格式化訂單數據 $newdata=array( 'weid'=>$_W['uniacid'], 'orderSn'=>$orderdata['orderSn'], 'status'=>$orderdata['status'], 'newCustomer'=>$orderdata['newCustomer'], 'channelTag'=>$orderdata['channelTag'], 'orderTime'=>strtotime($orderdata['orderTime']),// 'signTime'=>strtotime($orderdata['signTime']),// 'settledTime'=>strtotime($orderdata['settledTime']),// 'lastUpdateTime'=>strtotime($orderdata['lastUpdateTime']),// 'settled'=>$orderdata['settled'], 'selfBuy'=>$orderdata['selfBuy'], 'orderSubStatusName'=>$orderdata['orderSubStatusName'], 'commission'=>$orderdata['commission'], 'afterSaleChangeCommission'=>$orderdata['afterSaleChangeCommission'], 'afterSaleChangeGoodsCount'=>$orderdata['afterSaleChangeGoodsCount'], 'commissionEnterTime'=>$orderdata['commissionEnterTime'], 'orderSource'=>$orderdata['orderSource'], 'pid'=>$orderdata['pid'], 'isPrepay'=>0,//$orderdata['isPrepay'] 'goodsId'=>$orderdata['goodsId'], 'goodsName'=>$orderdata['goodsName'], 'goodsThumb'=>$orderdata['goodsThumb'], 'goodsCount'=>$orderdata['goodsCount'], 'commissionTotalCost'=>$orderdata['commissionTotalCost'], 'commissionRate'=>$orderdata['commissionRate'], 'commCode'=>$orderdata['commCode'], 'commName'=>$orderdata['commName'], 'afterSaleInfo'=>$orderdata['afterSaleInfo'], 'sizeId'=>$orderdata['sizeId'], 'createtime'=>time() ); //查詢是否存在 $row = pdo_fetch("SELECT * FROM " . tablename($orderDbTable) . " WHERE weid='{$_W['uniacid']}' and orderSn='{$orderdata['orderSn']}' and goodsId='{$orderdata['goodsId']}' and sizeId='{$orderdata['sizeId']}'" ); if (empty($row)) { //如果不存在,新增數據 $result = pdo_insert($orderDbTable, $newdata); if (!empty($result)) { $resultStr = resultState($resultStr, $orderid, "1");//成功 } else { $resultStr = resultState($resultStr, $orderid, "0");//失敗 } } else { //如果存在,更新數據 $result = pdo_update($orderDbTable, $newdata, array('weid'=>$_W['uniacid'],'orderSn' => $orderdata['orderSn'],'goodsId' => $orderdata['goodsId'],'sizeId' => $orderdata['sizeId'])); $resultStr = resultState($resultStr, $orderid, "1"); } } returnExit($return, 1, "result:" . $resultStr); //code值設置為1,表示成功 } else { returnExit($return, 0, "傳入訂單數據不正確"); //code值設置為0,表示失敗 } } //【定時任務】 elseif ($api == 'timetask') { //【加載定時任務插件文件】 if (!empty($op)) { $timetaskfilename = IA_ROOT . "/addons/tiger_newhu/inc/mobile/18timetask_" . $op . ".inc.php"; if (file_exists($timetaskfilename) !== false) { include $timetaskfilename; } } //【京東訂單同步】 if ($op == "jdorder") { /****************京東訂單同步開始****************/ //【接收參數】 $start = empty($_GPC['start']) ? 0 : trim($_GPC['start']);//開始天數(默認為0,即從當天開始) $day = empty($_GPC['day']) ? 1 : trim($_GPC['day']);//要同步的天數(默認同步1天) $hour=empty($_GPC['hour']) ? 24 : trim($_GPC['hour']);//每次同步幾小時的訂單(默認每次同步24小時) $progress=empty($_GPC['progress']) ? 0 : trim($_GPC['progress']);//同步進度參數(默認從0開始,程序自動處理,請勿手工傳入此參數) $allcount=empty($_GPC['allcount']) ? 0 : trim($_GPC['allcount']);//記錄獲取訂單總數的參數(默認從0開始,程序自動處理,請勿手工傳入此參數) $sleep=empty($_GPC['sleep']) ? 1 : trim($_GPC['sleep']);//執行完當前頁后執行下一頁的間隔時間 //【計算相關時間】 $startTime=date("Y-m-d H:i:s",strtotime("-".$start." day"));//計算開始時間 $endTime=date("Y-m-d H:i:s",strtotime("-".$day." day", strtotime($startTime)));//計算結束時間(strtotime可以接受第二個參數,類型timestamp,為指定日期) $allHour=abs(floor((strtotime($endTime)-strtotime($startTime))/3600));//開始時間和結束時間相差小時數 $progressTime=date("Y-m-d H:i:s",strtotime("-".$progress." hours", strtotime($startTime)));//計算進度時間 //echo '開始時間:'.$startTime.' 結束時間:'.$endTime.' 相差小時數:'.$allHour.' 進度:'.$progress.'/'.$allHour; //exit; //【引用京東api文件】 $jdsdkfilename=IA_ROOT . "/addons/tiger_newhu/inc/sdk/tbk/jd.php"; if (file_exists($jdsdkfilename) == false) returnExit($return, 0, '你的淘客系統缺少:'.$jdsdkfilename.'文件');//判斷文件是否存在 include $jdsdkfilename; //【讀取京東相關配置】 $jdset=pdo_fetch("select * from ".tablename('tuike_jd_jdset')." where weid='{$_W['uniacid']}' order by id desc"); $jdsign=pdo_fetch("select * from ".tablename('tuike_jd_jdsign')." where weid='{$_W['uniacid']}' order by id desc"); if(empty($jdset) || empty($jdsign)) returnExit($return, 0, '讀取京東模塊配置失敗'); $thisStartTime=date("Y年m月d日H時",strtotime($progressTime)); $count=0; //【每次同步小時數循環獲取訂單】 for ($i=0; $i<$hour; $i++) { if($i>0) $progressTime=date('Y-m-d H:i:s', strtotime ("-1 hours", strtotime($progressTime)));//計算進度時間 $orderTime=date("YmdH",strtotime($progressTime));//計算要同步的訂單時間(格式:年月日時,例如:2018080808) /*獲取京東訂單并入庫開始*/ //【通過API接口獲取訂單數據】 $page=1; $res=getkhorder($jdsign['access_token'],$jdset['unionid'],$orderTime,$jdset['appkey'],$jdset['appsecret'],$page); //【判斷是否獲取到數據】 if(!empty($res)){ foreach($res as $k=>$v){ $data=array( 'weid'=>$_W['uniacid'], 'finishTime'=>substr($v['finishTime'] , 0 , 10), 'orderEmt'=>$v['orderEmt'], 'orderId'=>$v['orderId'], 'orderTime'=>substr($v['orderTime'] , 0 , 10), 'parentId'=>$v['parentId'], 'payMonth'=>$v['payMonth'], 'plus'=>$v['plus'], 'popId'=>$v['popId'], 'actualCommission'=>$v['skuList'][0]['actualCommission'], 'actualCosPrice'=>$v['skuList'][0]['actualCosPrice'], 'actualFee'=>$v['skuList'][0]['actualFee'], 'commissionRate'=>$v['skuList'][0]['commissionRate'], 'estimateCommission'=>$v['skuList'][0]['estimateCommission'], 'estimateCosPrice'=>$v['skuList'][0]['estimateCosPrice'], 'estimateFee'=>$v['skuList'][0]['estimateFee'], 'finalRate'=>$v['skuList'][0]['finalRate'], 'firstLevel'=>$v['skuList'][0]['firstLevel'], 'frozenSkuNum'=>$v['skuList'][0]['frozenSkuNum'], 'payPrice'=>$v['skuList'][0]['payPrice'], 'pid'=>$v['skuList'][0]['pid'], 'price'=>$v['skuList'][0]['price'], 'secondLevel'=>$v['skuList'][0]['secondLevel'], 'siteId'=>$v['skuList'][0]['siteId'], 'skuId'=>$v['skuList'][0]['skuId'], 'skuName'=>$v['skuList'][0]['skuName'], 'skuNum'=>$v['skuList'][0]['skuNum'], 'skuReturnNum'=>$v['skuList'][0]['skuReturnNum'], 'spId'=>$v['skuList'][0]['spId'], 'subSideRate'=>$v['skuList'][0]['subSideRate'], 'subUnionId'=>$v['skuList'][0]['subUnionId'], 'subsidyRate'=>$v['skuList'][0]['subsidyRate'], 'thirdLevel'=>$v['skuList'][0]['thirdLevel'], 'traceType'=>$v['skuList'][0]['traceType'], 'unionAlias'=>$v['skuList'][0]['unionAlias'], 'unionTrafficGroup'=>$v['skuList'][0]['unionTrafficGroup'], 'unionTag'=>$v['skuList'][0]['unionTag'], 'validCode'=>$v['skuList'][0]['validCode'], 'unionId'=>$v['unionId'], 'unionUserName'=>$v['unionUserName'], 'createtime'=>time() ); //print_r($data); //exit; /*訂單入庫開始*/ $ord=pdo_fetchall ( 'select * from ' . tablename ( $this->modulename . "_jdorder" ) . " where weid='{$_W['uniacid']}' and orderId='{$v['orderId']}'" ); if(empty($ord)){ if(!empty($data['orderId'])){ //插入數據 $a=pdo_insert ($this->modulename . "_jdorder", $data ); $count++; } }else{ if(!empty($v['orderId'])){ //更新數據 $b=pdo_update($this->modulename . "_jdorder",$data, array ('orderId' =>$v['orderId'],'weid'=>$_W['uniacid'])); $count++; } } /*訂單入庫結束*/ } } /*獲取京東訂單并入庫結束*/ $progress++;//進度加1 } $thisEndTime=date("Y年m月d日H時",strtotime($progressTime)); //計算同步進度百分比 $percent=round(($progress/$allHour)*100,2); if($percent>100) $percent=100; //計算本輪同步成功的總數 $allcount+=$count; //判斷是否同步完成所有任務 if($progress<$allHour){ $message=($count>0)? "成功同步".$count."個京東訂單(進度:".$percent."% 時間段:".$thisStartTime."-".$thisEndTime.")" : "同步京東訂單成功(進度:".$percent."% 時間段:".$thisStartTime."-".$thisEndTime.")"; $return['timetaskdata'] = array('param' => 'progress=' . $progress.'&allcount='.$allcount, 'sleep' => $sleep);//返回回傳參數 }else{ $message=$startTime."到".$endTime."共".$day."天的京東訂單同步完畢,累計獲取".$allcount."個訂單!"; } returnExit($return, 1, $message); /****************京東訂單同步結束****************/ } //【拼多多訂單同步】 elseif ($op == "pddorder") { /****************拼多多訂單同步開始****************/ //【接收參數】 $start = empty($_GPC['start']) ? 0 : trim($_GPC['start']);//開始天數(默認為0,即從當天開始) $day = empty($_GPC['day']) ? 1 : trim($_GPC['day']);//要同步的天數(默認同步1天) $page=empty($_GPC['page']) ? 1 : trim($_GPC['page']);//同步頁碼進度參數(默認從1開始,程序自動處理,請勿手工傳入此參數) $allcount=empty($_GPC['allcount']) ? 0 : trim($_GPC['allcount']);//記錄獲取訂單總數的參數(默認從0開始,程序自動處理,請勿手工傳入此參數) $sleep=empty($_GPC['sleep']) ? 1 : trim($_GPC['sleep']);//執行完當前頁后執行下一頁的間隔時間 //【計算相關時間】 $startTime=date("Y-m-d H:i:s",strtotime("-".$start." day"));//計算開始時間 $endTime=date("Y-m-d H:i:s",strtotime("-".$day." day", strtotime($startTime)));//計算結束時間(strtotime可以接受第二個參數,類型timestamp,為指定日期) //echo '開始時間:'.$startTime.' 結束時間:'.$endTime; //exit; //【引用拼多多api文件】 $pddsdkfilename=IA_ROOT . "/addons/tiger_newhu/inc/sdk/tbk/pdd.php"; if (file_exists($pddsdkfilename) == false) returnExit($return, 0, '你的淘客系統缺少:'.$jdsdkfilename.'文件');//判斷文件是否存在 include $pddsdkfilename; //【讀取拼多多相關配置】 $pddset=pdo_fetch("select * from ".tablename('tuike_pdd_set')." where weid='{$_W['uniacid']}'"); $owner_name=$pddset['ddjbbuid']; if(empty($pddset)) returnExit($return, 0, '讀取拼多多模塊配置失敗'); $count=0; //【通過API接口獲取訂單數據】 $start_time=strtotime($endTime); $end_time=strtotime($startTime); $res=pddtgworder1($owner_name,$page,$start_time,$end_time,$p_id); //判斷是否出錯 if(!empty($orderlist['error_response']['error_msg'])){ returnExit($return, 1, $orderlist['error_response']['error_msg']); } $orderlist=$res['order_list_get_response']['order_list']; //遍歷獲取到的數據 foreach($orderlist as $k=>$v){ $row = pdo_fetch("SELECT * FROM " . tablename($this->modulename.'_pddorder') . " WHERE weid='{$_W['uniacid']}' and order_sn='{$v['order_sn']}'"); $data=array( "weid"=>$_W['uniacid'], "order_sn" =>$v['order_sn'], "goods_id" => $v['goods_id'], "goods_name" => $v['goods_name'], "goods_thumbnail_url" => $v['goods_thumbnail_url'], "goods_quantity" => $v['goods_quantity'], "goods_price" => $v['goods_price']/100, "order_amount" => $v['order_amount']/100, "order_create_time" => $v['order_create_time'], "order_settle_time" => $v['order_settle_time'], "order_verify_time" => $v['order_verify_time'], "order_receive_time" => $v['order_receive_time'], "order_pay_time" => $v['order_pay_time'], "promotion_rate" => $v['promotion_rate']/10, "promotion_amount" => $v['promotion_amount']/100, "batch_no" => $v['batch_no'], "order_status" =>$v['order_status'], "order_status_desc" => $v['order_status_desc'], "verify_time" => $v['verify_time'], "order_group_success_time" => $v['order_group_success_time'], "order_modify_at" => $v['order_modify_at'], "status" => $v['status'], "type" => $v['type'], "group_id" => $v['group_id'], "auth_duo_id" => $v['auth_duo_id'], "custom_parameters" => $v['custom_parameters'], "p_id" => $v['p_id'], 'createtime'=>TIMESTAMP,//最后修改時間 ); if (!empty($row)){ pdo_update($this->modulename."_pddorder", $data, array('order_sn' => $v['order_sn'],'weid'=>$_W['uniacid'])); //echo "更新訂單:".$data['order_sn']."成功<br>"; }else{ pdo_insert($this->modulename."_pddorder", $data); //echo "新訂單入庫:".$data['order_sn']."成功<br>"; } $count++; } //計算本輪同步成功的總數 $allcount+=$count; //判斷是否獲取完畢 if(!empty($orderlist)){ $message=($count>0)? "同步拼多多第".$page."頁訂單成功(本次獲取".$count."個)" : "同步拼多多第".$page."頁訂單成功!"; $return['timetaskdata'] = array('param' => 'page=' . ($page+1).'&allcount='.$allcount, 'sleep' => $sleep);//返回回傳參數 }else{ $message=$startTime."到".$endTime."共".$day."天的拼多多訂單同步完畢,累計獲取".$allcount."個訂單!"; } //輸出結果并退出程序 returnExit($return, 1, $message); /****************拼多多訂單同步結束****************/ } //【同步老虎新版代理中心三合一傭金】 elseif ($op == "newagent3") { /****************同步老虎新版代理中心三合一傭金開始****************/ $page = max(1, intval($_GPC['page']));//獲取頁碼參數 $taskid=max(1, intval($_GPC['taskid']));//獲取任務子id參數參數 $allcount=empty($_GPC['allcount']) ? 0 : trim($_GPC['allcount']);//記錄獲取訂單總數的參數(默認從0開始,程序自動處理,請勿手工傳入此參數) $sleep=empty($_GPC['sleep']) ? 2 : trim($_GPC['sleep']);//執行完當前頁后執行下一頁的間隔時間 $pagesize = 1;//每頁顯示1條 $total = pdo_fetchcolumn("SELECT COUNT(*) FROM " . tablename("tiger_newhu_share")." where weid='{$_W['uniacid']}' and dltype=1");//讀取代理總數 $allpage=ceil($total/$pagesize)+1;//計算總頁數 //讀取當前頁的代理數據 $data = pdo_fetch("select id from ".tablename("tiger_newhu_share")." where weid='{$_W['uniacid']}' and dltype=1 order by id LIMIT " . ($page - 1) * $pagesize . ",{$pagesize}"); //判斷代理ID是否為空 if (empty($data['id'])){ //結束任務 $message="累計".$total."個代理傭金更新完畢!"; //輸出結果并退出程序 //returnExit($return, 1, $message); } $agentid=$data['id'];//代理ID //根據任務ID配置對應的URL $url_do=""; $url_doname=""; $url_day=""; $url_dayname=""; switch ($taskid) { case 1: $url_do="tbyj"; $url_doname="淘寶"; $url_day="1"; $url_dayname="今天"; break; case 2: $url_do="pddyj"; $url_doname="拼多多"; $url_day="1"; $url_dayname="今天"; break; case 3: $url_do="jdyj"; $url_doname="京東"; $url_day="1"; $url_dayname="今天"; break; case 4: $url_do="tbyj"; $url_doname="淘寶"; $url_day="2"; $url_dayname="昨天"; break; case 5: $url_do="pddyj"; $url_doname="拼多多"; $url_day="2"; $url_dayname="昨天"; break; case 6: $url_do="jdyj"; $url_doname="拼多多"; $url_day="2"; $url_dayname="昨天"; break; case 7: $url_do="tbyj"; $url_doname="淘寶"; $url_day="3"; $url_dayname="本月"; break; case 8: $url_do="pddyj"; $url_doname="拼多多"; $url_day="3"; $url_dayname="本月"; break; case 9: $url_do="jdyj"; $url_day="3"; $url_dayname="本月"; break; case 10: $url_do="tbyj"; $url_doname="淘寶"; $url_day="4"; $url_dayname="上月"; break; case 11: $url_do="pddyj"; $url_doname="拼多多"; $url_day="4"; $url_dayname="上月"; break; case 12: $url_do="jdyj"; $url_doname="京東"; $url_day="4"; $url_dayname="上月"; break; default: $url_do="tbyj"; $url_doname="淘寶"; $url_day="1"; $url_dayname="今天"; } $url=$_W['siteroot']."/app/index.php?i=".$_W['uniacid']."&c=entry&do=".$url_do."&m=tiger_wxdaili&uid=".$agentid."&day=".$url_day; $url=str_replace("//","/",$url); //$url="https://fanyi.baidu.com/"; //echo $url; //訪問任務URL if (function_exists('curl_init')){ $returnHtml=curl_file_get_contents($url);//如果服務器支持curl,優先使用curl獲取數據 }else{ $returnHtml=file_get_contents($url); } //讀取訪問結果 $returnState=true; if (strpos($returnHtml,',"weid":') === false) { $returnState=false; } else { $returnArr = json_decode($returnHtml, true); $returnMsg=$returnArr[0]; } //計算同步進度百分比 $percent=round((($page*12+$taskid)/($allpage*12))*100,3); //判斷是否同步完成所有任務 if($page<$allpage){ if($returnState){ $message="更新成功(進度:".$percent."%,頁碼:".$page."/".$allpage.")".$returnMsg; }else { $message="更新".$url_dayname.$url_doname."傭金失敗(進度:".$percent."%,頁碼:".$page."/".$allpage.",代理ID:".$agentid.",請求URL:".$url.")"; } $taskid++;//子任務ID加1 //如果任務ID大于12(每個代理要執行12次同步任務) if($taskid>12) { $taskid=1;//初始化任務ID $page++;//頁碼加1 } $return['timetaskdata'] = array('param' => 'page=' . $page.'&taskid='.$taskid, 'sleep' => $sleep);//返回回傳參數 }else{ $message="累計".$total."個代理傭金更新完畢!"; } //輸出結果并退出程序 returnExit($return, 1, $message); /****************同步老虎新版代理中心三合一傭金開始****************/ } //【不帶返回參數測試】 elseif ($op == "test1") { //1、執行業務函數 //2、返回結果 returnExit($return, 1, '定時任務測試1執行成功'); } //【帶傳入參數、帶回傳參數測試】 elseif ($op == 'test2') { //1、【接收參數】 $day = empty($_GPC['day']) ? 1 : $_GPC['day'];//接配置參數(post參數,即軟件定時任務里面設置的任務參數) $page = empty($_GPC['page']) ? 1 : $_GPC['page'];//接收頁碼參數(回傳參數) //2、【執行業務函數】 //3、【判斷執行結果,并構造回傳參數】 //判斷是否執行到最后一頁(我這里假設最多只有10頁,具體情況根據業務代碼判斷是否最后一頁) if ($page >= 10) { //執行到最后一頁,不回傳參數即可 $message = '本輪所有任務執行完畢';//返回信息 } else { $page++;//頁碼加1 //追加回傳參數 param 為下次要回傳的參數字段,支持任意參數構造(命名注意不要和系統已有的post參數沖突); sleep 是控制訪問下一頁的間隔時間參數,單位為秒 $return['timetaskdata'] = array('param' => 'test1=111&test2=222&page=' . $page, 'sleep' => 1);//構造回傳參數(test1=111&test2=222 為其他測試參數,可以刪除) $message = '傳入的day參數值為:' . $day . ',回傳的page參數為:' . $page;//返回信息 } //3、【返回結果】 returnExit($return, 1, $message); } else { returnExit($return, 0, '任務標識不正確'); } } else { returnExit($return,0,'未傳入有效API參數');//code值設置為1,表示成功 } // +---------------------------------------- // | 訂單入庫相關函數 // +---------------------------------------- //格式化訂單數據 function orderFormat($data,$field){ global $_W; //將數據存儲到符合當前系統的新數組 $newData=array( 'weid'=>$_W['uniacid'], 'addtime'=>strtotime($data['創建時間']),//創建時間 'orderid'=>$data['訂單編號'],//訂單編號 'numid'=>$data['商品ID'],//商品ID 'shopname'=>$data['所屬店鋪'],//店鋪名稱 'title'=>$data['商品信息'],//商品標題 'orderzt'=>$data['訂單狀態'],//訂單狀態 'srbl'=>$data['收入比率'],//收入比例 'fcbl'=>$data['分成比率'],//分成比例 'fkprice'=>$data['付款金額'],//付款金額 'xgyg'=>$data['效果預估'],//效果預估 'jstime'=>strtotime($data['結算時間']),//結算時間 'pt'=>$data['成交平臺'],//平臺 'mtid'=>$data['來源媒體ID'],//媒體ID 'mttitle'=>$data['來源媒體名稱'],//媒體名稱 //'tgwid'=>$data['廣告位ID'],//推廣位ID //'tgwtitle'=>$data['廣告位名稱'],//推廣位名稱 'relation_id'=>$data['渠道關系ID'],//渠道ID 'tbsbuid6'=>substr($data['訂單編號'],-6),//訂單后6位 'createtime'=>TIMESTAMP, ); //過濾空推廣位數據 if(!empty($data['廣告位ID'])) $newData['tgwid']=$data['廣告位ID']; if(!empty($data['廣告位名稱'])) $newData['tgwtitle']=$data['廣告位名稱']; //處理維權訂單 if(strpos($data['維權狀態'],"維權創建") !== false || strpos($data['維權狀態'],"等待處理") !== false) { $newData['orderzt']='訂單付款';//強制將訂單狀態設置為:訂單付款 $newData['wq']=1;//標記為維權 } elseif(strpos($data['維權狀態'],"維權成功") !== false) { $newData['orderzt']='訂單失效';//強制將訂單狀態設置為:訂單失效 $newData['wq']=1;//標記為維權 } elseif(strpos($str,"維權失敗") !== false) { //$data['訂單狀態']='訂單結算';//強制將訂單狀態設置為:訂單結算(因為訂單也有可能本身是其他狀態,所以此處不做處理即可) $newData['wq']=0;//取消維權狀態 } //過濾數據庫不支持的字段(因為各個版本的數據庫字段有差異,所以要處理下) foreach($newData as $key=>$value){ if(isset($field[$key])) { $saveData[$key]=$value; } } return $saveData; } //將訂單表orderid索引改為普通索引 function orderIndex($table){ $allIndex=pdo_fetchall("show index from".$table); //print_r($allIndex); foreach($allIndex as $index){ //判斷orderid是否唯一索引 if($index['Key_name']=='orderid' && $index['Non_unique']==0){ //將索引修改為普通索引 $ree=pdo_query("ALTER TABLE ".$table." DROP INDEX `orderid`, ADD INDEX `orderid` (`weid`, `orderid`, `numid`) USING BTREE;"); //echo '修改索引'; return; } } //echo '未修改索引'; } // +---------------------------------------- // | 淘寶商品采集相關函數 // +---------------------------------------- //處理商品分類 function goodsCat($table,$softCat){ global $_W; //查詢數據庫的分類名和對應ID $allCat=pdo_fetchall('select title,id from '.$table." where weid='{$_W['uniacid']}'"); //print_r($allCat); foreach($allCat as $cat){ $cat['title']=str_replace("其他","其它",$cat['title']);//兼容分類名字為“其他”時的情況 $dbCat[$cat['title']]=$cat['id']; } //將程序商品分類關系轉化成對應的id foreach($softCat as $key=>$value){ $value=str_replace("其他","其它",$value);//兼容分類名字為“其他”時的情況 if (isset($dbCat[$value])) $newCat[$key]=$dbCat[$value]; } //print_r($softCat); return $newCat; } //格式化商品數據 function goodsFormat($cat,$data,$field){ global $_W; //處理采集來源 if($data['采集來源']=='大淘客'){ $data['采集來源']=1; }elseif($data['采集來源']=='好單庫'){ $data['采集來源']=2; }elseif($data['采集來源']=='輕淘客'){ $data['采集來源']=4; }elseif($data['采集來源']=='一手單'){ $data['采集來源']=5; }elseif($data['采集來源']=='QQ群'){ $data['采集來源']=8; } //處理商品類目 if (empty($cat[$data['商品類目']])){ $data['商品類目']=0; }else{ $data['商品類目']=$cat[$data['商品類目']]; } $newData=array( 'weid'=>$_W['uniacid'],//公眾號ID 'zy'=>$data['采集來源'],//1大淘客 2互力 3鵲橋庫 'itemid'=>$data['商品ID'],//商品id 'itemtitle'=>$data['商品標題'],//商品標題 'itemshorttitle'=>$data['商品短標題'],//商品短標題 'itemdesc'=>$data['商品文案'],//商品文案 'itemprice'=>$data['商品原價'],//商品原價 'itemsale'=>$data['商品銷量'],//商品銷量 'itemsale2'=>$data['商品兩小時銷量'],//商品最近2小時銷量 //'conversion_ratio'=>$data[''],//優惠券轉化率 'itempic'=>$data['商品圖片'],//商品主圖 'fqcat'=>$data['商品類目'],//商品類目 'itemendprice'=>$data['商品券后價'],//商品券后價 'shoptype'=>$data['店鋪類型'],//店鋪類型 天貓(B) C店(C) 企業店鋪 'userid'=>$data['賣家ID'],//賣家ID 'sellernick'=>$data['賣家昵稱'],//賣家昵稱 'tktype'=>$data['傭金計劃'],//傭金方式(鵲橋活動 定向計劃 通用計劃 隱藏計劃 營銷計劃) 'tkrates'=>$data['傭金比例'],//傭金比例 //'ctrates'=>$data[''],//村淘傭金比例 'cuntao'=>$data['是否村淘'],//是否村淘(1是) 'tkmoney'=>$data['預計傭金'],//預計可得(寶貝價格*傭金比率/100) 'tkurl'=>$data['定向計劃鏈接'],//定向計劃鏈接 'planlink'=>$data['營銷計劃鏈接'],//營銷計劃鏈接 'quan_id'=>$data['優惠券ID'],//優惠券ID 'couponurl'=>$data['優惠券鏈接'],//優惠券鏈接 'couponmoney'=>$data['優惠券金額'],//優惠券面額 'couponsurplus'=>$data['優惠券剩余量'],//優惠券剩余數量 'couponreceive'=>$data['優惠券領取量'],//優惠券領取數量 //'couponreceive2'=>$data[''],//2小時內優惠券領取量 'couponnum'=>$data['優惠券總數量'],//優惠券總數量 'couponexplain'=>$data['優惠券使用條件'],//優惠券說明 使用條件 'couponstarttime'=>$data['優惠券開始時間'],//優惠券開始時間 'couponendtime'=>$data['優惠券結束時間'],//優惠券結束時間 'starttime'=>$data['最后修改時間'],//發布時間 'isquality'=>$data['是否優選'],//是否優選 1為是 'item_status'=>$data['失效狀態'],//產品狀態:0為正常 //'report_status'=>$data[''],//舉報處理情況(1為待處理;2為忽略;3為下架) 'is_brand'=>$data['是否品牌商品'],//是否為品牌產品:1為是 'is_live'=>$data['是否直播商品'],//是否為直播產品:1為是 'videoid'=>$data['商品視頻ID'],//商品視頻id 'activity_type'=>$data['活動類型'],//活動類型(普通活動、聚劃算、淘搶購) 'createtime'=>TIMESTAMP,//最后修改時間 //'tj'=>$data[''],//1 秒殺 2 叮咚搶 //'zt'=>$data[''],//專題 //'test8888'=>'66666666',//干擾測試 //'zd'=>$data[''],//0不置頂 1置頂 //'qf'=>$data[''],//0不群發 1群發庫 ); //過濾數據庫不支持的字段(因為各個版本的數據庫字段有差異,所以要處理下) foreach($newData as $key=>$value){ if(isset($field[$key])) { $saveData[$key]=$value; } } return $saveData; } // +---------------------------------------- // | 【拼多多】相關函數 // +---------------------------------------- //格式化拼多多訂單數據 function orderFormatPdd($data) { global $_W; //確保uid值不小于0 //if($data['customParameters'] < 0) $data['customParameters']=0; //去除傭金比例中的百分號 $data['傭金比例']=str_replace("%", "", $data['傭金比例']); $newData=array( "weid"=>$_W['uniacid'], "order_sn" =>$data['訂單編號'], "goods_id" => $data['商品ID'], "goods_name" => trimExcessChar($data['商品信息']), "goods_thumbnail_url" => $data['商品圖片'], "goods_quantity" => $data['商品數'], "goods_price" => $data['商品價格'], "order_amount" => $data['訂單金額'], "order_create_time" => strtotime($data['創建時間']), "order_settle_time" => strtotime($data['結算時間']), "order_verify_time" => strtotime($data['審核時間']), "order_receive_time" => strtotime($data['收貨時間']), "order_pay_time" => strtotime($data['支付時間']), "promotion_rate" => str_replace("%", "", $data['傭金比例']), "promotion_amount" => $data['預估傭金收入'], "batch_no" => $data['batchNo'], "order_status" => $data['訂單狀態ID'], "order_status_desc" => $data['訂單狀態描述'], "verify_time" => strtotime($data['審核時間']), "order_group_success_time" => strtotime($data['拼團成功時間']), "order_modify_at" => strtotime($data['最后更新時間']), //"status" => $v['status'], "type" => $data['推廣方式ID'], "group_id" => $data['groupId'], "auth_duo_id" => $data['duoId'], "custom_parameters" => $data['customParameters'], "p_id" => $data['pid'], 'createtime'=>TIMESTAMP,//最后修改時間 ); return $newData; } // +---------------------------------------- // | 其他函數 // +---------------------------------------- //返回json信息并退出 function returnExit($return,$code,$message,$data=''){ $return['code']=$code; $return['message']=urlencode($message); if(!empty($data)) $return['data']=$data; exit(urldecode(json_encode($return))); } //構造返回狀態結果字符串 function resultState($result,$id,$v){ if (!empty($result)) $result.='|'; $result.=$id.':'.$v; return $result; } //獲取數據庫表的所有字段 function tableField($table){ $sqlColumns=pdo_fetchall('SHOW COLUMNS FROM '.$table);//查詢表的所有字段 //處理查詢結果 foreach($sqlColumns as $value) { if(isset($value['Field']) && isset($value['Type'])){ $sqlField[$value['Field']]=$value['Type']; } } return $sqlField; } //去除多余的字符 function trimExcessChar($str) { $str = trim($str); $str = str_replace(";", "", $str); $str = str_replace('"', "", $str); $str = str_replace('&quot', "", $str); $str = str_replace('&quot;', "", $str); $str = str_replace(PHP_EOL, '', $str); return $str; } //使用curl獲取頁面內容 function curl_file_get_contents($url){ //判斷是否重定向,如果重定向,就獲取重定向后的真實地址 for ($i=1; $i<=10; $i++) { $headers = curl_file_get_headers($url); $url=$headers["url"]; if($headers["http_code"]<>'302' and $headers["http_code"]<>'301') break; } //開始獲取內容 $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_TIMEOUT, 5); curl_setopt($ch, CURLOPT_USERAGENT, _USERAGENT_); curl_setopt($ch, CURLOPT_REFERER,_REFERER_); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $data = curl_exec($ch); curl_close($ch); return $data; } //使用curl獲取http頭 function curl_file_get_headers($url){ $ch = curl_init(); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); $data = curl_exec($ch); $Headers = curl_getinfo($ch); curl_close($ch); return $Headers; } ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看