From 6bf4714c7f2ae151234fec6809c3f40571037e11 Mon Sep 17 00:00:00 2001 From: HibiKier <775757368@qq.com> Date: Fri, 20 Jun 2025 11:07:41 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=20=E4=BF=AE=E5=A4=8D=E6=8F=92?= =?UTF-8?q?=E4=BB=B6=E5=95=86=E5=BA=97=E6=95=B0=E6=8D=AE=E6=BA=90=E9=80=BB?= =?UTF-8?q?=E8=BE=91=EF=BC=8C=E4=BC=98=E5=8C=96=E6=8F=92=E4=BB=B6=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin_store/data_source.py | 19 +++++++++---------- .../web_ui/api/tabs/plugin_manage/store.py | 16 ++++++++-------- 2 files changed, 17 insertions(+), 18 deletions(-) diff --git a/zhenxun/builtin_plugins/plugin_store/data_source.py b/zhenxun/builtin_plugins/plugin_store/data_source.py index f4610e93..18f70bfe 100644 --- a/zhenxun/builtin_plugins/plugin_store/data_source.py +++ b/zhenxun/builtin_plugins/plugin_store/data_source.py @@ -60,7 +60,6 @@ class StoreManager: 返回: list[StorePluginInfo]: 插件列表数据 """ - return [] repo_info = GithubUtils.parse_github_url(DEFAULT_GITHUB_URL) if await repo_info.update_repo_commit(): logger.info(f"获取最新提交: {repo_info.branch}", LOG_COMMAND) @@ -69,6 +68,7 @@ class StoreManager: default_github_url = await repo_info.get_raw_download_urls("plugins.json") response = await AsyncHttpx.get(default_github_url, check_status_code=200) if response.status_code == 200: + logger.info("获取github插件列表成功", LOG_COMMAND) return [StorePluginInfo(**detail) for detail in json.loads(response.text)] else: logger.warning( @@ -86,6 +86,7 @@ class StoreManager: url = f"{GITEE_RAW_URL}/plugins.json" response = await AsyncHttpx.get(url, check_status_code=200) if response.status_code == 200: + logger.info("获取gitee插件列表成功", LOG_COMMAND) return [StorePluginInfo(**detail) for detail in json.loads(response.text)] else: logger.warning( @@ -124,8 +125,7 @@ class StoreManager: list[StorePluginInfo]: 插件信息数据 """ plugins = await cls.get_github_plugins() or await cls.get_gitee_plugins() - # extra_plugins = await cls.get_extra_plugins() - extra_plugins = [] + extra_plugins = await cls.get_extra_plugins() return [*plugins, *extra_plugins] @classmethod @@ -232,13 +232,12 @@ class StoreManager: logger.info(f"正在安装插件 {plugin_key}...", LOG_COMMAND) download_type = "GITHUB" try: - # await cls.install_plugin_with_repo( - # plugin_info.github_url, - # plugin_info.module_path, - # plugin_info.is_dir, - # is_external, - # ) - pass + await cls.install_plugin_with_repo( + plugin_info.github_url, + plugin_info.module_path, + plugin_info.is_dir, + is_external, + ) except Exception as e: download_type = "GITEE" logger.error(f"GITHUB 插件 {plugin_key} 更新失败", LOG_COMMAND, e=e) 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 acff6356..c27231dd 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 @@ -22,9 +22,9 @@ router = APIRouter(prefix="/store") async def _() -> Result[dict]: try: require("plugin_store") - from zhenxun.builtin_plugins.plugin_store import ShopManage + from zhenxun.builtin_plugins.plugin_store import StoreManager - data = await ShopManage.get_data() + data = await StoreManager.get_data() plugin_list = [ {**data[name].to_dict(), "name": name, "id": idx} for idx, name in enumerate(data) @@ -48,9 +48,9 @@ async def _() -> Result[dict]: async def _(param: PluginIr) -> Result: try: require("plugin_store") - from zhenxun.builtin_plugins.plugin_store import ShopManage + from zhenxun.builtin_plugins.plugin_store import StoreManager - result = await ShopManage.add_plugin(param.id) # type: ignore + result = await StoreManager.add_plugin(param.id) # type: ignore return Result.ok(info=result) except Exception as e: return Result.fail(f"安装插件失败: {type(e)}: {e}") @@ -66,9 +66,9 @@ async def _(param: PluginIr) -> Result: async def _(param: PluginIr) -> Result: try: require("plugin_store") - from zhenxun.builtin_plugins.plugin_store import ShopManage + from zhenxun.builtin_plugins.plugin_store import StoreManager - result = await ShopManage.update_plugin(param.id) # type: ignore + result = await StoreManager.update_plugin(param.id) # type: ignore return Result.ok(info=result) except Exception as e: return Result.fail(f"更新插件失败: {type(e)}: {e}") @@ -84,9 +84,9 @@ async def _(param: PluginIr) -> Result: async def _(param: PluginIr) -> Result: try: require("plugin_store") - from zhenxun.builtin_plugins.plugin_store import ShopManage + from zhenxun.builtin_plugins.plugin_store import StoreManager - result = await ShopManage.remove_plugin(param.id) # type: ignore + result = await StoreManager.remove_plugin(param.id) # type: ignore return Result.ok(info=result) except Exception as e: return Result.fail(f"移除插件失败: {type(e)}: {e}")