浏览代码

rtest feiniao afandnew debug

ayHaru 4 年之前
父节点
当前提交
dc1aacc639

+ 30 - 0
data/config/lingzh/refill.ini.php

@@ -253,6 +253,35 @@ $legou_phone = ['name' => 'legou', 'store_id' => 42,'qualitys' => '3',
     ],
     'official_sn' => true, 'refill_type' => 'api'];
 
+$feiniao_phone = ['name' => 'feiniao', 'store_id' => 44,'qualitys' => '1',
+    'amount' => [
+        10 => [
+            ['goods_id' => 65, 'price' => 9.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        20 => [
+            ['goods_id' => 66, 'price' => 19, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        30 => [
+            ['goods_id' => 67, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        50 => [
+            ['goods_id' => 68, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        100 => [
+            ['goods_id' => 69, 'price' => 95, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        200 => [
+            ['goods_id' => 70, 'price' => 190, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        300 => [
+            ['goods_id' => 71, 'price' => 285, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        500 => [
+            ['goods_id' => 72, 'price' => 475, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+    ],
+    'official_sn' => true, 'refill_type' => 'api'];
+
 $phone_providers = [
     ['name' => 'baizeyd', 'cfg' => $baizeyd, 'opened' => true, 'sort' => 1],
     ['name' => 'aming', 'cfg' => $aming_phone, 'opened' => true, 'sort' => 1],
@@ -264,5 +293,6 @@ $phone_providers = [
     ['name' => 'chuka', 'cfg' => $chuka_phone, 'opened' => true, 'sort' => 1],
     ['name' => 'amingjd', 'cfg' => $amingjd_phone],
     ['name' => 'legou', 'cfg' => $legou_phone],
+    ['name' => 'feiniao', 'cfg' => $feiniao_phone],
     ];
 $config['phone_providers'] = $phone_providers;

+ 213 - 257
data/config/win/refill.ini.php

@@ -2,311 +2,267 @@
 
 global $config;
 
-$config['refill_oil_specs'] = [100, 200, 500, 1000, 2000];
-$config['refill_phone_specs'] = [10, 20, 30, 50, 100, 200, 300, 500];
-
+$config['refill_oil_specs'] = [100 , 200 , 500 , 1000 , 2000];
+$config['refill_phone_specs'] = [10 , 20 , 30 , 50 , 100 , 200 , 300 , 500];
 //充值额度基本表
 $config['refill_specs'] = [
-    'petrochina'  => $config['refill_oil_specs'],
-    'sinopec'     => $config['refill_oil_specs'],
-    'chinamobile' => $config['refill_phone_specs'],
-    'chinaunicom' => $config['refill_phone_specs'],
-    'chinatelecom' => $config['refill_phone_specs']
+    'petrochina'    => $config['refill_oil_specs'],
+    'sinopec'       => $config['refill_oil_specs'],
+    'chinamobile'   => $config['refill_phone_specs'],
+    'chinaunicom'   => $config['refill_phone_specs'],
+    'chinatelecom'  => $config['refill_phone_specs']
 ];
 
-//充值渠道配置表
-//速汇充京东加油通道
-$tianjt_oil = ['name' => 'tianjt', 'store_id' => 7, 'qualitys' => '1',
-    'amount' => [
-        100 => [['goods_id' => 6290, 'price' => 97.0, 'quality' => 1, 'card_type' => 'sinopec']],
-        200 => [['goods_id' => 6291, 'price' => 194, 'quality' => 1, 'card_type' => 'sinopec']],
-        500 => [['goods_id' => 6292, 'price' => 485, 'quality' => 1, 'card_type' => 'sinopec']],
-        1000 => [['goods_id' => 6293, 'price' => 970, 'quality' => 1, 'card_type' => 'sinopec']]
-    ],
-    'period' => ['start' => '8:30', 'end' => '22:20'], 'refill_type' => 'api'];
-
-//速汇充天猫加油通道
-$suhctm_oil = ['name' => 'suhctm', 'store_id' => 7, 'qualitys' => '1',
-    'amount' => [
-        100 => [['goods_id' => 6290, 'price' => 96.8, 'quality' => 1, 'card_type' => 'sinopec']],
-        200 => [['goods_id' => 6291, 'price' => 193.6, 'quality' => 1, 'card_type' => 'sinopec']],
-        500 => [['goods_id' => 6292, 'price' => 484, 'quality' => 1, 'card_type' => 'sinopec']],
-        1000 => [['goods_id' => 6293, 'price' => 968, 'quality' => 1, 'card_type' => 'sinopec']]
-    ],
-    'period' => ['start' => '8:30', 'end' => '22:20'], 'refill_type' => 'api'];
-
-$suhcpdd_oil = ['name' => 'suhcpdd', 'store_id' => 7, 'qualitys' => '1',
-    'amount' => [
-        100 => [['goods_id' => 6290, 'price' => 96.8, 'quality' => 1, 'card_type' => 'sinopec']],
-        200 => [['goods_id' => 6291, 'price' => 193.6, 'quality' => 1, 'card_type' => 'sinopec']],
-        500 => [['goods_id' => 6292, 'price' => 484, 'quality' => 1, 'card_type' => 'sinopec']],
-        1000 => [['goods_id' => 6293, 'price' => 968, 'quality' => 1, 'card_type' => 'sinopec']]
-    ],
-    'period' => ['start' => '8:30', 'end' => '22:20'], 'refill_type' => 'api'];
-
-//赵梓暄提供的加油通道
-$zzx_oil = ['name' => 'zzx', 'store_id' => 13, 'qualitys' => '1',
-    'amount' => [
-        100 => [['goods_id' => 6307, 'price' => 97.8, 'quality' => 1, 'card_type' => 'petrochina,sinopec']],
-        200 => [['goods_id' => 6308, 'price' => 195.6, 'quality' => 1, 'card_type' => 'petrochina,sinopec']],
-        500 => [['goods_id' => 6309, 'price' => 489, 'quality' => 1, 'card_type' => 'petrochina,sinopec']],
-        1000 => [['goods_id' => 6310, 'price' => 978, 'quality' => 1, 'card_type' => 'petrochina,sinopec']]
-    ],
-    'refill_type' => 'api'];
-
-//赵梓暄提供的加油通道
-$lx_oil = ['name' => 'lx', 'store_id' => 14, 'qualitys' => '1',
-    'amount' => [
-        500 => [['goods_id' => 6322, 'price' => 479, 'quality' => 1, 'card_type' => 'sinopec']],
-        1000 => [['goods_id' => 6311, 'price' => 958, 'quality' => 1, 'card_type' => 'sinopec']] //,
-//        2000 => ['goods_id' => 6322, 'price' => 1916]
-    ],
-    'period' => ['start' => '14:00', 'end' => '19:00'], 'official_sn' => true, 'refill_type' => 'inner_store'];
-
-//赛虎
-$saihu_oil = ['name' => 'saihu', 'store_id' => 15, 'qualitys' => '1',
-    'amount' => [
-        100 => [['goods_id' => 6313, 'price' => 97, 'quality' => 1, 'card_type' => 'sinopec']],
-        200 => [['goods_id' => 6314, 'price' => 194, 'quality' => 1, 'card_type' => 'sinopec']],
-        500 => [['goods_id' => 6315, 'price' => 485, 'quality' => 1, 'card_type' => 'sinopec']],
-        1000 => [['goods_id' => 6316, 'price' => 970, 'quality' => 1, 'card_type' => 'sinopec']],
-        2000 => [['goods_id' => 6317, 'price' => 1940, 'quality' => 1, 'card_type' => 'sinopec']]
-    ],
-    'refill_type' => 'api'];
-
-#官方中石油通道
-$gftd_oil = ['name' => 'gftd', 'store_id' => 19, 'qualitys' => '1',
-    'amount' => [
-        100 => [['goods_id' => 6339, 'price' => 95, 'quality' => 1, 'card_type' => 'petrochina']],
-        200 => [['goods_id' => 6340, 'price' => 190, 'quality' => 1, 'card_type' => 'petrochina']],
-        500 => [['goods_id' => 6341, 'price' => 475, 'quality' => 1, 'card_type' => 'petrochina']],
-        1000 => [['goods_id' => 6342, 'price' => 950, 'quality' => 1, 'card_type' => 'petrochina']]
-    ],
-    'period' => [], 'refill_type' => 'api'];
-
-#官方中石化通道
-$gftdsinop_oil = ['name' => 'gftdsinop', 'store_id' => 20, 'qualitys' => '1',
-    'amount' => [
-        100 => [['goods_id' => 6343, 'price' => 95, 'quality' => 1, 'card_type' => 'sinopec']],
-        200 => [['goods_id' => 6344, 'price' => 190, 'quality' => 1, 'card_type' => 'sinopec']],
-        500 => [['goods_id' => 6345, 'price' => 475, 'quality' => 1, 'card_type' => 'sinopec']],
-        1000 => [['goods_id' => 6346, 'price' => 950, 'quality' => 1, 'card_type' => 'sinopec']]
-    ],
-    'period' => [], 'refill_type' => 'api'];
 
-$oil_providers = [
-    ['name' => 'tianjt', 'cfg' => $tianjt_oil],
-    ['name' => 'suhctm', 'cfg' => $suhctm_oil],
-    ['name' => 'suhcpdd', 'cfg' => $suhcpdd_oil],
-    ['name' => 'zzx', 'cfg' => $zzx_oil],
-    ['name' => 'lx', 'cfg' => $lx_oil],
-    ['name' => 'saihu', 'cfg' => $saihu_oil],
-    ['name' => 'gftd', 'cfg' => $gftd_oil],
-    ['name' => 'gftdsinop', 'cfg' => $gftdsinop_oil]
-];
+//充值渠道配置表
+$oil_providers = [];
 $config['oil_providers'] = $oil_providers;
 
-$beixt_phone = ['name' => 'beixt', 'store_id' => 8, 'qualitys' => '1',
-    'amount' => [
-        50 => [['goods_id' => 6295, 'price' => 48.75, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        100 => [['goods_id' => 6296, 'price' => 97.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        200 => [['goods_id' => 6297, 'price' => 195,  'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']]
-    ],
-    'refill_type' => 'api'];
-
-$bxtwt_phone = ['name' => 'bxtwt', 'store_id' => 10, 'qualitys' => '1',
-    'amount' => [
-        50 => [['goods_id' => 6298, 'price' => 48,   'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        100 => [['goods_id' => 6299, 'price' => 96,  'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        200 => [['goods_id' => 6300, 'price' => 192, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']]
-    ],
-    'refill_type' => 'api'];
 
-$bjb_phone = ['name' => 'bjb', 'store_id' => 12, 'qualitys' => '1',
+$baizeyd = ['name' => 'baizeyd', 'store_id' => 32,'qualitys' => '1',
     'amount' => [
-        10 => [['goods_id' => 6305, 'price' => 9.51,  'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        20 => [['goods_id' => 6306, 'price' => 19.02, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        30 => [['goods_id' => 6301, 'price' => 28.53, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        50 => [['goods_id' => 6302, 'price' => 47.55, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        100 => [['goods_id' => 6303, 'price' => 95.1, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        200 => [['goods_id' => 6304, 'price' => 190.20, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        300 => [['goods_id' => 6327, 'price' => 285.30, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        500 => [['goods_id' => 6328, 'price' => 475.50, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']]
-    ],
-    'official_sn' => true, 'refill_type' => 'api'];
-$lingzh_phone = ['name' => 'lingzh', 'store_id' => 28, 'qualitys' => '1',
-    'amount' => [
-        10 => [['goods_id' => 6389, 'price' => 9.53, 'quality' => 1, 'card_type' => 'chinamobile']],
-        20 => [['goods_id' => 6390, 'price' => 19.06, 'quality' => 1, 'card_type' => 'chinamobile']],
-        30 => [['goods_id' => 6391, 'price' => 28.59, 'quality' => 1, 'card_type' => 'chinamobile']],
-        50 => [['goods_id' => 6392, 'price' => 47.65, 'quality' => 1, 'card_type' => 'chinamobile']],
-        100 => [['goods_id' => 6393, 'price' => 95.3, 'quality' => 1, 'card_type' => 'chinamobile']],
-        200 => [['goods_id' => 6394, 'price' => 190.60, 'quality' => 1, 'card_type' => 'chinamobile']],
-        300 => [['goods_id' => 6395, 'price' => 285.90, 'quality' => 1, 'card_type' => 'chinamobile']],
-        500 => [['goods_id' => 6396, 'price' => 476.50, 'quality' => 1, 'card_type' => 'chinamobile']]
+        10 => [
+            ['goods_id' => 1, 'price' => 9.51, 'quality' => 1, 'card_type' => 'chinamobile']
+        ],
+        30 => [
+            ['goods_id' => 3, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinamobile']
+        ],
+        50 => [
+            ['goods_id' => 4, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinamobile']
+        ],
+        100 => [
+            ['goods_id' => 5, 'price' => 95, 'quality' => 1, 'card_type' => 'chinamobile']
+        ],
+        200 => [
+            ['goods_id' => 6, 'price' => 190, 'quality' => 1, 'card_type' => 'chinamobile']
+        ],
     ],
     'official_sn' => true, 'refill_type' => 'api'];
 
-$lingzhdl_phone = ['name' => 'lingzhdl', 'store_id' => 29, 'card_type' => ['chinaunicom', 'chinatelecom'], 'qualitys' => '1',
-    'amount' => [
-        10 => [['goods_id' => 6397, 'price' => 9.51, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        20 => [['goods_id' => 6398, 'price' => 19.02, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        30 => [['goods_id' => 6399, 'price' => 28.53, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        50 => [['goods_id' => 6400, 'price' => 47.55, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        100 => [['goods_id' => 6401, 'price' => 95.1, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        200 => [['goods_id' => 6402, 'price' => 190.20, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        300 => [['goods_id' => 6403, 'price' => 285.30, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        500 => [['goods_id' => 6404, 'price' => 475.50, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']]
-    ],
-    'official_sn' => true, 'refill_type' => 'api'];
 
-$bjbyd_phone = ['name' => 'bjbyd', 'store_id' => 24, 'qualitys' => '1',
+$aming_phone = ['name' => 'aming', 'store_id' => 34,'qualitys' => '1',
     'amount' => [
-        30 => [['goods_id' => 6367, 'price' => 28.53, 'quality' => 1, 'card_type' => 'chinamobile']],
-        50 => [['goods_id' => 6368, 'price' => 47.55, 'quality' => 1, 'card_type' => 'chinamobile']],
-        100 => [['goods_id' => 6369, 'price' => 95.1, 'quality' => 1, 'card_type' => 'chinamobile']],
-        200 => [['goods_id' => 6370, 'price' => 190.2, 'quality' => 1, 'card_type' => 'chinamobile']]
+        10 => [
+            ['goods_id'  => 9, 'price' => 9.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        20 => [
+            ['goods_id' => 10, 'price' => 19, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        30 => [
+            ['goods_id' => 11, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        50 => [
+            ['goods_id' => 12, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        100 => [
+            ['goods_id' => 13, 'price' => 95, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        200 => [
+            ['goods_id' => 14, 'price' => 190, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        300 => [
+            ['goods_id' => 15, 'price' => 285, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        500 => [
+            ['goods_id' => 16, 'price' => 475, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
     ],
     'official_sn' => true, 'refill_type' => 'api'];
 
-$afandnew_phone = ['name' => 'afandnew', 'store_id' => 25, 'qualitys' => '1',
+$binghc_phone = ['name' => 'binghc', 'store_id' => 35,'qualitys' => '1',
     'amount' => [
-        30 => [['goods_id' => 6386, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinamobile']],
-        50 => [['goods_id' => 6371, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinamobile']],
-        100 => [['goods_id' => 6372, 'price' => 95, 'quality' => 1, 'card_type' => 'chinamobile']],
-        200 => [['goods_id' => 6373, 'price' => 190, 'quality' => 1, 'card_type' => 'chinamobile']],
-        300 => [['goods_id' => 6387, 'price' => 285, 'quality' => 1, 'card_type' => 'chinamobile']],
-        500 => [['goods_id' => 6388, 'price' => 475, 'quality' => 1, 'card_type' => 'chinamobile']]
+        10 => [
+            ['goods_id' => 17, 'price' => 9.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        20 => [
+            ['goods_id' => 18, 'price' => 19, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        30 => [
+            ['goods_id' => 19, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        50 => [
+            ['goods_id' => 20, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        100 => [
+            ['goods_id' => 21, 'price' => 95, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        200 => [
+            ['goods_id' => 22, 'price' => 190, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        300 => [
+            ['goods_id' => 23, 'price' => 285, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        500 => [
+            ['goods_id' => 24, 'price' => 475, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
     ],
-    'refill_type' => 'api'];
-
-$tianx_phone = ['name' => 'tianx', 'store_id' => 25, 'qualitys' => '1',
-    'amount' => [
-        50 => [['goods_id' => 6371, 'price' => 46.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        100 => [['goods_id' => 6372, 'price' => 93,  'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        200 => [['goods_id' => 6373, 'price' => 186, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']]
-    ],
-    'refill_type' => 'api'];
-
-$yifa_phone = ['name' => 'yifa', 'store_id' => 16, 'qualitys' => '1',
-    'amount' => [
-        30 => [['goods_id' => 6318, 'price' => 28.65, 'quality' => 1, 'card_type' => 'chinamobile']],
-        50 => [['goods_id' => 6319, 'price' => 47.75, 'quality' => 1, 'card_type' => 'chinamobile']],
-        100 => [['goods_id' => 6320, 'price' => 95.5, 'quality' => 1, 'card_type' => 'chinamobile']],
-        200 => [['goods_id' => 6321, 'price' => 191,  'quality' => 1, 'card_type' => 'chinamobile']]
-    ],
-    'refill_type' => 'api'];
+    'official_sn' => true, 'refill_type' => 'api'];
 
-$jiec_phone = ['name' => 'jiec', 'store_id' => 17, 'qualitys' => '1',
+$ruishun_phone = ['name' => 'ruishun', 'store_id' => 36,'qualitys' => '1',
     'amount' => [
-        30 => [['goods_id' => 6323, 'price' => 28.65, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        50 => [['goods_id' => 6324, 'price' => 47.75, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        100 => [['goods_id' => 6325, 'price' => 95.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        200 => [['goods_id' => 6326, 'price' => 191, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        300 => [['goods_id' => 6329, 'price' => 286.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        500 => [['goods_id' => 6330, 'price' => 477.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']]
+        10 => [
+            ['goods_id' => 25, 'price' => 9.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        20 => [
+            ['goods_id' => 26, 'price' => 19, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        30 => [
+            ['goods_id' => 27, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        50 => [
+            ['goods_id' => 28, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        100 => [
+            ['goods_id' => 29, 'price' => 95, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        200 => [
+            ['goods_id' => 30, 'price' => 190, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        300 => [
+            ['goods_id' => 31, 'price' => 285, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
+        500 => [
+            ['goods_id' => 32, 'price' => 475, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']
+        ],
     ],
     'official_sn' => true, 'refill_type' => 'api'];
 
-$weit_phone = ['name' => 'weit', 'store_id' => 18, 'qualitys' => '1',
+$wuchen_phone = ['name' => 'wuchen', 'store_id' => 37,'qualitys' => '1',
     'amount' => [
-        10 => [['goods_id' => 6337, 'price' => 9.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        20 => [['goods_id' => 6338, 'price' => 19, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        30 => [['goods_id' => 6331, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        50 => [['goods_id' => 6332, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        100 => [['goods_id' => 6333, 'price' => 95, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        200 => [['goods_id' => 6334, 'price' => 190, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        300 => [['goods_id' => 6335, 'price' => 285, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        500 => [['goods_id' => 6336, 'price' => 475, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']]
+        10 => [
+            ['goods_id' => 33, 'price' => 9.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        20 => [
+            ['goods_id' => 34, 'price' => 19, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        30 => [
+            ['goods_id' => 35, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        50 => [
+            ['goods_id' => 36, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        100 => [
+            ['goods_id' => 37, 'price' => 95, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        200 => [
+            ['goods_id' => 38, 'price' => 190, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        300 => [
+            ['goods_id' => 39, 'price' => 285, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        500 => [
+            ['goods_id' => 40, 'price' => 475, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
     ],
     'official_sn' => true, 'refill_type' => 'api'];
 
-$afand_phone = ['name' => 'afand', 'store_id' => 26, 'qualitys' => '1',
+$yibao_phone = ['name' => 'yibao', 'store_id' => 38,'qualitys' => '1',
     'amount' => [
-        30 => [['goods_id' => 6374, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        50 => [['goods_id' => 6375, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        100 => [['goods_id' => 6376, 'price' => 95, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        200 => [['goods_id' => 6377, 'price' => 190, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        300 => [['goods_id' => 6378, 'price' => 285, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']],
-        500 => [['goods_id' => 6379, 'price' => 475, 'quality' => 1, 'card_type' => 'chinaunicom,chinatelecom']]
+        30 => [
+            ['goods_id' => 41, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        50 => [
+            ['goods_id' => 42, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        100 => [
+            ['goods_id' => 43, 'price' => 95, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        200 => [
+            ['goods_id' => 44, 'price' => 190, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
     ],
     'official_sn' => true, 'refill_type' => 'api'];
 
-$afandeng_phone = ['name' => 'afandeng', 'store_id' => 27, 'qualitys' => '1',
+$amingyd_phone = ['name' => 'amingyd', 'store_id' => 39,'qualitys' => '1',
     'amount' => [
-        10 => [['goods_id' => 6406, 'price' => 9.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        20 => [['goods_id' => 6407, 'price' => 19, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        30 => [['goods_id' => 6380, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        50 => [['goods_id' => 6381, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        100 => [['goods_id' => 6382, 'price' => 95, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        200 => [['goods_id' => 6383, 'price' => 190, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        300 => [['goods_id' => 6384, 'price' => 285, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        500 => [['goods_id' => 6385, 'price' => 475, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']]
+        30 => [
+            ['goods_id' => 45, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinamobile']
+        ],
+        50 => [
+            ['goods_id' => 46, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinamobile']
+        ],
+        100 => [
+            ['goods_id' => 47, 'price' => 95, 'quality' => 1, 'card_type' => 'chinamobile']
+        ],
+        200 => [
+            ['goods_id' => 48, 'price' => 190, 'quality' => 1, 'card_type' => 'chinamobile']
+        ],
     ],
     'official_sn' => true, 'refill_type' => 'api'];
 
-$tongy_phone = ['name' => 'tongy', 'store_id' => 31, 'qualitys' => '2',
+$chuka_phone = ['name' => 'chuka', 'store_id' => 40,'qualitys' => '1',
     'amount' => [
-        30 => [['goods_id' => 6408, 'price' => 29.76, 'quality' => 2, 'card_type' => 'chinamobile'],
-            ['goods_id' => 6408, 'price' => 29.4, 'quality' => 2, 'card_type' => 'chinaunicom'],
-            ['goods_id' => 6408, 'price' => 29.64, 'quality' => 2, 'card_type' => 'chinatelecom']],
-
-        50 => [['goods_id' => 6409, 'price' => 49.6, 'quality' => 2, 'card_type' => 'chinamobile'],
-            ['goods_id' => 6409, 'price' => 48.75, 'quality' => 2, 'card_type' => 'chinaunicom'],
-            ['goods_id' => 6409, 'price' => 49.4, 'quality' => 2, 'card_type' => 'chinatelecom']],
-
-        100 => [['goods_id' => 6410, 'price' => 99.2, 'quality' => 2, 'card_type' => 'chinamobile'],
-            ['goods_id' => 6410, 'price' => 97.5, 'quality' => 2, 'card_type' => 'chinaunicom'],
-            ['goods_id' => 6410, 'price' => 98.8, 'quality' => 2, 'card_type' => 'chinatelecom']],
-
-        200 => [['goods_id' => 6411, 'price' => 198.4, 'quality' => 2, 'card_type' => 'chinamobile'],
-            ['goods_id' => 6411, 'price' => 194.6, 'quality' => 2, 'card_type' => 'chinaunicom'],
-            ['goods_id' => 6411, 'price' => 197.6, 'quality' => 2, 'card_type' => 'chinatelecom']],
-
-        300 => [['goods_id' => 6412, 'price' => 297.6, 'quality' => 2, 'card_type' => 'chinamobile'],
-            ['goods_id' => 6412, 'price' => 291.9, 'quality' => 2, 'card_type' => 'chinaunicom'],
-            ['goods_id' => 6412, 'price' => 296.4, 'quality' => 2, 'card_type' => 'chinatelecom']],
-
-        500 => [['goods_id' => 6413, 'price' => 496, 'quality' => 2, 'card_type' => 'chinamobile'],
-            ['goods_id' => 6413, 'price' => 486.5, 'quality' => 2, 'card_type' => 'chinaunicom'],
-            ['goods_id' => 6413, 'price' => 494, 'quality' => 2, 'card_type' => 'chinatelecom']]
+        20 => [
+            ['goods_id' => 49, 'price' => 19, 'quality' => 1, 'card_type' => 'chinaunicom']
+        ],
+        30 => [
+            ['goods_id' => 50, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinaunicom']
+        ],
+        50 => [
+            ['goods_id' => 51, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinaunicom']
+        ],
+        100 => [
+            ['goods_id' => 52, 'price' => 95, 'quality' => 1, 'card_type' => 'chinaunicom']
+        ],
     ],
     'official_sn' => true, 'refill_type' => 'api'];
 
-$weiyi_phone = ['name' => 'weiyi', 'store_id' => 32, 'qualitys' => '1',
+$amingjd_phone = ['name' => 'amingjd', 'store_id' => 41,'qualitys' => '5',
     'amount' => [
-        10 => [['goods_id' => 6414, 'price' => 9.6, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        20 => [['goods_id' => 6415, 'price' => 19.2, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        30 => [['goods_id' => 6416, 'price' => 28.8, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        50 => [['goods_id' => 6417, 'price' => 48, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        100 => [['goods_id' => 6418, 'price' => 96, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        200 => [['goods_id' => 6419, 'price' => 192, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        300 => [['goods_id' => 6420, 'price' => 288, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        500 => [['goods_id' => 6421, 'price' => 480, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']]
+        30 => [
+            ['goods_id' => 55, 'price' => 27, 'quality' => 5, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        50 => [
+            ['goods_id' => 56, 'price' => 45, 'quality' => 5, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        100 => [
+            ['goods_id' => 53, 'price' => 90, 'quality' => 5, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        200 => [
+            ['goods_id' => 54, 'price' => 180, 'quality' => 5, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ]
     ],
     'official_sn' => true, 'refill_type' => 'api'];
 
-$tonglu_phone = ['name' => 'tonglu', 'store_id' => 33, 'qualitys' => '1',
+$legou_phone = ['name' => 'legou', 'store_id' => 34,'qualitys' => '3',
     'amount' => [
-        10 => [['goods_id' => 6422, 'price' => 9.4, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        20 => [['goods_id' => 6423, 'price' => 18.8, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        30 => [['goods_id' => 6424, 'price' => 28.2, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        50 => [['goods_id' => 6425, 'price' => 47, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        100 => [['goods_id' => 6426, 'price' => 94, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        200 => [['goods_id' => 6427, 'price' => 188, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        300 => [['goods_id' => 6428, 'price' => 282, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
-        500 => [['goods_id' => 6429, 'price' => 470, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']]
+        10 => [
+            ['goods_id' => 33, 'price' => 9.5, 'quality' => 3, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        20 => [
+            ['goods_id' => 34, 'price' => 19, 'quality' => 3, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        30 => [
+            ['goods_id' => 35, 'price' => 28.5, 'quality' => 3, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        50 => [
+            ['goods_id' => 36, 'price' => 47.5, 'quality' => 3, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        100 => [
+            ['goods_id' => 37, 'price' => 95, 'quality' => 3, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        200 => [
+            ['goods_id' => 38, 'price' => 190, 'quality' => 3, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        300 => [
+            ['goods_id' => 39, 'price' => 285, 'quality' => 3, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
+        500 => [
+            ['goods_id' => 40, 'price' => 475, 'quality' => 3, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']
+        ],
     ],
     'official_sn' => true, 'refill_type' => 'api'];
 
 $phone_providers = [
-    ['name' => 'afand', 'cfg' => $afand_phone],
-    ['name' => 'afandeng', 'cfg' => $afandeng_phone],
-    ['name' => 'afandnew', 'cfg' => $afandnew_phone],
-    ['name' => 'lingzh', 'cfg' => $lingzh_phone],
-    ['name' => 'lingzhdl', 'cfg' => $lingzhdl_phone],
-    ['name' => 'tongy', 'cfg' => $tongy_phone],
-    ['name' => 'weiyi', 'cfg' => $weiyi_phone],
-    ['name' => 'tonglu', 'cfg' => $tonglu_phone],
+    ['name' => 'baizeyd', 'cfg' => $baizeyd, 'opened' => true, 'sort' => 1],
+    ['name' => 'aming', 'cfg' => $aming_phone, 'opened' => true, 'sort' => 1],
+    ['name' => 'binghc', 'cfg' => $binghc_phone, 'opened' => true, 'sort' => 1],
+    ['name' => 'ruishun', 'cfg' => $ruishun_phone, 'opened' => true, 'sort' => 1],
+    ['name' => 'wuchen', 'cfg' => $wuchen_phone, 'opened' => true, 'sort' => 1],
+    ['name' => 'yibao', 'cfg' => $yibao_phone, 'opened' => true, 'sort' => 1],
+    ['name' => 'amingyd', 'cfg' => $amingyd_phone, 'opened' => true, 'sort' => 1],
+    ['name' => 'chuka', 'cfg' => $chuka_phone, 'opened' => true, 'sort' => 1],
+    ['name' => 'amingjd', 'cfg' => $amingjd_phone],
+    ['name' => 'legou', 'cfg' => $legou_phone],
 ];
 $config['phone_providers'] = $phone_providers;

+ 3 - 6
data/config/xyz/refill.ini.php

@@ -205,12 +205,9 @@ $bjbyd_phone = ['name' => 'bjbyd', 'store_id' => 24,'qualitys' => '1',
 
 $afandnew_phone = ['name' => 'afandnew', 'store_id' => 25,'qualitys' => '1',
     'amount' => [
-        30 => [['goods_id' => 6386, 'price' => 28.5, 'quality' => 1, 'card_type' => 'chinamobile']],
-        50 => [['goods_id' => 6371, 'price' => 47.5, 'quality' => 1, 'card_type' => 'chinamobile']],
-        100 => [['goods_id' => 6372, 'price' => 95, 'quality' => 1, 'card_type' => 'chinamobile']],
-        200 => [['goods_id' => 6373, 'price' => 190, 'quality' => 1, 'card_type' => 'chinamobile']],
-        300 => [['goods_id' => 6387, 'price' => 285, 'quality' => 1, 'card_type' => 'chinamobile']],
-        500 => [['goods_id' => 6388, 'price' => 475, 'quality' => 1, 'card_type' => 'chinamobile']]
+        50 => [['goods_id' => 6371, 'price' => 47.75, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        100 => [['goods_id' => 6372, 'price' => 95.5, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']],
+        200 => [['goods_id' => 6373, 'price' => 191, 'quality' => 1, 'card_type' => 'chinamobile,chinaunicom,chinatelecom']]
     ],
     'refill_type' => 'api'];
 

+ 1 - 1
helper/fcgisrv/LZRAccServer.php

@@ -28,7 +28,7 @@ class LZRAccServer extends BaseServer
             'callback/lingzh/baizeyd.php','callback/lingzh/aming.php','callback/lingzh/binghc.php',
             'callback/lingzh/ruishun.php','callback/lingzh/wuchen.php','callback/lingzh/yibao.php',
             'callback/lingzh/amingyd.php','callback/lingzh/chuka.php','callback/lingzh/amingjd.php',
-            'callback/lingzh/legou.php'
+            'callback/lingzh/legou.php'  ,'callback/lingzh/feiniao.php'
         ];
 
         $this->setExFiles($exfiles);

+ 59 - 0
helper/refill/api/lingzh/feiniao/RefillCallBack.php

@@ -0,0 +1,59 @@
+<?php
+
+
+namespace refill\feiniao;
+
+require_once(BASE_HELPER_RAPI_PATH . '/feiniao/config.php');
+
+
+use refill;
+
+class RefillCallBack implements refill\IRefillCallBack
+{
+    public function verify($params): bool
+    {
+        $sign = $this->sign($params);
+        if ($params['sign'] == $sign) {
+            return true;
+        } else {
+            return false;
+        }
+    }
+
+    private function sign($params)
+    {
+        $content  = $params['result'] . $params['msg'];
+        if(is_null($params['order'])) {
+            $content .= "null";
+        }else{
+            $content .= $params['order'];
+        }
+        $content .= $params['phone_no'] . $params['amount'] . $params['op_no'] . config::KEY;
+        return md5($content);
+    }
+
+
+    public function notify($params)
+    {
+        $status = $params['result'];
+        $order_sn = $params['op_no'];
+        $order_info = Model('vr_order')->getOrderInfo(['order_sn' => $order_sn]);
+        if (empty($order_info)) {
+            return [false, false, false,false];
+        }
+        $order_id = $order_info['order_id'];
+        
+        $data['official_sn'] = strtolower($params['order']) == 'null' ? '' : $params['order'];
+
+        if ($status === 'success') {
+            Model('refill_order')->edit($order_id, $data);
+            return [$order_id, true, false,true];
+        }
+        elseif ($status === 'fail') {
+            return [$order_id, false, false,true];
+        }
+        else {
+            return [$order_id, false, false,false];
+        }
+    }
+}

+ 92 - 0
helper/refill/api/lingzh/feiniao/RefillPhone.php

@@ -0,0 +1,92 @@
+<?php
+
+namespace refill\feiniao;
+
+require_once(BASE_HELPER_RAPI_PATH . '/feiniao/config.php');
+
+use refill;
+use Log;
+
+class RefillPhone extends refill\IRefillPhone
+{
+    public function __construct($cfgs)
+    {
+        parent::__construct($cfgs);
+    }
+
+    private function req_params(int $phone, int $amount, string $order_sn)
+    {
+        $params['phone'] = $phone;
+        $params['order_no'] = $order_sn;
+        $params['s_id'] = config::SID;
+        $params['amount'] = $amount;
+        $params['notify_url'] = config::NOTIFY_URL;
+
+        return $params;
+    }
+
+    public function add($card_no, $card_type, $amount, $params)
+    {
+        $params = $this->req_params($card_no, $amount, $params['order_sn']);
+        $sign = $this->sign($params);
+        $params['sign'] = $sign;
+
+        $resp = http_request(config::ORDER_URL, $params);
+        if ($resp === false) {
+            return [false, '系统错误', true];
+        } else {
+            Log::record($resp, Log::DEBUG);
+            $resp = json_decode($resp ,true);
+            if($resp['result'] == 'SUCCESS') {
+                return [true, $resp['data'], false];
+            }
+            return [false , $resp['msg'], false];
+        }
+    }
+
+    public function query($refill_info)
+    {
+        $params['orderId'] = $refill_info['order_sn'];
+        $params['sid'] = config::SID;
+        $content = $params['orderId'] . $params['sid'] . config::KEY;
+        $params['sign'] = strtoupper(md5($content));
+
+        $resp = http_request(config::QUERY_URL, $params);
+        if ($resp === false) {
+            return [false, '系统错误'];
+        }
+        else
+        {
+            Log::record($resp, Log::DEBUG);
+            $resp = json_decode($resp, true);
+
+            if ($resp['result'] == 'SUCCESS')
+            {
+                $order_state = -1;
+                $data = $resp['data'];
+                if ($data['status'] == '充值成功') {
+                    $order_state = ORDER_STATE_SUCCESS;
+                    $save['official_sn'] = strtolower($data['mobileOrderId']) == 'null' ? '' : $data['mobileOrderId'];
+                    Model('refill_order')->edit($refill_info['order_id'], $save);
+                } elseif ($data['status'] == '充值失败') {
+                    $order_state = ORDER_STATE_CANCEL;
+                } elseif ($data['status'] == '充值中') {
+                    $order_state = ORDER_STATE_SEND;
+                }
+                if ($order_state == -1) {
+                    return [false, $resp['msg']];
+                }
+                return [true, $order_state];
+            } else {
+                return [false, $resp['code']['desc']];
+            }
+        }
+    }
+
+    private function sign($params)
+    {
+        $key = config::KEY;
+        $content  = $params['amount'] . $params['notify_url'] . $params['order_no'] . $params['phone'] . $params['s_id'] . $key;
+        return strtoupper(md5($content));
+    }
+}

+ 17 - 0
helper/refill/api/lingzh/feiniao/config.php

@@ -0,0 +1,17 @@
+<?php
+
+
+namespace refill\feiniao;
+
+
+class config
+{
+
+    const ORDER_URL = 'http://api.ceslfe.com/api/order/invest';
+    const QUERY_URL = 'http://api.ceslfe.com/api/order/queryStatus';
+
+    const SID = '16169989196195774444';
+    const KEY = 'o9IDsycJXqxIeDVPkZ0ldMEO24rkX3Eg1bnupCPzV6rjWtqaImIidQCrMPIezDvM';
+//    const NOTIFY_URL = BASE_SITE_URL . "/racc/callback/lingzh/feiniao.php";
+    const NOTIFY_URL =  "https://www.xyzshops.cn/mobile/signature.php";
+}

二进制
helper/refill/api/lingzh/feiniao/飞鸟三网.docx


+ 31 - 8
helper/refill/api/xyz/afandnew/RefillCallBack.php

@@ -12,7 +12,10 @@ class RefillCallBack implements refill\IRefillCallBack
 {
     public function verify($params): bool
     {
-        $sign = $this->sign($params);
+        $input = $params;
+        unset($input['sign']);
+
+        $sign = $this->sign($input);
         if ($params['sign'] == $sign) {
             return true;
         } else {
@@ -20,29 +23,49 @@ class RefillCallBack implements refill\IRefillCallBack
         }
     }
 
+    private function check_empty($value)
+    {
+        if (!isset($value))
+            return true;
+        if ($value === null)
+            return true;
+        if (trim($value) === "")
+            return true;
+
+        return false;
+    }
+
     private function sign($params)
     {
-        $content = $params['order_id'] . $params['out_order_id'] . config::MCHID . $params['tel'] . $params['price'] . $params['status'] . config::KEY;
-        return md5($content);
+        $content = '';
+        ksort($params);
+        foreach ($params as $key => $val){
+            if (false === $this->check_empty($val) && "@" != substr($val, 0, 1)) {
+                $content .= "{$key}={$val}&";
+            }
+        }
+        $content .= "key=".config::KEY;
+
+        return strtoupper(md5($content));
     }
 
     public function notify($params)
     {
-        $status = intval($params['status']);
-        $order_sn = $params['order_id'];
+        $status = intval($params['orderStatus']);
+        $order_sn = $params['orderNo'];
         $order_info = Model('vr_order')->getOrderInfo(['order_sn' => $order_sn]);
         if (empty($order_info)) {
             return [false, false, false,false];
         }
         $order_id = $order_info['order_id'];
         
-        $data['official_sn'] = strtolower($params['out_order_id']) == 'null' ? '' : $params['out_order_id'];
+        $data['official_sn'] = strtolower($params['carrierOrderNo']) == 'null' ? '' : $params['carrierOrderNo'];
 
-        if ($status === 1) {
+        if ($status === 2) {
             Model('refill_order')->edit($order_id, $data);
             return [$order_id, true, false,true];
         }
-        elseif ($status === 0) {
+        elseif ($status === 3) {
             return [$order_id, false, true,true];
         }
         else {

+ 31 - 24
helper/refill/api/xyz/afandnew/RefillPhone.php

@@ -17,22 +17,18 @@ class RefillPhone extends refill\IRefillPhone
 
     private function req_params(int $phone, int $amount, string $order_sn)
     {
-        $params['tel'] = $phone;
-        $params['price'] = intval($amount);
-        $params['mchid'] = config::MCHID;
-        $params['orderid'] = $order_sn;
-        $params['notify'] = config::NOTIFY_URL;
-        $params['teltype'] = 0;
-        $params['timeout'] = 300;
-        $params['time'] = time();
-        $params['rand'] = rand(100000,999999);
-
+        $params['appId'] = config::APP_ID;
+        $params['mobile'] = $phone;
+        $params['amount'] = $amount;
+        $params['orderNo'] = $order_sn;
+        $params['notifyUrl'] = config::NOTIFY_URL;
         return $params;
     }
 
     public function add($card_no, $card_type, $amount, $params)
     {
         $params = $this->req_params($card_no, $amount, $params['order_sn']);
+        $params['productNo'] = config::ProductIDS[$card_type][$amount];
         $sign = $this->sign($params);
         $params['sign'] = $sign;
 
@@ -42,8 +38,8 @@ class RefillPhone extends refill\IRefillPhone
         } else {
             Log::record($resp, Log::DEBUG);
             $resp = json_decode($resp, true);
-            if ($resp['code'] == 0) {
-                return [true, $resp['order_id'], false];
+            if ($resp['code'] == 200) {
+                return [true, $resp['data']['tradeNo'], false];
             } else {
                 return [false, $resp['msg'], false];
             }
@@ -52,23 +48,28 @@ class RefillPhone extends refill\IRefillPhone
 
     public function query($refill_info)
     {
-        $params['orderid'] = $refill_info['order_sn'];
-        $params['mchid'] = config::MCHID;
-        $content = $params['mchid'] . $params['orderid'] . config::KEY;
-        $params['sign'] = md5($content);
+        $params['tradeNo'] = $refill_info['ch_trade_no'];
+        $params['appId'] = config::APP_ID;
+        $sign = $this->sign($params);
+        $params['sign'] = $sign;
         $resp = http_request(config::QUERY_URL, $params , 'POST' , false , config::ExtHeaders);
         if ($resp === false) {
             return [false, '系统错误'];
         } else {
             Log::record($resp, Log::DEBUG);
             $resp = json_decode($resp, true);
-            if ($resp['code'] == 100) {
+            if($resp == false) {
+                return [false, '系统错误'];
+            }
+            if ($resp['code'] == 200) {
                 $order_state = -1;
-                if ($resp['status'] == 3) {
+                if ($resp['orderStatus'] == 2) {
                     $order_state = ORDER_STATE_SUCCESS;
-                } elseif ($resp['status'] == 4) {
+                    $updata['official_sn'] = strtolower($resp['carrierOrderNo']) == 'null' ? '' : $resp['carrierOrderNo'];
+                    Model('refill_order')->edit($refill_info['order_id'], $updata);
+                } elseif ($resp['orderStatus'] == 3) {
                     $order_state = ORDER_STATE_CANCEL;
-                } elseif ($resp['status'] == 2){
+                } elseif ($resp['orderStatus'] == 1){
                     $order_state = ORDER_STATE_SEND;
                 }
                 if ($order_state == -1) {
@@ -83,9 +84,15 @@ class RefillPhone extends refill\IRefillPhone
 
     private function sign($params)
     {
-        $key = config::KEY;
-        $content  = $params['mchid'] . $params['tel'] . $params['price'] . $params['orderid'] . $params['teltype'] . $params['timeout'] . $params['notify'];
-        $content .= $params['time'] . $params['rand'] . $key;
-        return md5($content);
+        $content = '';
+        ksort($params);
+        foreach ($params as $key => $val){
+            if (false === $this->check_empty($val) && "@" != substr($val, 0, 1)) {
+                $content .= "{$key}={$val}&";
+            }
+        }
+        $content .= "key=".config::KEY;
+
+        return strtoupper(md5($content));
     }
 }

+ 10 - 4
helper/refill/api/xyz/afandnew/config.php

@@ -6,11 +6,17 @@ namespace refill\afandnew;
 
 class config
 {
-    const ORDER_URL = 'http://121.43.132.103/api/telpay';
-    const QUERY_URL = 'http://121.43.132.103/api/telpay/query';
+    const ORDER_URL = 'http://xx.com/gateway/recharge';
+    const QUERY_URL = 'http://xx.com/gateway/recharge/order';
 
-    const MCHID = 10002;
+    const APP_ID = 10002;
     const KEY = '95efedd2b18ecae8eec34284df0082da';
-    const NOTIFY_URL =  BASE_SITE_URL."/mobile/refill_afandnew.php";
+//    const NOTIFY_URL =  BASE_SITE_URL."/mobile/refill_afandnew.php";
+    const NOTIFY_URL =  "https://www.xyzshops.cn/mobile/signature.php";
     const ExtHeaders = ['Content-Type: application/x-www-form-urlencoded'];
+    const ProductIDS = [
+        4 => [50 => '2110000050000', 100 => '21100000100000', 200 => '21100000200101'],
+        5 => [50 => '2310000050101', 100 => '23100000100101', 200 => '23100000200101'],
+        6 => [50 => '2210000050101', 100 => '22100000100101', 200 => '22100000200101'],
+    ];
 }

二进制
helper/refill/api/xyz/afandnew/~$灯充值系统2.2.doc


+ 628 - 0
helper/refill/api/xyz/afandnew/阿凡灯充值系统2.2.doc

@@ -0,0 +1,628 @@
+<html xmlns:v="urn:schemas-microsoft-com:vml"
+    xmlns:o="urn:schemas-microsoft-com:office:office"
+    xmlns:w="urn:schemas-microsoft-com:office:word"
+    xmlns="http://www.w3.org/TR/REC-html40">
+    <head><meta http-equiv=Content-Type content="text/html; charset=utf-8">
+    <style type="text/css">
+        table  
+        {  
+            border-collapse: collapse;
+            border: none;  
+            width: 100%;  
+        }  
+        td,tr  
+        {  
+            border: solid #CCC 1px;
+            padding:3px;
+            font-size:9pt;
+        } 
+        .codestyle{
+            word-break: break-all;
+            mso-highlight:rgb(252, 252, 252);
+            padding-left: 5px; background-color: rgb(252, 252, 252); border: 1px solid rgb(225, 225, 232);
+        }
+        img {
+            width:100;
+        }
+    </style>
+    <meta name=ProgId content=Word.Document>
+    <meta name=Generator content="Microsoft Word 11">
+    <meta name=Originator content="Microsoft Word 11">
+    <xml><w:WordDocument><w:View>Print</w:View></xml></head>
+    <body><h1>1、签名规则</h1><div style="margin-left:20px;"><blockquote>
+<p>签名生成的通用步骤如下</p>
+</blockquote>
+<p><strong>第一步:</strong>设所有发送或者接收到的数据为集合M,将集合M内非空参数值的参数按照参数名ASCII码从小到大排序(字典序),使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串stringA。<br/><br/>
+特别注意以下重要规则:<br/><br/>
+◆ 参数名ASCII码从小到大排序(字典序);<br/><br/>
+◆ 如果参数的值为空不参与签名;<br/><br/>
+◆ 参数名区分大小写;<br/><br/>
+◆ 验证调用返回或系统主动通知签名时,传送的sign参数不参与签名,将生成的签名与该sign值作校验。<br/><br/>
+
+<p><strong>第二步:</strong>在stringA最后拼接上key得到stringSignTemp字符串,并对stringSignTemp进行MD5运算,再将得到的字符串所有字符转换为大写,得到sign值signValue。  </p>
+
+<p>如请求系统参数如下:</p>
+
+<table width='100%' class='codestyle'><pre><code>    Map signMap = new HashMap<>();
+    signMap.put("appId", "test01");
+    signMap.put("mobile", "18698798721");
+    signMap.put("productNo", '2110000050000');
+    signMap.put("amount", 50);
+    signMap.put("orderNo", "12345");
+    signMap.put("notifyUrl", "xxxxxx");
+</code></pre></table>
+
+<p><code>待签名值</code>:amount=50&appId=test01&mobile=18698798721&<span>notifyUrl</span>=xxxxxx&orderNo=12345&productNo=2110000050000&key=EWEFD123RGSRETYDFNGFGFGSHDFGH</p><br/>
+<code>签名结果</code>:7864F84DE809CE3FA0C080FB516FD991<br/>
+
+##### 备注 
+appId 和 key请到代理商户后台 “账户管理 - 账户信息” 中查看</div><h1>2、充值提交</h1><div style="margin-left:20px;"><h5>简要描述</h5>
+<ul>
+<li>话费入单接口,接收话费商推送过来的话单。</li>
+</ul>
+<h5>请求URL</h5>
+<ul>
+<li><code>http://xx.com/gateway/recharge</code></li>
+</ul>
+<h5>请求方式</h5>
+<ul>
+<li>POST </li>
+</ul>
+<h5>参数</h5>
+<table>
+<thead><tr style='background-color: rgb(0, 136, 204); color: rgb(255, 255, 255);'>
+<th style="text-align: left;">参数名</th>
+<th style="text-align: left;">必选</th>
+<th style="text-align: left;">类型</th>
+<th>说明</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align: left;">appId</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>appId,可后台查看</td>
+</tr>
+<tr>
+<td style="text-align: left;">mobile</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>长度11</td>
+</tr>
+<tr>
+<td style="text-align: left;">productNo</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>具体值看下面商品NO</td>
+</tr>
+<tr>
+<td style="text-align: left;">amount</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>金额元</td>
+</tr>
+<tr>
+<td style="text-align: left;">orderNo</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>订单号,长度最大30位</td>
+</tr>
+<tr>
+<td style="text-align: left;">notifyUrl</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>异步通知地址,长度最大300位</td>
+</tr>
+<tr>
+<td style="text-align: left;">sign</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>见签名规则</td>
+</tr>
+</tbody>
+</table>
+<h5>返回示例</h5>
+<table width='100%' class='codestyle'><pre><code>{
+    "code": 200,
+    "msg": "",
+    "data": {
+        "moblie": "18676709241",
+        "orderNo": "22222222222",
+        "tradeNo": "2020092817541471344"
+    }
+}</code></pre></table>
+<h5>返回参数说明</h5>
+<table>
+<thead><tr style='background-color: rgb(0, 136, 204); color: rgb(255, 255, 255);'>
+<th style="text-align: left;">参数名</th>
+<th style="text-align: left;">类型</th>
+<th>说明</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align: left;">code</td>
+<td style="text-align: left;">int</td>
+<td>返回码</td>
+</tr>
+<tr>
+<td style="text-align: left;">msg</td>
+<td style="text-align: left;">String</td>
+<td>返回信息</td>
+</tr>
+<tr>
+<td style="text-align: left;">data</td>
+<td style="text-align: left;">json</td>
+<td>成功返回数据</td>
+</tr>
+<tr>
+<td style="text-align: left;">moblie</td>
+<td style="text-align: left;">String</td>
+<td>手机号码</td>
+</tr>
+<tr>
+<td style="text-align: left;">orderNo</td>
+<td style="text-align: left;">String</td>
+<td>商户订单号</td>
+</tr>
+<tr>
+<td style="text-align: left;">tradeNo</td>
+<td style="text-align: left;">String</td>
+<td>交易订单号</td>
+</tr>
+</tbody>
+</table>
+<h5>商品NO说明</h5>
+<table>
+<thead><tr style='background-color: rgb(0, 136, 204); color: rgb(255, 255, 255);'>
+<th style="text-align: left;">商品编号</th>
+<th>商品名称</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align: left;">23100000200101</td>
+<td>全国联通200话费</td>
+</tr>
+<tr>
+<td style="text-align: left;">23100000100101</td>
+<td>全国联通100话费</td>
+</tr>
+<tr>
+<td style="text-align: left;">2310000050101</td>
+<td>全国联通50话费</td>
+</tr>
+<tr>
+<td style="text-align: left;">22100000200101</td>
+<td>全国电信200话费</td>
+</tr>
+<tr>
+<td style="text-align: left;">22100000100101</td>
+<td>全国电信100话费</td>
+</tr>
+<tr>
+<td style="text-align: left;">2210000050101</td>
+<td>全国电信50话费</td>
+</tr>
+<tr>
+<td style="text-align: left;">21100000200101</td>
+<td>全国移动200话费</td>
+</tr>
+<tr>
+<td style="text-align: left;">2110000050000</td>
+<td>全国移动50话费</td>
+</tr>
+<tr>
+<td style="text-align: left;">21100000100000</td>
+<td>全国移动100元话费</td>
+</tr>
+</tbody>
+</table>
+<h5>备注</h5>
+<ul>
+<li>返回码code
+200 提交成功
+其他 提交失败</li>
+</ul>
+<h5>错误码表</h5>
+<table>
+<thead><tr style='background-color: rgb(0, 136, 204); color: rgb(255, 255, 255);'>
+<th style="text-align: left;">code</th>
+<th>msg</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align: left;">200</td>
+<td>OK</td>
+</tr>
+<tr>
+<td style="text-align: left;">999</td>
+<td>异常</td>
+</tr>
+<tr>
+<td style="text-align: left;">100</td>
+<td>sign不正确</td>
+</tr>
+<tr>
+<td style="text-align: left;">101</td>
+<td>请求ip不在白名单</td>
+</tr>
+<tr>
+<td style="text-align: left;">110</td>
+<td>参数异常</td>
+</tr>
+<tr>
+<td style="text-align: left;">120</td>
+<td>商品不存在</td>
+</tr>
+<tr>
+<td style="text-align: left;">121</td>
+<td>充值金额和商品编号不对应</td>
+</tr>
+<tr>
+<td style="text-align: left;">130</td>
+<td>商户appId错误</td>
+</tr>
+<tr>
+<td style="text-align: left;">131</td>
+<td>商户被冻结</td>
+</tr>
+<tr>
+<td style="text-align: left;">132</td>
+<td>商户被注销</td>
+</tr>
+<tr>
+<td style="text-align: left;">140</td>
+<td>平台维护中</td>
+</tr>
+<tr>
+<td style="text-align: left;">144</td>
+<td>产品运营商和号码不匹配</td>
+</tr>
+<tr>
+<td style="text-align: left;">141</td>
+<td>省份维护中</td>
+</tr>
+<tr>
+<td style="text-align: left;">142</td>
+<td>运营商维护中</td>
+</tr>
+<tr>
+<td style="text-align: left;">143</td>
+<td>号码黑名单中</td>
+</tr>
+<tr>
+<td style="text-align: left;">144</td>
+<td>号码提交太频繁</td>
+</tr>
+<tr>
+<td style="text-align: left;">145</td>
+<td>号码信息获取失败</td>
+</tr>
+<tr>
+<td style="text-align: left;">150</td>
+<td>订单已经存在</td>
+</tr>
+<tr>
+<td style="text-align: left;">151</td>
+<td>订单不存在</td>
+</tr>
+<tr>
+<td style="text-align: left;">160</td>
+<td>账户被冻结</td>
+</tr>
+<tr>
+<td style="text-align: left;">161</td>
+<td>账户异常</td>
+</tr>
+<tr>
+<td style="text-align: left;">162</td>
+<td>账户余额不足</td>
+</tr>
+<tr>
+<td style="text-align: left;">163</td>
+<td>未知交易类型</td>
+</tr>
+<tr>
+<td style="text-align: left;">164</td>
+<td>支付其他错误</td>
+</tr>
+<tr>
+<td style="text-align: left;">165</td>
+<td>账户不存在</td>
+</tr>
+<tr>
+<td style="text-align: left;">170</td>
+<td>商品没设置供货商</td>
+</tr>
+<tr>
+<td style="text-align: left;">171</td>
+<td>找不到合适的供货商</td>
+</tr>
+<tr>
+<td style="text-align: left;">172</td>
+<td>没有供货商接口</td>
+</tr>
+<tr>
+<td style="text-align: left;">173</td>
+<td>供货繁忙</td>
+</tr>
+</tbody>
+</table></div><h1>3、异步通知结果</h1><div style="margin-left:20px;"><h5>简要描述</h5>
+<ul>
+<li>异步通知结果</li>
+</ul>
+<h5>请求URL</h5>
+<ul>
+<li><code>充值提交的通知地址,需加白的,请咨询我方相关人员提供IP</code></li>
+</ul>
+<h5>请求方式</h5>
+<ul>
+<li>POST
+content-type  : application/json
+<h5>参数</h5></li>
+</ul>
+<table>
+<thead><tr style='background-color: rgb(0, 136, 204); color: rgb(255, 255, 255);'>
+<th style="text-align: left;">参数名</th>
+<th style="text-align: left;">必选</th>
+<th style="text-align: left;">类型</th>
+<th>说明</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align: left;">tradeNo</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>平台交易订单号</td>
+</tr>
+<tr>
+<td style="text-align: left;">orderNo</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>代理商户订单号</td>
+</tr>
+<tr>
+<td style="text-align: left;">orderStatus</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">int</td>
+<td>1:处理中,2:成功,3:失败,9:未确认</td>
+</tr>
+<tr>
+<td style="text-align: left;">amount</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">int</td>
+<td>充值金额,单位元</td>
+</tr>
+<tr>
+<td style="text-align: left;">mobile</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>手机号</td>
+</tr>
+<tr>
+<td style="text-align: left;">carrierOrderNo</td>
+<td style="text-align: left;">否</td>
+<td style="text-align: left;">string</td>
+<td>运营商流水号</td>
+</tr>
+<tr>
+<td style="text-align: left;">sign</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>见签名规则</td>
+</tr>
+</tbody>
+</table>
+<h5>返回示例</h5>
+<table width='100%' class='codestyle'><pre><code>  {
+      "tradeNo": "123",
+      "orderNo": "12154545",
+      "orderStatus": 2,
+      "amont": 20 ,
+      "mobile": "1436864169",
+      "carrierOrderNo": "1008634343242343434",
+      "sign":"-----"
+    }</code></pre></table>
+<h5>备注</h5>
+<ul>
+<li>收到请求,需返回<strong>小写</strong>字符: success</li>
+</ul></div><h1>4、订单查询</h1><div style="margin-left:20px;"><h5>简要描述</h5>
+<ul>
+<li>订单查询</li>
+</ul>
+<h5>请求URL</h5>
+<ul>
+<li><code>http://xx.com/gateway/recharge/order</code></li>
+</ul>
+<h5>请求方式</h5>
+<ul>
+<li>POST  application/x-www-form-urlencoded</li>
+</ul>
+<h5>参数</h5>
+<table>
+<thead><tr style='background-color: rgb(0, 136, 204); color: rgb(255, 255, 255);'>
+<th style="text-align: left;">参数名</th>
+<th style="text-align: left;">必选</th>
+<th style="text-align: left;">类型</th>
+<th>说明</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align: left;">appId</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>用户名</td>
+</tr>
+<tr>
+<td style="text-align: left;">tradeNo</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>平台交易号</td>
+</tr>
+<tr>
+<td style="text-align: left;">sign</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>签名</td>
+</tr>
+</tbody>
+</table>
+<h5>返回参数说明</h5>
+<table>
+<thead><tr style='background-color: rgb(0, 136, 204); color: rgb(255, 255, 255);'>
+<th style="text-align: left;">参数名</th>
+<th style="text-align: left;">类型</th>
+<th>说明</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align: left;">code</td>
+<td style="text-align: left;">int</td>
+<td>200查询成功,其他查询失败</td>
+</tr>
+<tr>
+<td style="text-align: left;">msg</td>
+<td style="text-align: left;">string</td>
+<td>描述信息</td>
+</tr>
+<tr>
+<td style="text-align: left;">data</td>
+<td style="text-align: left;">json</td>
+<td>成功返回信息</td>
+</tr>
+<tr>
+<td style="text-align: left;">orderNo</td>
+<td style="text-align: left;">string</td>
+<td>商户订单号</td>
+</tr>
+<tr>
+<td style="text-align: left;">tradeNo</td>
+<td style="text-align: left;">string</td>
+<td>平台交易号</td>
+</tr>
+<tr>
+<td style="text-align: left;">productNo</td>
+<td style="text-align: left;">string</td>
+<td>商品编号</td>
+</tr>
+<tr>
+<td style="text-align: left;">orderStatus</td>
+<td style="text-align: left;">int</td>
+<td>1:处理中,2:成功,3:失败,9:未确认</td>
+</tr>
+<tr>
+<td style="text-align: left;">moblie</td>
+<td style="text-align: left;">string</td>
+<td>手机号</td>
+</tr>
+<tr>
+<td style="text-align: left;">facePrice</td>
+<td style="text-align: left;">string</td>
+<td>订单面值(元)</td>
+</tr>
+<tr>
+<td style="text-align: left;">carrierOrderNo</td>
+<td style="text-align: left;">string</td>
+<td>运营商流水号</td>
+</tr>
+</tbody>
+</table>
+<h5>返回示例</h5>
+<table width='100%' class='codestyle'><pre><code>{
+    "code": 200,
+    "msg": "OK",
+    "data": {
+        "orderNo": "22222222233",
+        "tradeNo": "2020111013362583735",
+        "productNo": "2110000050000",
+        "orderStatus": 3,
+        "moblie": "13670074035",
+        "facePrice": "50"
+    }
+}</code></pre></table></div><h1>5、余额查询</h1><div style="margin-left:20px;"><h5>简要描述</h5>
+<ul>
+<li>查询余额</li>
+</ul>
+<h5>请求URL</h5>
+<ul>
+<li><code>http://xx.com/gateway/balance/query</code></li>
+</ul>
+<h5>请求方式</h5>
+<ul>
+<li>POST  application/x-www-form-urlencoded</li>
+</ul>
+<h5>参数</h5>
+<table>
+<thead><tr style='background-color: rgb(0, 136, 204); color: rgb(255, 255, 255);'>
+<th style="text-align: left;">参数名</th>
+<th style="text-align: left;">必选</th>
+<th style="text-align: left;">类型</th>
+<th>说明</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align: left;">appId</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>用户名</td>
+</tr>
+<tr>
+<td style="text-align: left;">sign</td>
+<td style="text-align: left;">是</td>
+<td style="text-align: left;">string</td>
+<td>签名</td>
+</tr>
+</tbody>
+</table>
+<h5>返回参数说明</h5>
+<table>
+<thead><tr style='background-color: rgb(0, 136, 204); color: rgb(255, 255, 255);'>
+<th style="text-align: left;">参数名</th>
+<th style="text-align: left;">类型</th>
+<th>说明</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align: left;">code</td>
+<td style="text-align: left;">int</td>
+<td>200查询成功,其他查询失败</td>
+</tr>
+<tr>
+<td style="text-align: left;">msg</td>
+<td style="text-align: left;">string</td>
+<td>描述信息</td>
+</tr>
+<tr>
+<td style="text-align: left;">data</td>
+<td style="text-align: left;">json</td>
+<td>成功返回信息</td>
+</tr>
+<tr>
+<td style="text-align: left;">totalBalance</td>
+<td style="text-align: left;">string</td>
+<td>余额(元)</td>
+</tr>
+<tr>
+<td style="text-align: left;">credit</td>
+<td style="text-align: left;">string</td>
+<td>授信(元)</td>
+</tr>
+</tbody>
+</table>
+<h5>返回示例</h5>
+<table width='100%' class='codestyle'><pre><code>{
+    "code": 200,
+    "msg": "OK",
+    "data": {
+        "totalBalance": "-86.80",
+        "credit": "10.00"
+    }
+}</code></pre></table></div></body></html>

+ 4 - 0
racc/callback/lingzh/feiniao.php

@@ -0,0 +1,4 @@
+<?php
+
+refill\util::push_notify('feiniao',$_POST);
+echo ('success');