更新完善字典相关功能

This commit is contained in:
2026-02-18 17:15:33 +08:00
parent 5450777bd7
commit 378b9bd71f
23 changed files with 1657 additions and 572 deletions
+153 -148
View File
@@ -7,167 +7,172 @@
// 需要认证的路由
Route::middleware(['auth.check:admin', 'log.request'])->group(function () {
// 认证相关
// Auth 模块
Route::prefix('auth')->group(function () {
// 认证相关
Route::post('/logout', [\App\Http\Controllers\Auth\Admin\Auth::class, 'logout']);
Route::post('/refresh', [\App\Http\Controllers\Auth\Admin\Auth::class, 'refresh']);
Route::get('/me', [\App\Http\Controllers\Auth\Admin\Auth::class, 'me']);
Route::post('/change-password', [\App\Http\Controllers\Auth\Admin\Auth::class, 'changePassword']);
// 用户管理
Route::prefix('users')->group(function () {
Route::get('/', [\App\Http\Controllers\Auth\Admin\User::class, 'index']);
Route::get('/{id}', [\App\Http\Controllers\Auth\Admin\User::class, 'show']);
Route::post('/', [\App\Http\Controllers\Auth\Admin\User::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\Auth\Admin\User::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\Auth\Admin\User::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\Auth\Admin\User::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\Auth\Admin\User::class, 'batchUpdateStatus']);
Route::post('/batch-department', [\App\Http\Controllers\Auth\Admin\User::class, 'batchAssignDepartment']);
Route::post('/batch-roles', [\App\Http\Controllers\Auth\Admin\User::class, 'batchAssignRoles']);
Route::post('/export', [\App\Http\Controllers\Auth\Admin\User::class, 'export']);
Route::post('/import', [\App\Http\Controllers\Auth\Admin\User::class, 'import']);
Route::get('/download-template', [\App\Http\Controllers\Auth\Admin\User::class, 'downloadTemplate']);
});
// 角色管理
Route::prefix('roles')->group(function () {
Route::get('/', [\App\Http\Controllers\Auth\Admin\Role::class, 'index']);
Route::get('/all', [\App\Http\Controllers\Auth\Admin\Role::class, 'getAll']);
Route::get('/{id}', [\App\Http\Controllers\Auth\Admin\Role::class, 'show']);
Route::post('/', [\App\Http\Controllers\Auth\Admin\Role::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\Auth\Admin\Role::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\Auth\Admin\Role::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\Auth\Admin\Role::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\Auth\Admin\Role::class, 'batchUpdateStatus']);
Route::post('/{id}/permissions', [\App\Http\Controllers\Auth\Admin\Role::class, 'assignPermissions']);
Route::get('/{id}/permissions', [\App\Http\Controllers\Auth\Admin\Role::class, 'getPermissions']);
Route::post('/{id}/copy', [\App\Http\Controllers\Auth\Admin\Role::class, 'copy']);
Route::post('/batch-copy', [\App\Http\Controllers\Auth\Admin\Role::class, 'batchCopy']);
});
// 权限管理
Route::prefix('permissions')->group(function () {
Route::get('/', [\App\Http\Controllers\Auth\Admin\Permission::class, 'index']);
Route::get('/tree', [\App\Http\Controllers\Auth\Admin\Permission::class, 'tree']);
Route::get('/menu', [\App\Http\Controllers\Auth\Admin\Permission::class, 'menu']);
Route::get('/{id}', [\App\Http\Controllers\Auth\Admin\Permission::class, 'show']);
Route::post('/', [\App\Http\Controllers\Auth\Admin\Permission::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\Auth\Admin\Permission::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\Auth\Admin\Permission::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\Auth\Admin\Permission::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\Auth\Admin\Permission::class, 'batchUpdateStatus']);
});
// 部门管理
Route::prefix('departments')->group(function () {
Route::get('/', [\App\Http\Controllers\Auth\Admin\Department::class, 'index']);
Route::get('/tree', [\App\Http\Controllers\Auth\Admin\Department::class, 'tree']);
Route::get('/all', [\App\Http\Controllers\Auth\Admin\Department::class, 'getAll']);
Route::get('/{id}', [\App\Http\Controllers\Auth\Admin\Department::class, 'show']);
Route::post('/', [\App\Http\Controllers\Auth\Admin\Department::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\Auth\Admin\Department::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\Auth\Admin\Department::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\Auth\Admin\Department::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\Auth\Admin\Department::class, 'batchUpdateStatus']);
Route::post('/export', [\App\Http\Controllers\Auth\Admin\Department::class, 'export']);
Route::post('/import', [\App\Http\Controllers\Auth\Admin\Department::class, 'import']);
Route::get('/download-template', [\App\Http\Controllers\Auth\Admin\Department::class, 'downloadTemplate']);
});
// 在线用户管理
Route::prefix('online-users')->group(function () {
Route::get('/count', [\App\Http\Controllers\Auth\Admin\User::class, 'getOnlineCount']);
Route::get('/', [\App\Http\Controllers\Auth\Admin\User::class, 'getOnlineUsers']);
Route::get('/{userId}/sessions', [\App\Http\Controllers\Auth\Admin\User::class, 'getUserSessions']);
Route::post('/{userId}/offline', [\App\Http\Controllers\Auth\Admin\User::class, 'setUserOffline']);
Route::post('/{userId}/offline-all', [\App\Http\Controllers\Auth\Admin\User::class, 'setUserAllOffline']);
});
});
// 用户管理
Route::prefix('users')->group(function () {
Route::get('/', [\App\Http\Controllers\Auth\Admin\User::class, 'index']);
Route::get('/{id}', [\App\Http\Controllers\Auth\Admin\User::class, 'show']);
Route::post('/', [\App\Http\Controllers\Auth\Admin\User::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\Auth\Admin\User::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\Auth\Admin\User::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\Auth\Admin\User::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\Auth\Admin\User::class, 'batchUpdateStatus']);
Route::post('/batch-department', [\App\Http\Controllers\Auth\Admin\User::class, 'batchAssignDepartment']);
Route::post('/batch-roles', [\App\Http\Controllers\Auth\Admin\User::class, 'batchAssignRoles']);
Route::post('/export', [\App\Http\Controllers\Auth\Admin\User::class, 'export']);
Route::post('/import', [\App\Http\Controllers\Auth\Admin\User::class, 'import']);
Route::get('/download-template', [\App\Http\Controllers\Auth\Admin\User::class, 'downloadTemplate']);
});
// 系统管理模块
Route::prefix('system')->group(function () {
// 系统配置管理
Route::prefix('configs')->group(function () {
Route::get('/', [\App\Http\Controllers\System\Admin\Config::class, 'index']);
Route::get('/all', [\App\Http\Controllers\System\Admin\Config::class, 'getByGroup']);
Route::get('/groups', [\App\Http\Controllers\System\Admin\Config::class, 'getGroups']);
Route::get('/{id}', [\App\Http\Controllers\System\Admin\Config::class, 'show']);
Route::post('/', [\App\Http\Controllers\System\Admin\Config::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\System\Admin\Config::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\System\Admin\Config::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\Config::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\System\Admin\Config::class, 'batchUpdateStatus']);
});
// 角色管理
Route::prefix('roles')->group(function () {
Route::get('/', [\App\Http\Controllers\Auth\Admin\Role::class, 'index']);
Route::get('/all', [\App\Http\Controllers\Auth\Admin\Role::class, 'getAll']);
Route::get('/{id}', [\App\Http\Controllers\Auth\Admin\Role::class, 'show']);
Route::post('/', [\App\Http\Controllers\Auth\Admin\Role::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\Auth\Admin\Role::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\Auth\Admin\Role::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\Auth\Admin\Role::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\Auth\Admin\Role::class, 'batchUpdateStatus']);
Route::post('/{id}/permissions', [\App\Http\Controllers\Auth\Admin\Role::class, 'assignPermissions']);
Route::get('/{id}/permissions', [\App\Http\Controllers\Auth\Admin\Role::class, 'getPermissions']);
Route::post('/{id}/copy', [\App\Http\Controllers\Auth\Admin\Role::class, 'copy']);
Route::post('/batch-copy', [\App\Http\Controllers\Auth\Admin\Role::class, 'batchCopy']);
});
// 系统操作日志
Route::prefix('logs')->group(function () {
Route::get('/', [\App\Http\Controllers\System\Admin\Log::class, 'index']);
Route::get('/export', [\App\Http\Controllers\System\Admin\Log::class, 'export']);
Route::get('/statistics', [\App\Http\Controllers\System\Admin\Log::class, 'getStatistics']);
Route::get('/{id}', [\App\Http\Controllers\System\Admin\Log::class, 'show']);
Route::delete('/{id}', [\App\Http\Controllers\System\Admin\Log::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\Log::class, 'batchDelete']);
Route::post('/clear', [\App\Http\Controllers\System\Admin\Log::class, 'clearLogs']);
});
// 权限管理
Route::prefix('permissions')->group(function () {
Route::get('/', [\App\Http\Controllers\Auth\Admin\Permission::class, 'index']);
Route::get('/tree', [\App\Http\Controllers\Auth\Admin\Permission::class, 'tree']);
Route::get('/menu', [\App\Http\Controllers\Auth\Admin\Permission::class, 'menu']);
Route::get('/{id}', [\App\Http\Controllers\Auth\Admin\Permission::class, 'show']);
Route::post('/', [\App\Http\Controllers\Auth\Admin\Permission::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\Auth\Admin\Permission::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\Auth\Admin\Permission::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\Auth\Admin\Permission::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\Auth\Admin\Permission::class, 'batchUpdateStatus']);
});
// 数据字典管理
Route::prefix('dictionaries')->group(function () {
Route::get('/', [\App\Http\Controllers\System\Admin\Dictionary::class, 'index']);
Route::get('/all', [\App\Http\Controllers\System\Admin\Dictionary::class, 'all']);
Route::get('/{id}', [\App\Http\Controllers\System\Admin\Dictionary::class, 'show']);
Route::post('/', [\App\Http\Controllers\System\Admin\Dictionary::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\System\Admin\Dictionary::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\System\Admin\Dictionary::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\Dictionary::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\System\Admin\Dictionary::class, 'batchUpdateStatus']);
});
// 部门管理
Route::prefix('departments')->group(function () {
Route::get('/', [\App\Http\Controllers\Auth\Admin\Department::class, 'index']);
Route::get('/tree', [\App\Http\Controllers\Auth\Admin\Department::class, 'tree']);
Route::get('/all', [\App\Http\Controllers\Auth\Admin\Department::class, 'getAll']);
Route::get('/{id}', [\App\Http\Controllers\Auth\Admin\Department::class, 'show']);
Route::post('/', [\App\Http\Controllers\Auth\Admin\Department::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\Auth\Admin\Department::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\Auth\Admin\Department::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\Auth\Admin\Department::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\Auth\Admin\Department::class, 'batchUpdateStatus']);
Route::post('/export', [\App\Http\Controllers\Auth\Admin\Department::class, 'export']);
Route::post('/import', [\App\Http\Controllers\Auth\Admin\Department::class, 'import']);
Route::get('/download-template', [\App\Http\Controllers\Auth\Admin\Department::class, 'downloadTemplate']);
});
// 数据字典项管理
Route::prefix('dictionary-items')->group(function () {
Route::get('/', [\App\Http\Controllers\System\Admin\Dictionary::class, 'getItemsList']);
Route::get('/all', [\App\Http\Controllers\System\Admin\Dictionary::class, 'getAllItems']);
Route::post('/', [\App\Http\Controllers\System\Admin\Dictionary::class, 'storeItem']);
Route::put('/{id}', [\App\Http\Controllers\System\Admin\Dictionary::class, 'updateItem']);
Route::delete('/{id}', [\App\Http\Controllers\System\Admin\Dictionary::class, 'destroyItem']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\Dictionary::class, 'batchDeleteItems']);
Route::post('/batch-status', [\App\Http\Controllers\System\Admin\Dictionary::class, 'batchUpdateItemsStatus']);
});
// 在线用户管理
Route::prefix('online-users')->group(function () {
Route::get('/count', [\App\Http\Controllers\Auth\Admin\User::class, 'getOnlineCount']);
Route::get('/', [\App\Http\Controllers\Auth\Admin\User::class, 'getOnlineUsers']);
Route::get('/{userId}/sessions', [\App\Http\Controllers\Auth\Admin\User::class, 'getUserSessions']);
Route::post('/{userId}/offline', [\App\Http\Controllers\Auth\Admin\User::class, 'setUserOffline']);
Route::post('/{userId}/offline-all', [\App\Http\Controllers\Auth\Admin\User::class, 'setUserAllOffline']);
});
// 任务管理
Route::prefix('tasks')->group(function () {
Route::get('/', [\App\Http\Controllers\System\Admin\Task::class, 'index']);
Route::get('/all', [\App\Http\Controllers\System\Admin\Task::class, 'all']);
Route::get('/statistics', [\App\Http\Controllers\System\Admin\Task::class, 'getStatistics']);
Route::get('/{id}', [\App\Http\Controllers\System\Admin\Task::class, 'show']);
Route::post('/', [\App\Http\Controllers\System\Admin\Task::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\System\Admin\Task::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\System\Admin\Task::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\Task::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\System\Admin\Task::class, 'batchUpdateStatus']);
Route::post('/{id}/run', [\App\Http\Controllers\System\Admin\Task::class, 'run']);
});
// 系统配置管理
Route::prefix('configs')->group(function () {
Route::get('/', [\App\Http\Controllers\System\Admin\Config::class, 'index']);
Route::get('/all', [\App\Http\Controllers\System\Admin\Config::class, 'getByGroup']);
Route::get('/groups', [\App\Http\Controllers\System\Admin\Config::class, 'getGroups']);
Route::get('/{id}', [\App\Http\Controllers\System\Admin\Config::class, 'show']);
Route::post('/', [\App\Http\Controllers\System\Admin\Config::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\System\Admin\Config::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\System\Admin\Config::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\Config::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\System\Admin\Config::class, 'batchUpdateStatus']);
});
// 城市数据管理
Route::prefix('cities')->group(function () {
Route::get('/', [\App\Http\Controllers\System\Admin\City::class, 'index']);
Route::get('/tree', [\App\Http\Controllers\System\Admin\City::class, 'tree']);
Route::get('/{id}', [\App\Http\Controllers\System\Admin\City::class, 'show']);
Route::get('/{id}/children', [\App\Http\Controllers\System\Admin\City::class, 'children']);
Route::get('/provinces', [\App\Http\Controllers\System\Admin\City::class, 'provinces']);
Route::get('/{provinceId}/cities', [\App\Http\Controllers\System\Admin\City::class, 'cities']);
Route::get('/{cityId}/districts', [\App\Http\Controllers\System\Admin\City::class, 'districts']);
Route::post('/', [\App\Http\Controllers\System\Admin\City::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\System\Admin\City::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\System\Admin\City::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\City::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\System\Admin\City::class, 'batchUpdateStatus']);
});
// 系统操作日志
Route::prefix('logs')->group(function () {
Route::get('/', [\App\Http\Controllers\System\Admin\Log::class, 'index']);
Route::get('/export', [\App\Http\Controllers\System\Admin\Log::class, 'export']);
Route::get('/statistics', [\App\Http\Controllers\System\Admin\Log::class, 'getStatistics']);
Route::get('/{id}', [\App\Http\Controllers\System\Admin\Log::class, 'show']);
Route::delete('/{id}', [\App\Http\Controllers\System\Admin\Log::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\Log::class, 'batchDelete']);
Route::post('/clear', [\App\Http\Controllers\System\Admin\Log::class, 'clearLogs']);
});
// 数据字典管理
Route::prefix('dictionaries')->group(function () {
Route::get('/', [\App\Http\Controllers\System\Admin\Dictionary::class, 'index']);
Route::get('/all', [\App\Http\Controllers\System\Admin\Dictionary::class, 'all']);
Route::get('/{id}', [\App\Http\Controllers\System\Admin\Dictionary::class, 'show']);
Route::post('/', [\App\Http\Controllers\System\Admin\Dictionary::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\System\Admin\Dictionary::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\System\Admin\Dictionary::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\Dictionary::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\System\Admin\Dictionary::class, 'batchUpdateStatus']);
});
// 数据字典项管理
Route::prefix('dictionary-items')->group(function () {
Route::get('/', [\App\Http\Controllers\System\Admin\Dictionary::class, 'getItemsList']);
Route::post('/', [\App\Http\Controllers\System\Admin\Dictionary::class, 'storeItem']);
Route::put('/{id}', [\App\Http\Controllers\System\Admin\Dictionary::class, 'updateItem']);
Route::delete('/{id}', [\App\Http\Controllers\System\Admin\Dictionary::class, 'destroyItem']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\Dictionary::class, 'batchDeleteItems']);
Route::post('/batch-status', [\App\Http\Controllers\System\Admin\Dictionary::class, 'batchUpdateItemsStatus']);
});
// 任务管理
Route::prefix('tasks')->group(function () {
Route::get('/', [\App\Http\Controllers\System\Admin\Task::class, 'index']);
Route::get('/all', [\App\Http\Controllers\System\Admin\Task::class, 'all']);
Route::get('/statistics', [\App\Http\Controllers\System\Admin\Task::class, 'getStatistics']);
Route::get('/{id}', [\App\Http\Controllers\System\Admin\Task::class, 'show']);
Route::post('/', [\App\Http\Controllers\System\Admin\Task::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\System\Admin\Task::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\System\Admin\Task::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\Task::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\System\Admin\Task::class, 'batchUpdateStatus']);
Route::post('/{id}/run', [\App\Http\Controllers\System\Admin\Task::class, 'run']);
});
// 城市数据管理
Route::prefix('cities')->group(function () {
Route::get('/', [\App\Http\Controllers\System\Admin\City::class, 'index']);
Route::get('/tree', [\App\Http\Controllers\System\Admin\City::class, 'tree']);
Route::get('/{id}', [\App\Http\Controllers\System\Admin\City::class, 'show']);
Route::get('/{id}/children', [\App\Http\Controllers\System\Admin\City::class, 'children']);
Route::get('/provinces', [\App\Http\Controllers\System\Admin\City::class, 'provinces']);
Route::get('/{provinceId}/cities', [\App\Http\Controllers\System\Admin\City::class, 'cities']);
Route::get('/{cityId}/districts', [\App\Http\Controllers\System\Admin\City::class, 'districts']);
Route::post('/', [\App\Http\Controllers\System\Admin\City::class, 'store']);
Route::put('/{id}', [\App\Http\Controllers\System\Admin\City::class, 'update']);
Route::delete('/{id}', [\App\Http\Controllers\System\Admin\City::class, 'destroy']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\City::class, 'batchDelete']);
Route::post('/batch-status', [\App\Http\Controllers\System\Admin\City::class, 'batchUpdateStatus']);
});
// 文件上传管理
Route::prefix('upload')->group(function () {
Route::post('/', [\App\Http\Controllers\System\Admin\Upload::class, 'upload']);
Route::post('/multiple', [\App\Http\Controllers\System\Admin\Upload::class, 'uploadMultiple']);
Route::post('/base64', [\App\Http\Controllers\System\Admin\Upload::class, 'uploadBase64']);
Route::post('/delete', [\App\Http\Controllers\System\Admin\Upload::class, 'delete']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\Upload::class, 'batchDelete']);
// 文件上传管理
Route::prefix('upload')->group(function () {
Route::post('/', [\App\Http\Controllers\System\Admin\Upload::class, 'upload']);
Route::post('/multiple', [\App\Http\Controllers\System\Admin\Upload::class, 'uploadMultiple']);
Route::post('/base64', [\App\Http\Controllers\System\Admin\Upload::class, 'uploadBase64']);
Route::post('/delete', [\App\Http\Controllers\System\Admin\Upload::class, 'delete']);
Route::post('/batch-delete', [\App\Http\Controllers\System\Admin\Upload::class, 'batchDelete']);
});
});
// WebSocket 管理
+24
View File
@@ -1,3 +1,27 @@
<?php
use Illuminate\Support\Facades\Route;
use App\Http\Controllers\System\Api\Dictionary;
// 公开路由(不需要认证)
Route::prefix('system')->group(function () {
// 获取所有系统配置
Route::get('/configs', [\App\Http\Controllers\System\Api\Config::class, 'all']);
Route::get('/configs/group', [\App\Http\Controllers\System\Api\Config::class, 'getByGroup']);
Route::get('/configs/key', [\App\Http\Controllers\System\Api\Config::class, 'getByKey']);
// 获取所有字典数据(用于前端缓存)
Route::get('/dictionaries', [Dictionary::class, 'all']);
Route::get('/dictionaries/code', [Dictionary::class, 'getByCode']);
Route::get('/dictionaries/{id}', [Dictionary::class, 'show']);
// 获取城市数据
Route::get('/cities/tree', [\App\Http\Controllers\System\Api\City::class, 'tree']);
Route::get('/cities/provinces', [\App\Http\Controllers\System\Api\City::class, 'provinces']);
Route::get('/cities/{provinceId}/cities', [\App\Http\Controllers\System\Api\City::class, 'cities']);
Route::get('/cities/{cityId}/districts', [\App\Http\Controllers\System\Api\City::class, 'districts']);
Route::get('/cities/{id}', [\App\Http\Controllers\System\Api\City::class, 'show']);
// 文件上传
Route::post('/upload', [\App\Http\Controllers\System\Api\Upload::class, 'upload']);
});