system.php 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
  4. // +----------------------------------------------------------------------
  5. // | Copyright (c) 2016~2023 https://www.crmeb.com All rights reserved.
  6. // +----------------------------------------------------------------------
  7. // | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
  8. // +----------------------------------------------------------------------
  9. // | Author: CRMEB Team <admin@crmeb.com>
  10. // +----------------------------------------------------------------------
  11. use think\facade\Route;
  12. /**
  13. * 维护 相关路由
  14. */
  15. Route::group('system', function () {
  16. /** 存储配置 */
  17. Route::group(function () {
  18. //云存储列表
  19. Route::get('config/storage/save_type/:type', 'v1.setting.SystemStorage/uploadType')->name('SystemStorageUploadType')->option(['real_name' => '选择存储方式']);
  20. //云存储列表
  21. Route::get('config/storage', 'v1.setting.SystemStorage/index')->name('SystemStorageIndex')->option(['real_name' => '云存储列表']);
  22. //获取云存储创建表单
  23. Route::get('config/storage/create/:type', 'v1.setting.SystemStorage/create')->name('SystemStorageCreate')->option(['real_name' => '获取云存储创建表单']);
  24. //获取云存储配置表单
  25. Route::get('config/storage/form/:type', 'v1.setting.SystemStorage/getConfigForm')->name('getConfigForm')->option(['real_name' => '获取云存储配置表单']);
  26. //获取云存储配置
  27. Route::get('config/storage/config', 'v1.setting.SystemStorage/getConfig')->name('SystemStorageConfig')->option(['real_name' => '获取云存储配置']);
  28. //保存云存储配置
  29. Route::post('config/storage/config', 'v1.setting.SystemStorage/saveConfig')->name('SystemStorageSaveConfig')->option(['real_name' => '保存云存储配置']);
  30. //同步云存储列表
  31. Route::put('config/storage/synch/:type', 'v1.setting.SystemStorage/synch')->name('SystemStorageSynch')->option(['real_name' => '同步云存储列表']);
  32. //获取修改云存储域名表单
  33. Route::get('config/storage/domain/:id', 'v1.setting.SystemStorage/getUpdateDomainForm')->name('getUpdateDomainForm')->option(['real_name' => '获取修改云存储域名表单']);
  34. //修改云存储域名
  35. Route::post('config/storage/domain/:id', 'v1.setting.SystemStorage/updateDomain')->name('updateDomain')->option(['real_name' => '修改云存储域名']);
  36. //保存云存储数据
  37. Route::post('config/storage/:type', 'v1.setting.SystemStorage/save')->name('SystemStorageSave')->option(['real_name' => '保存云存储数据']);
  38. //删除云存储
  39. Route::delete('config/storage/:id', 'v1.setting.SystemStorage/delete')->name('SystemStorageDelete')->option(['real_name' => '删除云存储']);
  40. //修改云存储状态
  41. Route::put('config/storage/status/:id', 'v1.setting.SystemStorage/status')->name('SystemStorageStatus')->option(['real_name' => '修改云存储状态']);
  42. })->option(['parent' => 'system', 'cate_name' => '存储配置']);
  43. /** 系统日志 */
  44. Route::group(function () {
  45. //系统日志
  46. Route::get('log', 'v1.system.SystemLog/index')->name('SystemLog')->option(['real_name' => '系统日志']);
  47. //系统日志管理员搜索条件
  48. Route::get('log/search_admin', 'v1.system.SystemLog/search_admin')->option(['real_name' => '系统日志管理员搜索条件']);
  49. //文件校验
  50. Route::get('file', 'v1.system.SystemFile/index')->name('SystemFile')->option(['real_name' => '文件校验']);
  51. })->option(['parent' => 'system', 'cate_name' => '系统日志']);
  52. /** 数据备份 */
  53. Route::group(function () {
  54. //数据所有表
  55. Route::get('backup', 'v1.system.SystemDatabackup/index')->option(['real_name' => '数据库所有表']);
  56. //数据备份详情
  57. Route::get('backup/read', 'v1.system.SystemDatabackup/read')->option(['real_name' => '数据备份详情']);
  58. //更新数据表或者表字段备注
  59. Route::post('database/update_mark', 'v1.system.SystemDatabackup/updateMark')->option(['real_name' => '更新数据表或者表字段备注']);
  60. //数据备份 优化表
  61. Route::put('backup/optimize', 'v1.system.SystemDatabackup/optimize')->option(['real_name' => '数据备份优化表']);
  62. //数据备份 修复表
  63. Route::put('backup/repair', 'v1.system.SystemDatabackup/repair')->option(['real_name' => '数据备份修复表']);
  64. //数据备份 备份表
  65. Route::put('backup/backup', 'v1.system.SystemDatabackup/backup')->option(['real_name' => '数据备份备份表']);
  66. //备份记录
  67. Route::get('backup/file_list', 'v1.system.SystemDatabackup/fileList')->option(['real_name' => '数据库备份记录']);
  68. //删除备份记录
  69. Route::delete('backup/del_file', 'v1.system.SystemDatabackup/delFile')->option(['real_name' => '删除数据库备份记录']);
  70. //导入备份记录表
  71. Route::post('backup/import', 'v1.system.SystemDatabackup/import')->option(['real_name' => '导入数据库备份记录']);
  72. //下载备份记录表
  73. //Route::get('backup/download', 'v1.system.SystemDatabackup/downloadFile');
  74. })->option(['parent' => 'system', 'cate_name' => '数据备份']);
  75. /** 数据清除 */
  76. Route::group(function () {
  77. //清除用户数据
  78. Route::get('clear/:type', 'v1.system.SystemClearData/index')->option(['real_name' => '清除用户数据']);
  79. //清除缓存
  80. Route::get('refresh_cache/cache', 'v1.system.Clear/refresh_cache')->option(['real_name' => '清除系统缓存']);
  81. //清除日志
  82. Route::get('refresh_cache/log', 'v1.system.Clear/delete_log')->option(['real_name' => '清除系统日志']);
  83. //域名替换接口
  84. Route::post('replace_site_url', 'v1.system.SystemClearData/replaceSiteUrl')->option(['real_name' => '域名替换']);
  85. //获取APP版本列表
  86. Route::get('version_list', 'v1.system.AppVersion/list')->option(['real_name' => '获取APP版本列表']);
  87. //添加版本信息
  88. Route::get('version_crate/:id', 'v1.system.AppVersion/crate')->option(['real_name' => '添加版本']);
  89. //添加版本信息
  90. Route::post('version_save', 'v1.system.AppVersion/save')->option(['real_name' => '保存版本']);
  91. //删除版本信息
  92. Route::delete('version_del/:id', 'v1.system.AppVersion/del')->option(['real_name' => '删除版本']);
  93. })->option(['parent' => 'system', 'cate_name' => '数据清除']);
  94. /** 在线升级 */
  95. Route::group(function () {
  96. //升级状态
  97. Route::get('upgrade_status', 'UpgradeController/upgradeStatus')->option(['real_name' => '升级状态']);
  98. //升级包列表
  99. Route::get('upgrade/list', 'UpgradeController/upgradeList')->option(['real_name' => '升级包列表']);
  100. //可升级包列表
  101. Route::get('upgradeable/list', 'UpgradeController/upgradeableList')->option(['real_name' => '可升级包列表']);
  102. //升级协议
  103. Route::get('upgrade/agreement', 'UpgradeController/agreement')->option(['real_name' => '升级协议']);
  104. //升级包下载
  105. Route::post('upgrade_download/:package_key', 'UpgradeController/download')->option(['real_name' => '升级包下载']);
  106. //升级进度
  107. Route::get('upgrade_progress', 'UpgradeController/progress')->option(['real_name' => '升级进度']);
  108. //升级记录
  109. Route::get('upgrade_log/list', 'UpgradeController/upgradeLogList')->option(['real_name' => '升级记录']);
  110. //导出备份项目
  111. Route::get('upgrade_export/:id/:type', 'UpgradeController/export')->option(['real_name' => '导出备份']);
  112. //文件管理登录
  113. Route::post('file/login', 'v1.system.SystemFile/login')->option(['real_name' => '文件管理登录']);
  114. })->option(['parent' => 'system', 'cate_name' => '在线升级']);
  115. /** 定时任务 */
  116. Route::group(function () {
  117. //定时任务列表
  118. Route::get('crontab/list', 'v1.system.SystemCrontab/getTimerList')->option(['real_name' => '定时任务列表']);
  119. //定时任务类型
  120. Route::get('crontab/mark', 'v1.system.SystemCrontab/getMarkList')->option(['real_name' => '定时任务类型']);
  121. //定时任务详情
  122. Route::get('crontab/info/:id', 'v1.system.SystemCrontab/getTimerInfo')->option(['real_name' => '定时任务详情']);
  123. //定时任务添加编辑
  124. Route::post('crontab/save', 'v1.system.SystemCrontab/saveTimer')->option(['real_name' => '定时任务添加编辑']);
  125. //删除定时任务
  126. Route::delete('crontab/del/:id', 'v1.system.SystemCrontab/delTimer')->option(['real_name' => '删除定时任务']);
  127. //定时任务是否开启开关
  128. Route::get('crontab/set_open/:id/:is_open', 'v1.system.SystemCrontab/setTimerStatus')->option(['real_name' => '定时任务是否开启开关']);
  129. })->option(['parent' => 'system', 'cate_name' => '定时任务']);
  130. /** 自定事件 */
  131. Route::group(function () {
  132. //定时任务列表
  133. Route::get('event/list', 'v1.system.SystemEvent/getEventList')->option(['real_name' => '自定事件列表']);
  134. //定时任务类型
  135. Route::get('event/mark', 'v1.system.SystemEvent/getMarkList')->option(['real_name' => '自定事件类型']);
  136. //定时任务详情
  137. Route::get('event/info/:id', 'v1.system.SystemEvent/getEventInfo')->option(['real_name' => '自定事件详情']);
  138. //定时任务添加编辑
  139. Route::post('event/save', 'v1.system.SystemEvent/saveEvent')->option(['real_name' => '自定事件添加编辑']);
  140. //删除定时任务
  141. Route::delete('event/del/:id', 'v1.system.SystemEvent/delEvent')->option(['real_name' => '删除自定事件']);
  142. //定时任务是否开启开关
  143. Route::get('event/set_open/:id/:is_open', 'v1.system.SystemEvent/setEventStatus')->option(['real_name' => '自定事件是否开启开关']);
  144. })->option(['parent' => 'system', 'cate_name' => '自定事件']);
  145. /** 系统路由 */
  146. Route::group(function () {
  147. //同步路由接口
  148. Route::get('route/sync_route/[:appName]', 'v1.setting.SystemRoute/syncRoute')->option(['real_name' => '同步路由']);
  149. //获取路由tree行数据
  150. Route::get('route/tree', 'v1.setting.SystemRoute/tree')->option(['real_name' => '获取路由tree']);
  151. //权限路由
  152. Route::delete('route/:id', 'v1.setting.SystemRoute/delete')->option(['real_name' => '删除路由权限']);
  153. //查看路由权限
  154. Route::get('route/:id', 'v1.setting.SystemRoute/read')->option(['real_name' => '查看路由权限']);
  155. //保存路由权限
  156. Route::post('route/:id', 'v1.setting.SystemRoute/save')->option(['real_name' => '保存路由权限']);
  157. //路由分类
  158. Route::resource('route_cate', 'v1.setting.SystemRouteCate')->except(['read'])->option([
  159. 'real_name' => [
  160. 'index' => '获取路由分类列表',
  161. 'create' => '获取创建路由分类表单',
  162. 'save' => '保存路由分类',
  163. 'edit' => '获取修改路由分类表单',
  164. 'update' => '修改路由分类',
  165. 'delete' => '删除路由分类'
  166. ],
  167. ]);
  168. })->option(['parent' => 'system', 'cate_name' => '系统路由']);
  169. /** 代码生成 */
  170. Route::group(function () {
  171. //保存CRUD修改的文件
  172. Route::post('crud/save_file/:id', 'v1.setting.SystemCrud/savefile')->option(['real_name' => '保存CRUD修改的文件']);
  173. //获取CRUD配置
  174. Route::get('crud/config/:tableName', 'v1.setting.SystemCrud/getRouteList')->option(['real_name' => '获取CRUD配置']);
  175. //下载生成的文件
  176. Route::get('crud/download/:id', 'v1.setting.SystemCrud/download')->option(['real_name' => '下载生成的文件']);
  177. //获取CRUD列表
  178. Route::get('crud/column_type', 'v1.setting.SystemCrud/columnType')->option(['real_name' => '获取CRUD列表']);
  179. //获取菜单TREE形数据
  180. Route::get('crud/menus', 'v1.setting.SystemCrud/getMenus')->option(['real_name' => '获取菜单TREE形数据']);
  181. //获取CRUD文件存放
  182. Route::post('crud/file_path', 'v1.setting.SystemCrud/getFilePath')->option(['real_name' => '获取CRUD文件存放']);
  183. //获取数据字典列表
  184. Route::get('crud/data_dictionary_list', 'v1.setting.SystemCrud/dataDictionaryList')->option(['real_name' => '获取数据字典列表']);
  185. //获取数据字典添加修改表单
  186. Route::get('crud/data_dictionary_list/create/:id', 'v1.setting.SystemCrud/dataDictionaryListCreate')->option(['real_name' => '获取数据字典添加修改表单']);
  187. //保存数据字典
  188. Route::post('crud/data_dictionary_list/save/:id', 'v1.setting.SystemCrud/dataDictionaryListSave')->option(['real_name' => '保存数据字典']);
  189. //删除数据字典
  190. Route::delete('crud/data_dictionary_list/del/:id', 'v1.setting.SystemCrud/dataDictionaryListDel')->option(['real_name' => '删除数据字典']);
  191. //查看数据字典内容列表
  192. Route::get('crud/data_dictionary/info_list/:cid', 'v1.setting.SystemCrud/dataDictionaryInfoList')->option(['real_name' => '查看数据字典内容列表']);
  193. //查看数据字典内容添加修改表单
  194. Route::get('crud/data_dictionary/info_create/:cid/:id/:pid', 'v1.setting.SystemCrud/dataDictionaryInfoCreate')->option(['real_name' => '查看数据字典内容添加修改表单']);
  195. //修改或者保存字典数据内容
  196. Route::post('crud/data_dictionary/info_save/:cid/:id', 'v1.setting.SystemCrud/dataDictionaryInfoSave')->option(['real_name' => '修改或者保存字典数据内容']);
  197. //删除数据字典内容
  198. Route::delete('crud/data_dictionary/info_del/:id', 'v1.setting.SystemCrud/dataDictionaryInfoDel')->option(['real_name' => '删除数据字典内容']);
  199. //获取数据字典列表
  200. Route::get('crud/data_dictionary', 'v1.setting.SystemCrud/getDataDictionary')->option(['real_name' => '获取数据字典列表']);
  201. //查看数据字典
  202. Route::get('crud/data_dictionary/:id', 'v1.setting.SystemCrud/getDataDictionaryOne')->option(['real_name' => '查看数据字典']);
  203. //修改或者保存字典数据
  204. Route::post('crud/data_dictionary/[:id]', 'v1.setting.SystemCrud/saveDataDictionary')->option(['real_name' => '修改或者保存字典数据']);
  205. //删除数据字典
  206. Route::delete('crud/data_dictionary/:id', 'v1.setting.SystemCrud/deleteDataDictionary')->option(['real_name' => '删除数据字典']);
  207. //获取可以进行关联的表名
  208. Route::get('crud/association_table', 'v1.setting.SystemCrud/getAssociationTable')->option(['real_name' => '获取可以进行关联的表名']);
  209. //获取表的详细信息
  210. Route::get('crud/association_table/:tableName', 'v1.setting.SystemCrud/getAssociationTableInfo')->option(['real_name' => '获取表的详细信息']);
  211. //删除CRUD
  212. Route::delete('crud/:id', 'v1.setting.SystemCrud/delete')->option(['real_name' => '删除CRUD']);
  213. //查看CRUD
  214. Route::get('crud/:id', 'v1.setting.SystemCrud/read')->option(['real_name' => '查看CRUD']);
  215. //获取CRUD列表
  216. Route::get('crud', 'v1.setting.SystemCrud/index')->option(['real_name' => '获取CRUD列表']);
  217. //保存生成CRUD
  218. Route::post('crud', 'v1.setting.SystemCrud/save')->option(['real_name' => '保存生成CRUD']);
  219. })->option(['parent' => 'system', 'cate_name' => '代码生成']);
  220. })->middleware([
  221. \app\http\middleware\AllowOriginMiddleware::class,
  222. \app\adminapi\middleware\AdminAuthTokenMiddleware::class,
  223. \app\adminapi\middleware\AdminCheckRoleMiddleware::class,
  224. \app\adminapi\middleware\AdminLogMiddleware::class
  225. ])->option(['mark' => 'system', 'mark_name' => '系统维护']);
  226. Route::group('system', function () {
  227. //打开目录
  228. Route::get('file/opendir', 'v1.system.SystemFile/opendir')->option(['real_name' => '打开目录']);
  229. //读取文件
  230. Route::get('file/openfile', 'v1.system.SystemFile/openfile')->option(['real_name' => '读取文件']);
  231. //保存文件
  232. Route::post('file/savefile', 'v1.system.SystemFile/savefile')->option(['real_name' => '保存文件']);
  233. //创建文件夹
  234. Route::get('file/createFolder', 'v1.system.SystemFile/createFolder')->option(['real_name' => '创建文件夹']);
  235. //创建文件
  236. Route::get('file/createFile', 'v1.system.SystemFile/createFile')->option(['real_name' => '创建文件']);
  237. //删除文件夹或者文件
  238. Route::get('file/delFolder', 'v1.system.SystemFile/delFolder')->option(['real_name' => '删除文件夹']);
  239. //重命名文件
  240. Route::get('file/rename', 'v1.system.SystemFile/rename')->option(['real_name' => '重命名文件夹']);
  241. //目录文件备注表单
  242. Route::get('file/mark', 'v1.system.SystemFile/fileMark')->option(['real_name' => '目录文件备注表单']);
  243. //目录文件备注保存
  244. Route::post('file/mark/save', 'v1.system.SystemFile/fileMarkSave')->option(['real_name' => '目录文件备注保存']);
  245. })->middleware([
  246. \app\http\middleware\AllowOriginMiddleware::class,
  247. \app\adminapi\middleware\AdminAuthTokenMiddleware::class,
  248. \app\adminapi\middleware\AdminCheckRoleMiddleware::class,
  249. \app\adminapi\middleware\AdminEditorTokenMiddleware::class,
  250. \app\adminapi\middleware\AdminLogMiddleware::class
  251. ])->option(['mark' => 'system_file', 'mark_name' => '文件管理']);