chore: 重写初始提交(清空历史,整理后全量提交)

This commit is contained in:
ywxapp
2026-08-16 16:54:14 +08:00
commit 6c1a106bc1
1808 changed files with 238144 additions and 0 deletions
+71
View File
@@ -0,0 +1,71 @@
<?php
// +----------------------------------------------------------------------
// | YwxApp [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2026-2036 http://ywxapp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Author: ywxapp<admin@ywxapp.cn>
// +----------------------------------------------------------------------
// 文档中心插件路由
// 注意:本文件由 AddonService::loadAddonRoutes() 包裹在 Route::group('docs') 内,
// 因此这里一律写相对路径,不要再加 docs/ 前缀。
use think\facade\Route;
// ==================== 后台管理 ====================
Route::group('backend', function () {
// UEditor 服务端统一入口(config / 上传 / 图片管理 / 远程抓图)
Route::rule('ueditor', 'backend.Ueditor/index', 'GET|POST');
// ---------- 文档项目 ----------
Route::get('project/add', 'backend.Project/add');
Route::post('project/save', 'backend.Project/save');
Route::get('project/edit/:id', 'backend.Project/edit');
Route::post('project/update/:id', 'backend.Project/update');
Route::post('project/delete/:id', 'backend.Project/delete');
Route::get('project', 'backend.Project/index');
// ---------- 文档版本 ----------
Route::get('version/add', 'backend.Version/add');
Route::post('version/save', 'backend.Version/save');
Route::get('version/edit/:id', 'backend.Version/edit');
Route::post('version/update/:id', 'backend.Version/update');
Route::post('version/delete/:id', 'backend.Version/delete');
Route::get('version', 'backend.Version/index');
// ---------- 文档正文 ----------
// 具体路径必须写在 :id 通配之前,否则会被参数规则吞掉
Route::get('doc/import', 'backend.Doc/import');
Route::post('doc/import', 'backend.Doc/doImport');
Route::post('doc/sort', 'backend.Doc/sort');
Route::get('doc/tree', 'backend.Doc/tree');
Route::get('doc/add', 'backend.Doc/add');
Route::post('doc/save', 'backend.Doc/save');
Route::post('doc/rebuild-index', 'backend.Doc/rebuildIndex');
Route::get('doc/edit/:id', 'backend.Doc/edit');
Route::post('doc/update/:id', 'backend.Doc/update');
Route::post('doc/delete/:id', 'backend.Doc/delete');
Route::get('doc', 'backend.Doc/index');
Route::get('/', 'backend.Index/index');
});
// ==================== 前台阅读 ====================
// 顺序敏感:固定路径 -> 三段 -> 两段 -> 一段 -> 首页
Route::get('search', 'Search/index');
// /docs/<项目>/<版本>/<文档>
Route::get(':project/:version/:name', 'Read/index')
->pattern(['project' => '[A-Za-z0-9_\-]+', 'version' => '[A-Za-z0-9_\.\-]+', 'name' => '[A-Za-z0-9_\-]+']);
// /docs/<项目>/<文档>
Route::get(':project/:name', 'Read/index')
->pattern(['project' => '[A-Za-z0-9_\-]+', 'name' => '[A-Za-z0-9_\-]+']);
// /docs/<项目> 跳转到该项目第一篇
Route::get(':project', 'Read/entry')
->pattern(['project' => '[A-Za-z0-9_\-]+']);
// /docs 文档中心首页
Route::get('/', 'Index/index');