|
|
|
<?php
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 同步增量订单
|
|
|
|
*/
|
|
|
|
include_once dirname(dirname(__FILE__)).'/base/dealBase.php';
|
|
|
|
|
|
|
|
class syncIncrementOrders extends dealBase {
|
|
|
|
|
|
|
|
public function setPara() {
|
|
|
|
$this->processnum = $GLOBALS['DAEMON_NUMLIMIT'][DAEMON_SYNC_INCREMENT_ORDERS];
|
|
|
|
// $this->is_while = false;
|
|
|
|
}
|
|
|
|
|
|
|
|
public function deal() {
|
|
|
|
$obj = new mOrder();
|
|
|
|
$rdobj = $obj->initRedis();
|
|
|
|
$jsondata = $rdobj->rpop(_RQ_SYNC_INCREMENT_ORDERS);
|
|
|
|
if ($jsondata === false) exit();
|
|
|
|
|
|
|
|
$data = json_decode($jsondata, true);
|
|
|
|
|
|
|
|
if (time() < strtotime($data['end_date'])) {
|
|
|
|
sleep(10);
|
|
|
|
$rdobj->lpush(_RQ_SYNC_INCREMENT_ORDERS, $jsondata);
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
|
|
|
|
$start_date = $data['start_date'];
|
|
|
|
$end_date = $data['end_date'];
|
|
|
|
$name = $data['name'];
|
|
|
|
|
|
|
|
$sobj = new mShop();
|
|
|
|
$shopinfo = $sobj->getShopByName($name);
|
|
|
|
if (empty($shopinfo)) return false;
|
|
|
|
|
|
|
|
$pobj = new mPdd();
|
|
|
|
for ($page=1;;$page++) {
|
|
|
|
$trades = $pobj->getPddIncrOrderList($name, $start_date, $end_date, ORDER_STATUS_FULL, REFUND_STATUS_FULL, $page, 100);
|
|
|
|
if (!$trades) break;
|
|
|
|
if (empty($trades['order_sn_list'])) break;
|
|
|
|
|
|
|
|
$obj->addOrders($trades['order_sn_list'], $shopinfo['id'], $shopinfo['uid']);
|
|
|
|
|
|
|
|
if ($trades['has_next'] != true) break;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
$rdobj->lpush(_RQ_SYNC_INCREMENT_ORDERS, json_encode(array('name'=>$name, 'start_date'=>$end_date, 'end_date'=>date("Y-m-d H:i:s", strtotime($end_date." +5 minute")))));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
new syncIncrementOrders();
|