|
@@ -81,7 +81,7 @@ class RefillBase
|
|
|
{
|
|
|
$logic_vr_order->changeOrderStateCancel($order_info, '', "{$chname}接口回调通知失败,正在重试");
|
|
|
if ($this->retry($refill_info, $order_info)) {
|
|
|
- $mod_refill->edit($order_id, ['inner_status' => 1, 'notify_time' => time(), 'notify_state' => 1]);
|
|
|
+ $mod_refill->edit($order_id, ['is_retrying' => 1]);
|
|
|
$trans->commit();
|
|
|
return true;
|
|
|
}
|
|
@@ -127,7 +127,8 @@ class RefillBase
|
|
|
'idcard' => $refill_info['idcard'] ?? '',
|
|
|
'card_name' => $refill_info['card_name'] ?? '',
|
|
|
'order_time' => $refill_info['order_time'],
|
|
|
- 'commit_times' => $refill_info['commit_times'] + 1
|
|
|
+ 'commit_times' => $refill_info['commit_times'] + 1,
|
|
|
+ 'order_id' => $refill_info['order_id']
|
|
|
];
|
|
|
|
|
|
return util::push_add($params);
|
|
@@ -194,7 +195,7 @@ class RefillBase
|
|
|
// 其它情况,则需要判断订单ID
|
|
|
public function add($mchid, $buyer_id, $amount, $card_no,
|
|
|
$mch_order, $idcard, $card_name, $notify_url,$quality,
|
|
|
- $order_time, $commit_times)
|
|
|
+ $order_time, $commit_times,$last_orderid = 0)
|
|
|
{
|
|
|
$card_type = mtopcard\card_type($card_no);
|
|
|
[$providers,$overload] = $this->mPolicy->find_providers($amount,$card_type,$quality);
|
|
@@ -225,6 +226,7 @@ class RefillBase
|
|
|
|
|
|
$refill_state = false;
|
|
|
$order_success = false;
|
|
|
+
|
|
|
foreach ($providers as $provider)
|
|
|
{
|
|
|
$channel_name = $provider->name();
|
|
@@ -250,6 +252,11 @@ class RefillBase
|
|
|
$order_sn = $result['data']['order_sn'];
|
|
|
$order_id = $result['data']['order_id'];
|
|
|
|
|
|
+ if($last_orderid > 0) {
|
|
|
+ $mod_refill->edit($last_orderid, ['inner_status' => 1]);
|
|
|
+ }
|
|
|
+ $last_orderid = $order_id;
|
|
|
+
|
|
|
if(!$this->pay_completed($order_sn)) {
|
|
|
$logic_vr_order = Logic("vr_order");
|
|
|
$order_info = Model('vr_order')->getOrderInfo(['order_id' => $order_id]);
|
|
@@ -305,7 +312,8 @@ class RefillBase
|
|
|
$logic_vr_order = Logic("vr_order");
|
|
|
$order_info = Model('vr_order')->getOrderInfo(['order_id' => $order_id]);
|
|
|
$logic_vr_order->changeOrderStateCancel($order_info, '', "调用{$channel_name}接口失败");
|
|
|
- $mod_refill->edit($order_id, ['commit_time' => time(), 'inner_status' => 1]);
|
|
|
+
|
|
|
+ $mod_refill->edit($order_id, ['commit_time' => time()]);
|
|
|
}
|
|
|
}
|
|
|
|