mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-08-21 16:23:34 +08:00
fix(agent): preserve episode lock on unchanged totals (#6271)
This commit is contained in:
@@ -213,6 +213,8 @@ class QuerySubscribesTool(MoviePilotTool):
|
||||
).model_dump(
|
||||
include=set(QUERY_SUBSCRIBE_OUTPUT_FIELDS), exclude_none=True
|
||||
)
|
||||
# 手动总集数是运行锁状态,不属于公共订阅写入 Schema,查询时直接从实体读取。
|
||||
payload["manual_total_episode"] = subscribe.manual_total_episode or 0
|
||||
payload["type"] = media_type_to_agent(payload.get("type"))
|
||||
if payload["type"] == "music" and not payload.get("music_type"):
|
||||
payload["music_type"] = "recording"
|
||||
|
||||
@@ -221,7 +221,7 @@ class UpdateSubscribeTool(MoviePilotTool):
|
||||
subscribe_dict["season"] = season
|
||||
|
||||
# 集数相关
|
||||
if total_episode is not None:
|
||||
if total_episode is not None and total_episode != subscribe.total_episode:
|
||||
subscribe_dict["total_episode"] = total_episode
|
||||
# 如果总集数增加,缺失集数也要相应增加
|
||||
if total_episode > (subscribe.total_episode or 0):
|
||||
@@ -346,6 +346,7 @@ class UpdateSubscribeTool(MoviePilotTool):
|
||||
"season": updated_subscribe.season,
|
||||
"state": updated_subscribe.state,
|
||||
"total_episode": updated_subscribe.total_episode,
|
||||
"manual_total_episode": updated_subscribe.manual_total_episode,
|
||||
"lack_episode": updated_subscribe.lack_episode,
|
||||
"start_episode": updated_subscribe.start_episode,
|
||||
"quality": updated_subscribe.quality,
|
||||
|
||||
Reference in New Issue
Block a user