developer token, SettingRepo::createOrUpdate()方法重构

This commit is contained in:
TL 2022-10-14 17:14:28 +08:00 committed by Edward Yang
parent 8cfe7f2660
commit b818cb8037
6 changed files with 7 additions and 72 deletions

View File

@ -63,14 +63,7 @@ class DesignController extends Controller
{
$content = json_decode($request->getContent(), true);
$moduleData = DesignService::handleRequestModules($content);
$data = [
'type' => 'system',
'space' => 'base',
'name' => 'design_setting',
'value' => json_encode($moduleData),
'json' => 1
];
SettingRepo::createOrUpdate($data);
SettingRepo::storeValue('design_setting', $moduleData);
return json_success(trans('common.updated_success'));
}
}

View File

@ -55,14 +55,7 @@ class DesignFooterController extends Controller
{
$content = json_decode($request->getContent(), true);
$data = [
'type' => 'system',
'space' => 'base',
'name' => 'footer_setting',
'value' => json_encode($content),
'json' => 1
];
SettingRepo::createOrUpdate($data);
SettingRepo::storeValue("footer_setting", $content);
return json_success(trans('common.updated_success'));
}
}

View File

@ -34,14 +34,7 @@ class DesignMenuController extends Controller
{
$content = json_decode($request->getContent(), true);
$data = [
'type' => 'system',
'space' => 'base',
'name' => 'menu_setting',
'value' => json_encode($content),
'json' => 1
];
SettingRepo::createOrUpdate($data);
SettingRepo::storeValue("menu_setting", $content);
return json_success(trans('common.updated_success'));
}
}

View File

@ -58,14 +58,7 @@ class SettingController extends Controller
{
$settings = $request->all();
foreach ($settings as $key => $value) {
$data = [
'type' => 'system',
'space' => 'base',
'name' => $key,
'value' => $value,
'json' => is_array($value)
];
SettingRepo::createOrUpdate($data);
SettingRepo::storeValue($key, $value);
}
$oldAdminName = admin_name();

View File

@ -128,18 +128,12 @@ class SettingRepo
* @param $data
* @throws \Throwable
*/
public static function createOrUpdate($data)
public static function storeValue($name, $value, $space = 'base', $type = 'system')
{
$name = $data['name'] ?? '';
if (in_array($name, ['_method', '_token'])) {
return;
}
$type = $data['type'] ?? '';
$space = $data['space'] ?? '';
$value = (string)$data['value'] ?? '';
$json = (bool)$data['json'] ?? is_array($value);
$setting = Setting::query()
->where('type', $type)
->where('space', $space)
@ -150,31 +144,7 @@ class SettingRepo
'type' => $type,
'space' => $space,
'name' => $name,
'value' => $value,
'json' => $json,
];
if (empty($setting)) {
$setting = new Setting($settingData);
$setting->saveOrFail();
} else {
$setting->update($settingData);
}
}
public static function storeValue($name, $value, $space = 'base', $type = 'system')
{
$setting = Setting::query()
->where('type', $type)
->where('space', $space)
->where('name', $name)
->first();
$settingData = [
'type' => $type,
'space' => $space,
'name' => $name,
'value' => $value,
'value' => is_array($value) ? json_encode($value) : $value,
'json' => is_array($value),
];

View File

@ -22,14 +22,7 @@ class AdminSocialController extends Controller
*/
public function saveSetting(Request $request): array
{
$socialData = [
'type' => 'plugin',
'space' => 'social',
'name' => 'setting',
'value' => json_encode($request->all()),
'json' => 1,
];
SettingRepo::createOrUpdate($socialData);
SettingRepo::storeValue('setting', $request->all(), 'social', 'plugin');
return json_success('保存成功');
}
}