|
@@ -43,6 +43,7 @@ class proxy
|
|
|
refill\util::push_queue_order($mchid,$mch_order,ORDER_STATE_SEND);
|
|
|
Model('refill_order')->edit_detail($mchid,$mch_order,['order_state' => ORDER_STATE_SEND]);
|
|
|
|
|
|
+
|
|
|
$first_comit = false;
|
|
|
if($card_type == 0)
|
|
|
{
|
|
@@ -56,6 +57,22 @@ class proxy
|
|
|
}
|
|
|
|
|
|
[$org_quality,$quality] = refill\RefillFactory::instance()->find_quality($mchid,$amount,$card_type,$org_quality,$cur_quality,$commit_times,time() - $order_time,'',$regin_no);
|
|
|
+ if($this->canceled($mchid,$mch_order))
|
|
|
+ {
|
|
|
+ if ($last_order_id === 0)
|
|
|
+ {
|
|
|
+ $order_id = refill\RefillFactory::instance()->zero_order($mchid, $buyer_id, $amount, $card_no,
|
|
|
+ $mch_order, $idcard, $card_name, $notify_url, $quality, $org_quality, $order_time, $commit_times, '订单被拦截');
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ $refill_order->edit($last_order_id, ['notify_time' => time(), 'notify_state' => 1,'is_retrying' => 0]);
|
|
|
+ }
|
|
|
+
|
|
|
+ refill\util::pop_queue_order($mchid,$mch_order);
|
|
|
+ QueueClient::push("NotifyMerchantComplete", ['order_id' => $order_id,'manual' => false]);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
if($first_comit) {
|
|
|
refill\util::incr_user_commit($mchid,$card_type,$amount,$org_quality);
|
|
|
}
|
|
@@ -125,6 +142,16 @@ class proxy
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private function canceled($mchid,$mch_order)
|
|
|
+ {
|
|
|
+ $order_state = refill\util::query_cancel_order($mchid,$mch_order);
|
|
|
+ if($order_state == 1) {
|
|
|
+ return true;
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
public function add_zero($params)
|
|
|
{
|
|
|
$mchid = $params['mchid'];
|