|
@@ -26,16 +26,17 @@ class SettingController extends Controller
|
|
|
$groups = $this->settingRepository->getGroups();
|
|
$groups = $this->settingRepository->getGroups();
|
|
|
$currentGroup = request('group', 'general');
|
|
$currentGroup = request('group', 'general');
|
|
|
$settings = $this->settingRepository->getSettingsByGroup($currentGroup);
|
|
$settings = $this->settingRepository->getSettingsByGroup($currentGroup);
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 获取分组数据(包含名称和排序)
|
|
// 获取分组数据(包含名称和排序)
|
|
|
$groupData = $this->getGroupData($groups);
|
|
$groupData = $this->getGroupData($groups);
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 确保 _config 存在且包含必要的键
|
|
// 确保 _config 存在且包含必要的键
|
|
|
$view = isset($this->_config['view']) ? $this->_config['view'] : 'rewardpoints::admin.settings.index';
|
|
$view = isset($this->_config['view']) ? $this->_config['view'] : 'rewardpoints::admin.settings.index';
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
return view($view, compact('groups', 'currentGroup', 'settings', 'groupData'));
|
|
return view($view, compact('groups', 'currentGroup', 'settings', 'groupData'));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 保存配置
|
|
* 保存配置
|
|
|
*/
|
|
*/
|
|
@@ -44,28 +45,28 @@ class SettingController extends Controller
|
|
|
$this->validate($request, [
|
|
$this->validate($request, [
|
|
|
'settings' => 'required|array'
|
|
'settings' => 'required|array'
|
|
|
]);
|
|
]);
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
try {
|
|
try {
|
|
|
$settings = $request->input('settings');
|
|
$settings = $request->input('settings');
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
foreach ($settings as $code => $value) {
|
|
foreach ($settings as $code => $value) {
|
|
|
$this->settingRepository->setConfigValue($code, $value);
|
|
$this->settingRepository->setConfigValue($code, $value);
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 清除缓存
|
|
// 清除缓存
|
|
|
cache()->forget('reward_points_settings');
|
|
cache()->forget('reward_points_settings');
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
session()->flash('success', '配置保存成功');
|
|
session()->flash('success', '配置保存成功');
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
$redirectRoute = isset($this->_config['redirect']) ? $this->_config['redirect'] : 'admin.reward-points.settings.index';
|
|
$redirectRoute = isset($this->_config['redirect']) ? $this->_config['redirect'] : 'admin.reward-points.settings.index';
|
|
|
return redirect()->route($redirectRoute, ['group' => $request->input('group', 'general')]);
|
|
return redirect()->route($redirectRoute, ['group' => $request->input('group', 'general')]);
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
} catch (\Exception $e) {
|
|
} catch (\Exception $e) {
|
|
|
session()->flash('error', '保存配置失败:' . $e->getMessage());
|
|
session()->flash('error', '保存配置失败:' . $e->getMessage());
|
|
|
return redirect()->back()->withInput();
|
|
return redirect()->back()->withInput();
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 获取分组数据(包含名称和排序)
|
|
* 获取分组数据(包含名称和排序)
|
|
|
*/
|
|
*/
|
|
@@ -75,7 +76,7 @@ class SettingController extends Controller
|
|
|
$groupOrder = [
|
|
$groupOrder = [
|
|
|
'general' => 1, // 通用设置
|
|
'general' => 1, // 通用设置
|
|
|
];
|
|
];
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
$groupData = [];
|
|
$groupData = [];
|
|
|
foreach ($groups as $group) {
|
|
foreach ($groups as $group) {
|
|
|
$groupData[$group] = [
|
|
$groupData[$group] = [
|
|
@@ -83,15 +84,15 @@ class SettingController extends Controller
|
|
|
'order' => $groupOrder[$group] ?? 99, // 如果未定义顺序,默认排在最后
|
|
'order' => $groupOrder[$group] ?? 99, // 如果未定义顺序,默认排在最后
|
|
|
];
|
|
];
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
// 按照排序顺序排列
|
|
// 按照排序顺序排列
|
|
|
uasort($groupData, function($a, $b) {
|
|
uasort($groupData, function($a, $b) {
|
|
|
return $a['order'] <=> $b['order'];
|
|
return $a['order'] <=> $b['order'];
|
|
|
});
|
|
});
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
return $groupData;
|
|
return $groupData;
|
|
|
}
|
|
}
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 获取分组名称
|
|
* 获取分组名称
|
|
|
*/
|
|
*/
|
|
@@ -102,4 +103,4 @@ class SettingController extends Controller
|
|
|
];
|
|
];
|
|
|
return $names[$group] ?? ucfirst($group);
|
|
return $names[$group] ?? ucfirst($group);
|
|
|
}
|
|
}
|
|
|
-}
|
|
|
|
|
|
|
+}
|