|
@@ -19,7 +19,30 @@ class Account
|
|
|
return $data;
|
|
|
}
|
|
|
|
|
|
- public function get($account, $project = 'api')
|
|
|
+ # 同步某个项目下的账户信息
|
|
|
+ public function sync($project)
|
|
|
+ {
|
|
|
+ # 跨库了
|
|
|
+ //return Dever::db($project . '/account')->copy('api_account', ['a.sync' => 1], ['key', 'name']);
|
|
|
+ $col = '`key`,name,cdate';
|
|
|
+ $list = Dever::db('api/account')->select(['sync' => 1], ['col' => $col]);
|
|
|
+ Dever::db($project . '/account')->inserts(['field' => $col, 'value' => $list]);
|
|
|
+ }
|
|
|
+
|
|
|
+ # 根据应用功能获取账户列表
|
|
|
+ public function getList($key)
|
|
|
+ {
|
|
|
+ $func = Dever::db('api/app_func')->find(['key' => $key, 'status' => 1]);
|
|
|
+ if ($func) {
|
|
|
+ $work = Dever::db('api/app_func_work')->columns(['app_func_id' => $func['id'], 'status' => 1], 'platform_id');
|
|
|
+ $account = Dever::db('api/account')->select(['platform_id' => ['in', $work]]);
|
|
|
+ return $account;
|
|
|
+ }
|
|
|
+ return [];
|
|
|
+ }
|
|
|
+
|
|
|
+ # 获取某个项目的账户信息
|
|
|
+ public function get($account, $project = 'api', $setting = false)
|
|
|
{
|
|
|
if (is_array($account)) {
|
|
|
return $account;
|
|
@@ -30,16 +53,31 @@ class Account
|
|
|
$where = ['key' => $account];
|
|
|
}
|
|
|
$account = Dever::db('api/account')->find($where);
|
|
|
- if ($project != 'api') {
|
|
|
+ if ($account && $project != 'api') {
|
|
|
$info = Dever::db($project . '/account')->find(['key' => $account['key']]);
|
|
|
if ($info) {
|
|
|
$info['app_id'] = $account['app_id'];
|
|
|
$info['platform_id'] = $account['platform_id'];
|
|
|
- return $info;
|
|
|
+ $account = $info;
|
|
|
} else {
|
|
|
Dever::error('账户无效');
|
|
|
}
|
|
|
}
|
|
|
+ if ($account && $setting) {
|
|
|
+ $account['setting'] = [];
|
|
|
+ $setting = Dever::db($project . '/account_setting')->select(['account_id' => $account['id']]);
|
|
|
+ if ($setting) {
|
|
|
+ foreach ($setting as $k => $v) {
|
|
|
+ $info = Dever::db('api/platform_setting')->find($v['platform_setting_id']);
|
|
|
+ if ($info) {
|
|
|
+ $v['key'] = $info['key'];
|
|
|
+ $account['setting'][$v['key']] = $v['value'];
|
|
|
+ } else {
|
|
|
+ Dever::error('account error');
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
return $account;
|
|
|
}
|
|
|
|