stanley-king 4 年 前
コミット
d7fff542d8

+ 52 - 1
helper/refill/api/xyz/gftd/RefillOil.php

@@ -131,8 +131,59 @@ class RefillOil extends refill\IRefillOil
         }
     }
 
+    private function query_params($order_sn)
+    {
+        $params['appid'] = config::APP_ID;
+        $params['ts'] = time();
+        $params['outOrderNumber'] = $order_sn;
+
+        return $params;
+
+    }
+
     public function query($refill_info)
     {
-        return [false,'未实现查询接口'];
+        $order_sn = $refill_info['order_sn'];
+        $params = $this->query_params($order_sn);
+        $sign = $this->sign($params);
+        $params['signature'] = $sign;
+
+        $uri = config::ORDER_URL . "/fuelRecharge/order/detail";
+        $resp = http_post_data($uri,json_encode($params), config::ExtHeaders);
+        Log::record("query resp={$resp}",Log::DEBUG);
+
+        if($resp === false) {
+            return [false,'网络错误'];
+        }
+        else
+        {
+            Log::record($resp,Log::DEBUG);
+            $resp = json_decode($resp,true);
+
+            if($resp == false) {
+                return [false,'网络错误'];
+            }
+            elseif($resp['code'] == 0)
+            {
+                $data = $resp['data'];
+                $status = intval($data['orderStatus']);
+
+                if ($status === 101) {
+                    return [true, ORDER_STATE_SUCCESS];
+                }
+                elseif ($status === 102) {
+                    return [true, ORDER_STATE_CANCEL];
+                }
+                elseif($status === 100 || $status === 106) {
+                    return [true, ORDER_STATE_SEND];
+                }
+                else {
+                    return [false, $resp['message']];
+                }
+            }
+            else {
+                return [false,$resp['message']];
+            }
+        }
     }
 }

+ 51 - 1
helper/refill/api/xyz/gftdsinop/RefillOil.php

@@ -131,8 +131,58 @@ class RefillOil extends refill\IRefillOil
         }
     }
 
+    private function query_params($order_sn)
+    {
+        $params['appid'] = config::APP_ID;
+        $params['ts'] = time();
+        $params['outOrderNumber'] = $order_sn;
+
+        return $params;
+
+    }
+
     public function query($refill_info)
     {
-        return [false,'未实现查询接口'];
+        $order_sn = $refill_info['order_sn'];
+        $params = $this->query_params($order_sn);
+        $sign = $this->sign($params);
+        $params['signature'] = $sign;
+
+        $uri = config::ORDER_URL . "/fuelRecharge/order/detail";
+        $resp = http_post_data($uri,json_encode($params), config::ExtHeaders);
+        Log::record("query resp={$resp}",Log::DEBUG);
+
+        if($resp === false) {
+            return [false,'网络错误'];
+        }
+        else
+        {
+            Log::record($resp,Log::DEBUG);
+            $resp = json_decode($resp,true);
+
+            if($resp == false) {
+                return [false,'网络错误'];
+            }
+            elseif($resp['code'] == 0)
+            {
+                $data = $resp['data'];
+                $status = intval($data['orderStatus']);
+                if ($status === 101) {
+                    return [true, ORDER_STATE_SUCCESS];
+                }
+                elseif ($status === 102) {
+                    return [true, ORDER_STATE_CANCEL];
+                }
+                elseif($status === 100 || $status === 106) {
+                    return [true, ORDER_STATE_SEND];
+                }
+                else {
+                    return [false, $resp['message']];
+                }
+            }
+            else {
+                return [false,$resp['message']];
+            }
+        }
     }
 }