|
@@ -6,47 +6,57 @@ class Account
|
|
# 下单操作
|
|
# 下单操作
|
|
public function pay($order)
|
|
public function pay($order)
|
|
{
|
|
{
|
|
- $account = Dever::input('account', 'is_string', '账户', 'wechat');
|
|
|
|
|
|
+ $account = Dever::input('platform', 'is_string', '账户', 'weixin');
|
|
$env = Dever::input('env', 'is_numeric', '运行环境', 3);
|
|
$env = Dever::input('env', 'is_numeric', '运行环境', 3);
|
|
- $result = Dever::load('util', 'api')->openid($account, $env, Place::$uid);
|
|
|
|
- if (isset($result['openid'])) {
|
|
|
|
- $order['openid'] = $result['openid'];
|
|
|
|
- } elseif (isset($result['link'])) {
|
|
|
|
|
|
+ $result = $this->openid(['key' => $account], $env, Place::$uid);
|
|
|
|
+ if (isset($result['link'])) {
|
|
return $result;
|
|
return $result;
|
|
}
|
|
}
|
|
|
|
|
|
- $account = 'pay_' . $account;
|
|
|
|
- $project = 'api';
|
|
|
|
-
|
|
|
|
- if (Place::$info['pay_account'] > 0) {
|
|
|
|
- $info = $this->getInfo(Place::$info['pay_account']);
|
|
|
|
- if ($info) {
|
|
|
|
- $account = $info;
|
|
|
|
- $project = 'place';
|
|
|
|
- $cert = Dever::db('account_cert', 'place')->find(['account_id' => $info['id'], 'platform_cert_id' => 2]);
|
|
|
|
- if (!$cert || ($cert && $cert['edate'] <= time())) {
|
|
|
|
- Dever::load('account', 'api')->run($account, 'task', [], 1, 'run', $project);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ $account = $this->getInfo(['key' => 'pay_' . $account]);
|
|
|
|
+ if (!$account) {
|
|
|
|
+ Dever::error('支付账户配置错误');
|
|
|
|
+ }
|
|
|
|
+ $cert = Dever::db('account_cert', 'place')->find(['account_id' => $account['id'], 'platform_cert_id' => 2]);
|
|
|
|
+ if (!$cert || ($cert && $cert['edate'] <= time())) {
|
|
|
|
+ Dever::load('account', 'api')->run($account, 'task', [], 1, 'run', 'place');
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ $order['openid'] = $result['openid'];
|
|
$order['cash'] = $order['pay_money_cash']*100;
|
|
$order['cash'] = $order['pay_money_cash']*100;
|
|
$order['time_expire'] = time() + 3600;
|
|
$order['time_expire'] = time() + 3600;
|
|
|
|
|
|
- return Dever::load('account', 'api')->run($account, 'order', $order, $env, 'run', $project);
|
|
|
|
|
|
+ return Dever::load('account', 'api')->run($account, 'order', $order, $env, 'run', 'place');
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ # 获取openid
|
|
|
|
+ public function openid($account, $env, $uid, $result = [])
|
|
|
|
+ {
|
|
|
|
+ $account = $this->getInfo($account);
|
|
|
|
+ return Dever::load('util', 'api')->openid($account, $env, $uid, $result, 'place');
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ # 获取小程序码
|
|
|
|
+ # version = develop/release/trial
|
|
|
|
+ public function getAppletCode($account, $env, $scene, $page, $version = 'develop')
|
|
|
|
+ {
|
|
|
|
+ $token = Dever::load('util', 'api')->token($account, $env, 'place');
|
|
|
|
+ if ($token) {
|
|
|
|
+ $param['access_token'] = $token;
|
|
|
|
+ $param['scene'] = $scene;
|
|
|
|
+ $param['page'] = $page;
|
|
|
|
+ $param['env_version'] = $version;
|
|
|
|
+ $data = Dever::load('account', 'api')->run($account, 'applet_code', $param, 1, 'run', 'place');
|
|
|
|
+ print_r($data);die;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
# 获取账户信息
|
|
# 获取账户信息
|
|
- public function getInfo($id)
|
|
|
|
|
|
+ public function getInfo($where)
|
|
{
|
|
{
|
|
- $info = Dever::db('account', 'place')->find($id);
|
|
|
|
|
|
+ $info = Dever::db('account', 'place')->find($where);
|
|
if ($info) {
|
|
if ($info) {
|
|
- if ($info['type'] == 1) {
|
|
|
|
- $key = 'pay_wechat';
|
|
|
|
- } else {
|
|
|
|
- Dever::error('错误信息');
|
|
|
|
- }
|
|
|
|
- $account = Dever::db('account', 'api')->find(['key' => $key]);
|
|
|
|
|
|
+ $account = Dever::db('account', 'api')->find(['key' => $info['key']]);
|
|
$info['app_id'] = $account['app_id'];
|
|
$info['app_id'] = $account['app_id'];
|
|
$info['platform_id'] = $account['platform_id'];
|
|
$info['platform_id'] = $account['platform_id'];
|
|
return $info;
|
|
return $info;
|