refactor: 推进后端分层架构治理

This commit is contained in:
jxxghp
2026-08-18 00:29:14 +08:00
parent 5d0bacabd5
commit 5128ae9e1e
363 changed files with 34179 additions and 6019 deletions
+14 -9
View File
@@ -1,6 +1,11 @@
from typing import Any, Dict, Generator, List, Optional, Tuple, Union
from app import schemas
from app.schemas.dashboard import Statistic as _SchemaStatistic
from app.schemas.mediaserver import MediaServerItem as _SchemaMediaServerItem
from app.schemas.mediaserver import MediaServerLibrary as _SchemaMediaServerLibrary
from app.schemas.mediaserver import MediaServerPlayItem as _SchemaMediaServerPlayItem
from app.schemas.mediaserver import MediaServerSeasonInfo as _SchemaMediaServerSeasonInfo
from app.schemas.mediaserver import WebhookEventInfo as _SchemaWebhookEventInfo
from app.runtime.log import logger
from app.modules._base import _MediaServerModuleBase
from app.modules.emby.emby import Emby
@@ -50,7 +55,7 @@ class EmbyModule(_MediaServerModuleBase[Emby]):
def init_setting(self) -> Tuple[str, Union[str, bool]]:
pass
def webhook_parser(self, body: Any, form: Any, args: Any) -> Optional[schemas.WebhookEventInfo]:
def webhook_parser(self, body: Any, form: Any, args: Any) -> Optional[_SchemaWebhookEventInfo]:
"""
解析Webhook报文体
:param body: 请求体
@@ -75,7 +80,7 @@ class EmbyModule(_MediaServerModuleBase[Emby]):
return result
return None
def media_statistic(self, server: Optional[str] = None) -> Optional[List[schemas.Statistic]]:
def media_statistic(self, server: Optional[str] = None) -> Optional[List[_SchemaStatistic]]:
"""
媒体数量统计
"""
@@ -97,7 +102,7 @@ class EmbyModule(_MediaServerModuleBase[Emby]):
def mediaserver_librarys(self, server: str,
username: Optional[str] = None,
hidden: Optional[bool] = False) -> Optional[List[schemas.MediaServerLibrary]]:
hidden: Optional[bool] = False) -> Optional[List[_SchemaMediaServerLibrary]]:
"""
媒体库列表
"""
@@ -136,7 +141,7 @@ class EmbyModule(_MediaServerModuleBase[Emby]):
return server_obj.get_items_count(library_id)
return None
def mediaserver_iteminfo(self, server: str, item_id: str) -> Optional[schemas.MediaServerItem]:
def mediaserver_iteminfo(self, server: str, item_id: str) -> Optional[_SchemaMediaServerItem]:
"""
媒体库项目详情
"""
@@ -146,7 +151,7 @@ class EmbyModule(_MediaServerModuleBase[Emby]):
return None
def mediaserver_tv_episodes(self, server: str,
item_id: Union[str, int]) -> Optional[List[schemas.MediaServerSeasonInfo]]:
item_id: Union[str, int]) -> Optional[List[_SchemaMediaServerSeasonInfo]]:
"""
获取剧集信息
"""
@@ -156,13 +161,13 @@ class EmbyModule(_MediaServerModuleBase[Emby]):
_, seasoninfo = server_obj.get_tv_episodes(item_id=item_id)
if not seasoninfo:
return []
return [schemas.MediaServerSeasonInfo(
return [_SchemaMediaServerSeasonInfo(
season=season,
episodes=episodes
) for season, episodes in seasoninfo.items()]
def mediaserver_playing(self, server: str, count: Optional[int] = 20,
username: Optional[str] = None) -> Optional[List[schemas.MediaServerPlayItem]]:
username: Optional[str] = None) -> Optional[List[_SchemaMediaServerPlayItem]]:
"""
获取媒体服务器正在播放信息
"""
@@ -196,7 +201,7 @@ class EmbyModule(_MediaServerModuleBase[Emby]):
return server_obj.get_season_episode_ids(str(item_id), season)
def mediaserver_latest(self, server: Optional[str] = None, count: Optional[int] = 20,
username: Optional[str] = None) -> Optional[List[schemas.MediaServerPlayItem]]:
username: Optional[str] = None) -> Optional[List[_SchemaMediaServerPlayItem]]:
"""
获取媒体服务器最新入库条目
"""