From b32f8ececf69d27bcfd6f297d7781c91ca3cdc29 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=97=E5=AD=90?= Date: Thu, 1 Dec 2022 15:04:31 +0800 Subject: [PATCH] =?UTF-8?q?=E7=89=B9=E6=80=A7=EF=BC=88=E5=91=BD=E4=BB=A4?= =?UTF-8?q?=E8=A1=8C=EF=BC=89=EF=BC=9A=E4=BC=98=E5=8C=96=E5=8D=87=E7=BA=A7?= =?UTF-8?q?=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/Console/Commands/Panel.php | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/app/Console/Commands/Panel.php b/app/Console/Commands/Panel.php index f55101e6..8f8913a8 100644 --- a/app/Console/Commands/Panel.php +++ b/app/Console/Commands/Panel.php @@ -91,6 +91,14 @@ class Panel extends Command */ private function update(): void { + /** + * 检查当前是否有任务正在运行 + */ + if (Task::query()->where('status', '!=', 'finished')->count()) { + $this->error('当前有任务正在运行,请稍后再试'); + $this->info('如需强制更新,请先执行:panel cleanRunningTask'); + return; + } $this->info('正在下载面板...'); $this->info(shell_exec('wget -O /tmp/panel.zip https://api.panel.haozi.xyz/api/version/latest')); $this->info('正在备份数据库...'); @@ -228,7 +236,10 @@ class Panel extends Command */ private function cleanRunningTask(): void { + // 更新任务状态 Task::query()->update(['status' => 'finished']); + // 将所有队列任务清空 + shell_exec('php-panel /www/panel/artisan queue:clear'); $this->info('成功'); } }