diff --git a/beike/Admin/Providers/AdminServiceProvider.php b/beike/Admin/Providers/AdminServiceProvider.php index df4432ff..1785cf2a 100644 --- a/beike/Admin/Providers/AdminServiceProvider.php +++ b/beike/Admin/Providers/AdminServiceProvider.php @@ -23,6 +23,7 @@ class AdminServiceProvider extends ServiceProvider public function boot() { $uri = request()->getRequestUri(); + load_settings(); $adminName = admin_name(); if (!Str::startsWith($uri, "/{$adminName}")) { diff --git a/beike/Helpers.php b/beike/Helpers.php index 91588fc3..7cdcf7e3 100644 --- a/beike/Helpers.php +++ b/beike/Helpers.php @@ -2,6 +2,7 @@ use Beike\Models\AdminUser; use Beike\Models\Customer; +use Beike\Models\Setting; use Illuminate\Support\Facades\Route; use Illuminate\Support\Str; use Illuminate\Contracts\Auth\Authenticatable; @@ -26,10 +27,36 @@ function admin_name(): string { if ($envAdminName = env('ADMIN_NAME')) { return Str::snake($envAdminName); + } elseif ($settingAdminName = setting('base.admin_name')) { + return Str::snake($settingAdminName); } return 'admin'; } +/** + * 获取后台设置项 + */ +function load_settings() +{ + $settings = Setting::all(['type', 'space', 'name', 'value', 'json']) + ->groupBy('space'); + + $result = []; + foreach ($settings as $space => $groupSettings) { + $space = $space ?: 'system'; + foreach ($groupSettings as $groupSetting) { + $name = $groupSetting->name; + $value = $groupSetting->value; + if ($groupSetting->json) { + $result[$space][$name] = json_decode($value, true); + } else { + $result[$space][$name] = $value; + } + } + } + config(['bk' => $result]); +} + /** * 获取后台链接 * diff --git a/beike/Shop/Providers/ShopServiceProvider.php b/beike/Shop/Providers/ShopServiceProvider.php index 385f67d8..14ff3839 100644 --- a/beike/Shop/Providers/ShopServiceProvider.php +++ b/beike/Shop/Providers/ShopServiceProvider.php @@ -19,8 +19,7 @@ class ShopServiceProvider extends ServiceProvider public function boot() { $uri = request()->getRequestUri(); - - $this->loadSettings(); + load_settings(); if (Str::startsWith($uri, '/admin')) { return; @@ -39,27 +38,6 @@ class ShopServiceProvider extends ServiceProvider ]); } - protected function loadSettings() - { - $settings = Setting::all(['type', 'space', 'name', 'value', 'json']) - ->groupBy('space'); - - $result = []; - foreach ($settings as $space => $groupSettings) { - $space = $space ?: 'system'; - foreach ($groupSettings as $groupSetting) { - $name = $groupSetting->name; - $value = $groupSetting->value; - if ($groupSetting->json) { - $result[$space][$name] = json_decode($value, true); - } else { - $result[$space][$name] = $value; - } - } - } - config(['bk' => $result]); - } - protected function registerGuard() { Config::set('auth.guards.' . Customer::AUTH_GUARD, [