From cf3df1da754f2a520b9e4481758cee2d0f70a3ac Mon Sep 17 00:00:00 2001 From: EstrellaXD Date: Sun, 13 Aug 2023 15:02:57 +0800 Subject: [PATCH] change: rss_item key --- backend/src/module/api/rss.py | 2 +- backend/src/module/core/sub_thread.py | 2 +- backend/src/module/database/rss.py | 4 ++-- backend/src/module/manager/collector.py | 2 +- backend/src/module/models/rss.py | 8 ++++---- backend/src/module/rss/engine.py | 7 ++----- backend/src/test/test_rss_engine.py | 2 +- 7 files changed, 12 insertions(+), 15 deletions(-) diff --git a/backend/src/module/api/rss.py b/backend/src/module/api/rss.py index 65642e60..eaec955c 100644 --- a/backend/src/module/api/rss.py +++ b/backend/src/module/api/rss.py @@ -26,7 +26,7 @@ async def add_rss(rss: RSSItem, current_user=Depends(get_current_user)): if not current_user: raise UNAUTHORIZED with RSSEngine() as engine: - result = engine.add_rss(rss.url, rss.item_path, rss.combine) + result = engine.add_rss(rss.url, rss.name, rss.aggregate) return u_response(result) diff --git a/backend/src/module/core/sub_thread.py b/backend/src/module/core/sub_thread.py index 657162bd..4968a2c2 100644 --- a/backend/src/module/core/sub_thread.py +++ b/backend/src/module/core/sub_thread.py @@ -22,7 +22,7 @@ class RSSThread(ProgramStatus): while not self.stop_event.is_set(): with DownloadClient() as client, RSSEngine() as engine: # Analyse RSS - rss_list = engine.rss.search_combine() + rss_list = engine.rss.search_aggregate() for rss in rss_list: self.analyser.rss_to_data(rss, engine) # Run RSS Engine diff --git a/backend/src/module/database/rss.py b/backend/src/module/database/rss.py index 55de2e5c..c649bb16 100644 --- a/backend/src/module/database/rss.py +++ b/backend/src/module/database/rss.py @@ -53,9 +53,9 @@ class RSSDatabase: def search_active(self) -> list[RSSItem]: return self.session.exec(select(RSSItem).where(RSSItem.enabled)).all() - def search_combine(self) -> list[RSSItem]: + def search_aggregate(self) -> list[RSSItem]: return self.session.exec( - select(RSSItem).where(and_(RSSItem.combine, RSSItem.enabled)) + select(RSSItem).where(and_(RSSItem.aggregate, RSSItem.enabled)) ).all() def delete(self, _id: int): diff --git a/backend/src/module/manager/collector.py b/backend/src/module/manager/collector.py index 3d94a590..7027bacc 100644 --- a/backend/src/module/manager/collector.py +++ b/backend/src/module/manager/collector.py @@ -25,7 +25,7 @@ class SeasonCollector(DownloadClient): data.added = True data.eps_collect = True engine.add_rss( - rss_link=data.rss_link, name=data.official_title, combine=False + rss_link=data.rss_link, name=data.official_title, aggregate=False ) engine.bangumi.add(data) engine.refresh_rss(self) diff --git a/backend/src/module/models/rss.py b/backend/src/module/models/rss.py index 11f9941e..ce72325d 100644 --- a/backend/src/module/models/rss.py +++ b/backend/src/module/models/rss.py @@ -4,16 +4,16 @@ from typing import Optional class RSSItem(SQLModel, table=True): id: int = Field(default=None, primary_key=True, alias="id") - item_path: Optional[str] = Field(None, alias="item_path") + name: Optional[str] = Field(None, alias="name") url: str = Field("https://mikanani.me", alias="url") - combine: bool = Field(True, alias="combine") + aggregate: bool = Field(True, alias="aggregate") parser: str = Field("mikan", alias="parser") enabled: bool = Field(True, alias="enabled") class RSSUpdate(SQLModel): - item_path: Optional[str] = Field("example path", alias="item_path") + name: Optional[str] = Field(None, alias="name") url: Optional[str] = Field("https://mikanani.me", alias="url") - combine: Optional[bool] = Field(True, alias="combine") + aggregate: Optional[bool] = Field(True, alias="aggregate") parser: Optional[str] = Field("mikan", alias="parser") enabled: Optional[bool] = Field(True, alias="enabled") diff --git a/backend/src/module/rss/engine.py b/backend/src/module/rss/engine.py index 8ca03027..621f3eba 100644 --- a/backend/src/module/rss/engine.py +++ b/backend/src/module/rss/engine.py @@ -25,9 +25,6 @@ class RSSEngine(Database): torrent.rss_id = rss.id return torrents - def get_combine_rss(self) -> list[RSSItem]: - return self.rss.get_combine() - def get_rss_torrents(self, rss_id: int) -> list[Torrent]: rss = self.rss.search_id(rss_id) if rss: @@ -35,11 +32,11 @@ class RSSEngine(Database): else: return [] - def add_rss(self, rss_link: str, name: str | None = None, combine: bool = True): + def add_rss(self, rss_link: str, name: str | None = None, aggregate: bool = True): if not name: with RequestContent() as req: name = req.get_rss_title(rss_link) - rss_data = RSSItem(item_path=name, url=rss_link, combine=combine) + rss_data = RSSItem(name=name, url=rss_link, aggregate=aggregate) if self.rss.add(rss_data): return ResponseModel( status=True, diff --git a/backend/src/test/test_rss_engine.py b/backend/src/test/test_rss_engine.py index 4373f310..ec3b0b9f 100644 --- a/backend/src/test/test_rss_engine.py +++ b/backend/src/test/test_rss_engine.py @@ -7,7 +7,7 @@ def test_rss_engine(): with RSSEngine(e) as engine: rss_link = "https://mikanani.me/RSS/Bangumi?bangumiId=2353&subgroupid=552" - engine.add_rss(rss_link, combine=False) + engine.add_rss(rss_link, aggregate=False) result = engine.rss.search_active() assert result[1].item_path == "Mikan Project - 无职转生~到了异世界就拿出真本事~"