diff --git a/app/controller/admin/system/ConfigController.php b/app/controller/admin/system/ConfigController.php index f32344e..1582509 100644 --- a/app/controller/admin/system/ConfigController.php +++ b/app/controller/admin/system/ConfigController.php @@ -14,7 +14,7 @@ class ConfigController extends BaseController { public function list(): Json { - $model = SysConfig::with([]) + $model = SysConfig::with([])->order(['sort'=>'asc']) ->withSearch(['group'], [ 'group'=> $this->request->get('group/s','') ]); @@ -100,10 +100,20 @@ class ConfigController extends BaseController { $id = $this->request->put('id'); $status = $this->request->put('status'); - $user = SysConfig::findOrFail($id); - $user->save(['status'=>$status]); + $cfg = SysConfig::findOrFail($id); + $cfg->save(['status'=>$status]); return $this->writeSuccess('修改成功'); } + + public function updateSort() + { + $id = $this->request->put('id'); + $sort = $this->request->put('sort'); + $cfg = SysConfig::findOrFail($id); + $cfg->save(['sort'=>$sort]); + return $this->writeSuccess('修改成功'); + } + public function batchDelete() { $data = $this->request->delete(); diff --git a/route/api.php b/route/api.php index 6c372bd..d1fdc6a 100644 --- a/route/api.php +++ b/route/api.php @@ -78,6 +78,8 @@ Route::group("adminapi", function () { Route::put("config/sync", [ConfigController::class, "sync"])->name("system.syncConfig"); Route::put("config/data", [ConfigController::class, "updateData"])->name("system.updateConfigData"); Route::put("config/status", [ConfigController::class, "updateStatus"])->name("system.updateConfigStatus"); + Route::put("config/sort", [ConfigController::class, "updateSort"])->name("system.updateConfigSort"); + /* * 用户管理 diff --git a/z_ele/src/api/system/config/index.ts b/z_ele/src/api/system/config/index.ts index 9555399..ef64977 100644 --- a/z_ele/src/api/system/config/index.ts +++ b/z_ele/src/api/system/config/index.ts @@ -65,6 +65,19 @@ export async function updateConfigStatus(id: number, status: number) { return Promise.reject(new Error(res.data.message)); } +/** + * 修改配置状态 + */ +export async function updateConfigSort(id: number, sort: number) { + const res = await request.put>('/system/config/sort', { + id, + sort + }); + if (res.data.code === 0) { + return res.data.message; + } + return Promise.reject(new Error(res.data.message)); +} /** * 批量删除配置 */ diff --git a/z_ele/src/views/system/config/index.vue b/z_ele/src/views/system/config/index.vue index 5e0a89d..6a0896a 100644 --- a/z_ele/src/views/system/config/index.vue +++ b/z_ele/src/views/system/config/index.vue @@ -71,7 +71,7 @@ {{ getItemLabel(row.type) }} @@ -102,7 +102,8 @@ import { listConfigs, updateConfigStatus, - removeConfigs + removeConfigs, + updateConfigSort } from '@/api/system/config'; import { getSysConfig } from '@/utils/sys-config'; import { ItemType, getItemLabel } from '@/enum/config-item-type.ts'; @@ -243,6 +244,11 @@ .catch(() => {}); }; + const updateSort = (id, sort) => { + updateConfigSort(id, sort).then(()=>{ + EleMessage.success("更新成功"); + }); + } /** 修改配置状态 */ const editStatus = (checked: boolean, row: Config) => { const status = checked ? 1 : 0;