refactor(chain): type download and media server ports

This commit is contained in:
jxxghp
2026-08-28 07:47:37 +08:00
parent c3f115d4fb
commit 5fb62108ab
25 changed files with 1262 additions and 331 deletions
+8 -8
View File
@@ -29,6 +29,12 @@ class MediaServerOper(DbOper):
if hasattr(MediaServerItem, k) and k != "id"
}
@staticmethod
def _contains_season(item: MediaServerItem, season: int) -> bool:
"""兼容 JSON 往返后变为字符串的 seasoninfo 键。"""
seasoninfo = item.seasoninfo or {}
return season in seasoninfo or str(season) in seasoninfo
def add(self, **kwargs) -> bool:
"""
新增媒体服务器数据
@@ -132,10 +138,7 @@ class MediaServerOper(DbOper):
if kwargs.get("season") is not None:
# 判断季是否存在
if not item.seasoninfo:
return None
seasoninfo = item.seasoninfo or {}
if kwargs.get("season") not in seasoninfo.keys():
if not self._contains_season(item, kwargs["season"]):
return None
return item
@@ -169,10 +172,7 @@ class MediaServerOper(DbOper):
if kwargs.get("season") is not None:
# 判断季是否存在
if not item.seasoninfo:
return None
seasoninfo = item.seasoninfo or {}
if kwargs.get("season") not in seasoninfo.keys():
if not self._contains_season(item, kwargs["season"]):
return None
return item