diff --git a/backend/src/module/api/bangumi.py b/backend/src/module/api/bangumi.py index b0e1deb5..3ddd62b0 100644 --- a/backend/src/module/api/bangumi.py +++ b/backend/src/module/api/bangumi.py @@ -116,6 +116,16 @@ async def refresh_poster(): resp = manager.refresh_poster() return u_response(resp) +@router.get( + path="/refresh/poster/{bangumi_id}", + response_model=APIResponse, + dependencies=[Depends(get_current_user)], +) +async def refresh_poster(bangumi_id: int): + with TorrentManager() as manager: + resp = manager.refind_poster(bangumi_id) + return u_response(resp) + @router.get( "/reset/all", response_model=APIResponse, dependencies=[Depends(get_current_user)] diff --git a/backend/src/module/manager/torrent.py b/backend/src/module/manager/torrent.py index 42ab01ef..cfe8d4a3 100644 --- a/backend/src/module/manager/torrent.py +++ b/backend/src/module/manager/torrent.py @@ -143,6 +143,17 @@ class TorrentManager(Database): msg_zh="刷新海报链接成功。", ) + def refind_poster(self, bangumi_id: int): + bangumi = self.bangumi.search_id(bangumi_id) + TitleParser().tmdb_poster_parser(bangumi) + self.bangumi.update(bangumi) + return ResponseModel( + status_code=200, + status=True, + msg_en="Refresh poster link successfully.", + msg_zh="刷新海报链接成功。", + ) + def search_all_bangumi(self): datas = self.bangumi.search_all() if not datas: