From 5108dbbeb5990562947d7247932b95eee3feb715 Mon Sep 17 00:00:00 2001 From: jxxghp Date: Wed, 17 Apr 2024 09:46:02 +0800 Subject: [PATCH] fix plugin install --- app/db/models/sitestatistic.py | 39 ++++++++++++++++++++++++++++++++++ app/helper/plugin.py | 2 +- 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 app/db/models/sitestatistic.py diff --git a/app/db/models/sitestatistic.py b/app/db/models/sitestatistic.py new file mode 100644 index 00000000..e4bbd54c --- /dev/null +++ b/app/db/models/sitestatistic.py @@ -0,0 +1,39 @@ +from datetime import datetime + +from sqlalchemy import Boolean, Column, Integer, String, Sequence +from sqlalchemy.orm import Session + +from app.db import db_query, db_update, Base + + +class SiteStatistic(Base): + """ + 站点统计表 + """ + id = Column(Integer, Sequence('id'), primary_key=True, index=True) + # 域名Key + domain = Column(String, index=True) + # 站点名 + name = Column(String, nullable=False) + # 成功次数 + success = Column(Integer) + # 失败次数 + fail = Column(Integer) + # 平均耗时 秒 + seconds = Column(Integer) + # 耗时记录 Json + note = Column(String) + # 最后一次访问状态 0-成功 1-失败 + lst_state = Column(Integer) + # 最后访问时间 + lst_mod_date = Column(String, default=datetime.now().strftime("%Y-%m-%d %H:%M:%S")) + + @staticmethod + @db_query + def get_by_domain(db: Session, domain: str): + return db.query(SiteStatistic).filter(SiteStatistic.domain == domain).first() + + @staticmethod + @db_update + def reset(db: Session): + db.query(SiteStatistic).delete() diff --git a/app/helper/plugin.py b/app/helper/plugin.py index ea87d143..4bcc2c92 100644 --- a/app/helper/plugin.py +++ b/app/helper/plugin.py @@ -130,7 +130,7 @@ class PluginHelper(metaclass=Singleton): """ 获取插件的文件列表 """ - file_api = f"https://api.github.com/repos/{user}/{repo}/contents/plugins/{_p.lower()}" + file_api = f"https://api.github.com/repos/{user}/{repo}/contents/plugins/{_p}" r = RequestUtils(proxies=settings.PROXY, headers=settings.GITHUB_HEADERS, timeout=30).get_res(file_api) if r is None: return None, "连接仓库失败"