0;$x--){ $dstr = '-'.($x*20).' minutes'; $stime = date("Y-m-d H:i:s",strtotime($dstr)); //渠道失效订单 for($i=1;$i<100;$i++){ $res = TBK::syncOrder($i,$stime,$_time,13,'create_time',1,2); if(empty($res)){ break; } $orderResult = array_merge($orderResult, $res); } //会员失效订单 for($i=1;$i<100;$i++){ $res = TBK::syncOrder($i,$stime,$_time,13,'create_time',1,3); if(empty($res)){ break; } $orderResult = array_merge($orderResult, $res); } //渠道三方失效订单 for($i=1;$i<100;$i++){ $res = TBK::syncOrder($i,$stime,$_time,13,'create_time',2,2); if(empty($res)){ break; } $orderResult = array_merge($orderResult, $res); } //会员三方失效订单 for($i=1;$i<100;$i++){ $res = TBK::syncOrder($i,$stime,$_time,13,'create_time',2,3); if(empty($res)){ break; } $orderResult = array_merge($orderResult, $res); } } # 统计 $res_count = array( 'total_num' => 0, 'insert_num' => 0, 'update_num' => 0, 'fail_num' => 0, 'nshoud_update_num' => 0, ); #初始化pdo $_PDO=DB_PDO::getInstance( conf::$DB_CONF ); foreach($orderResult as $k=>$orderDetail){ $res_count['total_num']++; echo "/ ************************ order{$res_count['total_num']}-Start ************************* / \n"; echo 'order_id:'.$orderDetail['trade_id'].'|| goods_id:'.$orderDetail['num_iid'].'|| orderstatus:'.$orderDetail['tk_status'].'|| order_balance_at: || update_time:'.$now; if( DETAILDEBUG == 1){ echo 'orderDetail:'; var_dump($orderDetail); } # 花生联盟活跃relation逻辑 //退款逻辑跳过 if($orderDetail['adzone_id'] == '102465800487'){ echo "\n花生订单跳过\n"; continue; } $sql = "select id,tk_status from liedou_taoke_orders where trade_id = '".$orderDetail['trade_id']."' and num_iid = '".$orderDetail['num_iid']."' limit 1"; $stmt = $_PDO->prepare($sql); $stmt->execute(); $result = $stmt->fetch(PDO::FETCH_ASSOC); if(!empty($result)){ if($orderDetail['tk_status'] != $result['tk_status']){ //更新操作 $sql = "update liedou_taoke_orders set tk_status={$orderDetail['tk_status']} WHERE trade_id = '".$orderDetail['trade_id']."' and num_iid = '".$orderDetail['num_iid']."'"; $stmt = $_PDO->prepare($sql); $stmt->execute(); $res = $stmt->rowCount(); if($res){ echo "\n 更新成功 +1"; $res_count['update_num']++; }else{ echo "\n 更新失败 +1"; $res_count['fail_num']++; } }else{ echo "\n 状态未变,不做处理 +1"; $res_count['nshoud_update_num']++; } }else{ if(!isset($orderDetail['earning_time'])) $orderDetail['earning_time'] = '2000-00-00 00:00:00'; if(!isset($orderDetail['click_time'])) $orderDetail['click_time'] = $orderDetail['create_time']; if(!isset($orderDetail['special_id'])) $orderDetail['special_id'] = 0; if(!isset($orderDetail['relation_id'])) $orderDetail['relation_id'] = 0; if(!isset($orderDetail['total_commission_fee'])) $orderDetail['total_commission_fee'] = 0; if(!isset($orderDetail['subsidy_fee'])) $orderDetail['subsidy_fee'] = 0; if(!isset($orderDetail['pay_price'])) $orderDetail['pay_price'] = 0; if(!isset($orderDetail['commission'])) $orderDetail['commission'] = 0; if(!isset($orderDetail['subsidy_type'])) $orderDetail['subsidy_type'] = 0; if(!isset($orderDetail['tk3rd_type'])) $orderDetail['tk3rd_type'] = '--'; if(!isset($orderDetail['site_name'])) $orderDetail['site_name'] = ''; if(!isset($orderDetail['adzone_name'])) $orderDetail['adzone_name'] = ''; if(!isset($orderDetail['pub_share_pre_fee'])) $orderDetail['pub_share_pre_fee'] = 0; if(!isset($orderDetail['alipay_total_price'])) $orderDetail['alipay_total_price'] = 0; //create_time,click_time,item_title,num_iid,seller_nick,seller_shop_title,item_num,price,tk_status,order_type,income_rate,commission_rate,pay_price,pub_share_pre_fee,alipay_total_price,commission,earning_time,total_commission_rate,total_commission_fee,subsidy_rate,subsidy_fee,subsidy_type,terminal_type,tk3rd_type,trade_parent_id,trade_id,auction_category,site_id,site_name,adzone_id,adzone_name,relation_id,special_id $res = insertOrder($orderDetail, $res_count); } echo "\n/ ** order{$res_count['total_num']}-End ** /"; echo "\n\n\n"; } echo "\n失效订单:"; var_dump($res_count); } function insertOrder($orderDetail, &$res_count){ $orderDetail['item_title'] = addslashes($orderDetail['item_title']); $orderDetail['seller_nick'] = addslashes($orderDetail['seller_nick']); $orderDetail['seller_shop_title'] = addslashes($orderDetail['seller_shop_title']); if(!isset($orderDetail['special_id'])) $orderDetail['special_id'] = null; if(!isset($orderDetail['relation_id'])) $orderDetail['relation_id'] = null; $sql = "insert into liedou_taoke_orders(create_time,click_time,item_title,num_iid,seller_nick,seller_shop_title,item_num,price,tk_status,order_type,income_rate,commission_rate,pay_price,pub_share_pre_fee,alipay_total_price,commission,earning_time,total_commission_rate,total_commission_fee,subsidy_rate,subsidy_fee,subsidy_type,terminal_type,tk3rd_type,trade_parent_id,trade_id,auction_category,site_id,site_name,adzone_id,adzone_name,relation_id,special_id) values('".$orderDetail['create_time']."', '". $orderDetail['click_time']."', '". $orderDetail['item_title']."', '". $orderDetail['num_iid']."', '". $orderDetail['seller_nick']."', '". $orderDetail['seller_shop_title']."', '". $orderDetail['item_num']."', '". $orderDetail['price']."', '". $orderDetail['tk_status']."', '". $orderDetail['order_type']."', '". $orderDetail['income_rate']."', '". $orderDetail['commission_rate']."', '". $orderDetail['pay_price']."', '". $orderDetail['pub_share_pre_fee']."', '". $orderDetail['alipay_total_price']."', '". $orderDetail['commission']."', '". $orderDetail['earning_time']."', '". $orderDetail['total_commission_rate']."', '". $orderDetail['total_commission_fee']."', '". $orderDetail['subsidy_rate']."', '". $orderDetail['subsidy_fee']."', '". $orderDetail['subsidy_type']."', '". $orderDetail['terminal_type']."', '". $orderDetail['tk3rd_type']."', '". $orderDetail['trade_parent_id']."', '". $orderDetail['trade_id']."', '". $orderDetail['auction_category']."', '". $orderDetail['site_id']."', '". $orderDetail['site_name']."', '". $orderDetail['adzone_id']."', '". $orderDetail['adzone_name']."', '". $orderDetail['relation_id']."', '". $orderDetail['special_id']."')"; $_PDO=DB_PDO::getInstance( conf::$DB_CONF ); $stmt = $_PDO->prepare($sql); $stmt->execute(); $res = $_PDO->lastinsertid(); if($res){ echo "\n 插入成功 +1"; $res_count['insert_num']++; }else{ echo "\n 插入失败 +1"; $res_count['fail_num']++; } return $res; }