From 4f152638b0698cdc9e01a9d9912ab866c2a20d26 Mon Sep 17 00:00:00 2001 From: HibiKier <45528451+HibiKier@users.noreply.github.com> Date: Fri, 6 Feb 2026 09:13:36 +0800 Subject: [PATCH] =?UTF-8?q?:bug:=20=E4=BF=AE=E5=A4=8Dwebui=E6=8F=92?= =?UTF-8?q?=E4=BB=B6=E5=88=A0=E9=99=A4=E9=97=AE=E9=A2=98=20(#2097)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web_ui/api/tabs/plugin_manage/data_source.py | 2 ++ .../builtin_plugins/web_ui/api/tabs/plugin_manage/model.py | 2 ++ .../builtin_plugins/web_ui/api/tabs/plugin_manage/store.py | 6 +++++- 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/zhenxun/builtin_plugins/web_ui/api/tabs/plugin_manage/data_source.py b/zhenxun/builtin_plugins/web_ui/api/tabs/plugin_manage/data_source.py index a8b5e097..df54752e 100644 --- a/zhenxun/builtin_plugins/web_ui/api/tabs/plugin_manage/data_source.py +++ b/zhenxun/builtin_plugins/web_ui/api/tabs/plugin_manage/data_source.py @@ -41,6 +41,7 @@ class ApiDataSource: plugins = await query.all() for plugin in plugins: plugin_info = PluginInfo( + id=plugin.id, module=plugin.module, plugin_name=plugin.name, default_status=plugin.default_status, @@ -269,6 +270,7 @@ class ApiDataSource: cls.__build_plugin_config(module, cfg, config) for cfg in config.configs ) return PluginDetail( + id=db_plugin.id, module=module, plugin_name=db_plugin.name, default_status=db_plugin.default_status, diff --git a/zhenxun/builtin_plugins/web_ui/api/tabs/plugin_manage/model.py b/zhenxun/builtin_plugins/web_ui/api/tabs/plugin_manage/model.py index 007e55e0..dc70f4d9 100644 --- a/zhenxun/builtin_plugins/web_ui/api/tabs/plugin_manage/model.py +++ b/zhenxun/builtin_plugins/web_ui/api/tabs/plugin_manage/model.py @@ -57,6 +57,8 @@ class PluginInfo(BaseModel): 基本插件信息 """ + id: int + """插件id""" module: str """模块""" plugin_name: str diff --git a/zhenxun/builtin_plugins/web_ui/api/tabs/plugin_manage/store.py b/zhenxun/builtin_plugins/web_ui/api/tabs/plugin_manage/store.py index 35d19fe7..bc9e4333 100644 --- a/zhenxun/builtin_plugins/web_ui/api/tabs/plugin_manage/store.py +++ b/zhenxun/builtin_plugins/web_ui/api/tabs/plugin_manage/store.py @@ -87,7 +87,11 @@ async def _(param: PluginIr) -> Result: require("plugin_store") from zhenxun.builtin_plugins.plugin_store import StoreManager - result = await StoreManager.remove_plugin(param.id) # type: ignore + plugin_info = await PluginInfo.get_plugin(id=param.id) + if not plugin_info: + return Result.fail("插件不存在") + + result = await StoreManager.remove_plugin(plugin_info.module) # type: ignore return Result.ok(info=result) except Exception as e: return Result.fail(f"移除插件失败: {type(e)}: {e}")