From b4df42f82f57023cae3b1396ea17f84d61217cb4 Mon Sep 17 00:00:00 2001 From: u2nyakim Date: Fri, 29 Aug 2025 17:29:50 +0800 Subject: [PATCH] =?UTF-8?q?up.=20=E5=BC=80=E5=8F=91=E6=8E=A7=E5=88=B6?= =?UTF-8?q?=E5=99=A8=E5=9D=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/system/dev/CommandController.php | 53 +++++++++++++++++++ .../admin/system/dev/ComposerController.php | 16 ++++++ .../admin/system/dev/CrontabController.php | 17 ++++++ 3 files changed, 86 insertions(+) create mode 100644 app/controller/admin/system/dev/CommandController.php create mode 100644 app/controller/admin/system/dev/ComposerController.php create mode 100644 app/controller/admin/system/dev/CrontabController.php diff --git a/app/controller/admin/system/dev/CommandController.php b/app/controller/admin/system/dev/CommandController.php new file mode 100644 index 0000000..1d01d89 --- /dev/null +++ b/app/controller/admin/system/dev/CommandController.php @@ -0,0 +1,53 @@ + $class) { + $names = explode(':', $cmdName); + $group = ''; + if(count($names) > 1){ + $group = $names[0]; + } + if(is_string($class)){ + $classObj = Console::getCommand($cmdName); + $className = $class; + }else{ + $classObj = $class; + $className = get_class($class); + } + $className = ltrim($className, '\\'); + $type = ""; + if(str_starts_with($className, 'think\\')){ + $type = "think"; + } + + $lists[$group][] = [ + 'name' => $cmdName, + 'type' => $type, + 'group' => $group, + 'class' => $className, + 'description'=> $classObj->getDescription(), + 'aliases' => $classObj->getAliases(), + 'arguments' => $classObj->getDefinition()->getArguments(), + 'options' => $classObj->getDefinition()->getOptions() + ]; + } + $results = []; + foreach ($lists as $group => $list) { + foreach ($list as $item) { + $results[] = $item; + } + } + return $this->writeSuccess('ok', $results); + } +} \ No newline at end of file diff --git a/app/controller/admin/system/dev/ComposerController.php b/app/controller/admin/system/dev/ComposerController.php new file mode 100644 index 0000000..8542f25 --- /dev/null +++ b/app/controller/admin/system/dev/ComposerController.php @@ -0,0 +1,16 @@ +app->getRootPath() . 'composer.lock'; + $composerLockData = json_decode(file_get_contents($composerLockFile), true); + return $this->writeSuccess('ok', $composerLockData); + } +} \ No newline at end of file diff --git a/app/controller/admin/system/dev/CrontabController.php b/app/controller/admin/system/dev/CrontabController.php new file mode 100644 index 0000000..0d40941 --- /dev/null +++ b/app/controller/admin/system/dev/CrontabController.php @@ -0,0 +1,17 @@ +paginate(); + + return $this->writeSuccess('ok', $result); + } +} \ No newline at end of file