From cf293a1decac0138b4e09fde4a5478c9933f4ba7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=85=A8=E6=A0=88=E5=B0=8F=E5=AD=A6=E7=94=9F?= <1518079521@qq.com> Date: Fri, 14 Nov 2025 11:39:40 +0800 Subject: [PATCH] up --- admin/src/app/components/upgrade/index.vue | 2 +- admin/src/app/views/index/store.vue | 7 +++++-- niucloud/app/adminapi/route/upgrade.php | 6 +++--- .../service/admin/upgrade/UpgradeService.php | 21 ++++++++++++------- 4 files changed, 23 insertions(+), 13 deletions(-) diff --git a/admin/src/app/components/upgrade/index.vue b/admin/src/app/components/upgrade/index.vue index 2f3af58d9..1e5aa17ed 100644 --- a/admin/src/app/components/upgrade/index.vue +++ b/admin/src/app/components/upgrade/index.vue @@ -516,7 +516,7 @@ const open = (addonKey: string = '', callback = null) => { active.value = 'upgrade' if (callback) callback() } else { - if (addonKey && frameworkVersion.value != newFrameworkVersion.value) { + if (addonKey && addonKey.indexOf('niucloud-admin') == -1 && frameworkVersion.value != newFrameworkVersion.value) { ElMessage({ message: '存在新版本框架,请先升级框架', type: 'error' }) if (callback) callback() return diff --git a/admin/src/app/views/index/store.vue b/admin/src/app/views/index/store.vue index 7252b1d54..9e01807cb 100644 --- a/admin/src/app/views/index/store.vue +++ b/admin/src/app/views/index/store.vue @@ -53,7 +53,9 @@
一键修复 安装({{ batchUpgradeApp.length }}) - 一键升级({{ batchUpgradeApp.length }}) + + 一键升级({{ batchUpgradeApp.length }}) +
@@ -592,6 +594,7 @@ import useUserStore from '@/stores/modules/user' import Upgrade from '@/app/components/upgrade/index.vue' import CloudBuild from '@/app/components/cloud-build/index.vue' import UpgradeLog from '@/app/components/upgrade-log/index.vue' +import {deepClone} from "@/utils/common"; const tableRef = ref(null) const router = useRouter() @@ -1271,7 +1274,7 @@ const appKeySingleSelect = (event: any, key: string) => { } const batchUpgrade = () => { - const appKeys = batchUpgradeApp.value + const appKeys = deepClone(batchUpgradeApp.value) if (frameworkVersion.value != frameworkNewVersion.value) { appKeys.unshift('niucloud-admin') } diff --git a/niucloud/app/adminapi/route/upgrade.php b/niucloud/app/adminapi/route/upgrade.php index be9598f06..8b24ca3dd 100644 --- a/niucloud/app/adminapi/route/upgrade.php +++ b/niucloud/app/adminapi/route/upgrade.php @@ -30,13 +30,13 @@ Route::group('', function () { Route::post('upgrade/clear', 'addon.Upgrade/clearUpgradeTask'); // 升级环境检测 - Route::get('upgrade/check/[:addon]', 'addon.Upgrade/upgradePreCheck')->pattern(['addon' => '[\w|\,]+']); + Route::get('upgrade/check/[:addon]', 'addon.Upgrade/upgradePreCheck')->pattern(['addon' => '[\w,-]+']); // 升级 - Route::post('upgrade/[:addon]', 'addon.Upgrade/upgrade')->pattern(['addon' => '[\w|\,]+']); + Route::post('upgrade/[:addon]', 'addon.Upgrade/upgrade')->pattern(['addon' => '[\w,-]+']); // 获取升级内容 - Route::get('upgrade/[:addon]', 'addon.Upgrade/getUpgradeContent')->pattern(['addon' => '[\w|\,]+']); + Route::get('upgrade/[:addon]', 'addon.Upgrade/getUpgradeContent')->pattern(['addon' => '[\w,-]+']); Route::post('upgrade/operate/:operate', 'addon.Upgrade/operate'); diff --git a/niucloud/app/service/admin/upgrade/UpgradeService.php b/niucloud/app/service/admin/upgrade/UpgradeService.php index 24ecb2d3c..331a2a7a8 100644 --- a/niucloud/app/service/admin/upgrade/UpgradeService.php +++ b/niucloud/app/service/admin/upgrade/UpgradeService.php @@ -863,15 +863,22 @@ class UpgradeService extends BaseAdminService } else { $addons = array_filter(explode(',', $addon)); foreach ($addons as $key) { - $info = ( new Addon() )->where([ [ 'key', '=', $key ] ])->field('version,type')->find(); - $upgrade[ 'app_key' ] = $key; - $upgrade[ 'version' ] = $info['version']; - if ($info['type'] == 'app') { - array_unshift($apps, $upgrade); - } else { - array_push($apps, $upgrade); + if ($key != AddonDict::FRAMEWORK_KEY) { + $info = ( new Addon() )->where([ [ 'key', '=', $key ] ])->field('version,type')->find(); + $upgrade[ 'app_key' ] = $key; + $upgrade[ 'version' ] = $info['version']; + if ($info['type'] == 'app') { + array_unshift($apps, $upgrade); + } else { + array_push($apps, $upgrade); + } } } + if (in_array(AddonDict::FRAMEWORK_KEY, $addons)) { + $upgrade[ 'app_key' ] = AddonDict::FRAMEWORK_KEY; + $upgrade[ 'version' ] = config('version.version'); + array_unshift($apps, $upgrade); + } } foreach ($apps as $item) {