stanley-king 1 month ago
parent
commit
80a85b7186
1 changed files with 31 additions and 0 deletions
  1. 31 0
      mobile/control/refill.php

+ 31 - 0
mobile/control/refill.php

@@ -489,6 +489,37 @@ class refillControl extends merchantControl
         return self::outsuccess($result);
     }
 
+    public function interceptOp()
+    {
+        $mchid = $this->mchid();
+        $mch_order = $_GET['order_sn'];
+
+        if(empty($mch_order)) {
+            return self::outerr(205,"客户订单号为空.");
+        }
+
+        $mod_refill = Model('refill_order');
+        $order = $mod_refill->get_detail($mchid,$mch_order);
+
+        if(empty($order)) {
+            return self::outerr(205,"该订单号不存在.");
+        }
+
+        $order_state = $order['order_state'];
+        if($order_state === ORDER_STATE_HANDLED) {
+            return self::outerr(206,"该订单已经完成.");
+        }
+
+        $order_state = refill\util::query_queue_order($mchid,$mch_order);
+        if ($order_state == ORDER_STATE_TIMEOUT || $order_state == ORDER_STATE_HANDLED) {
+            Log::record("intercept timeout order mchid=$mchid mch_order=$mch_order order_state=$order_state" ,Log::DEBUG);
+            return self::outerr(206,"该订单已经完成.");
+        }
+
+        refill\util::set_cancel_order($mchid,$mch_order);
+        return self::outsuccess([]);
+    }
+
     private function format($order_info,$refill_info)
     {
         $result = [];