This commit is contained in:
jxxghp
2024-12-27 18:36:49 +08:00
parent e3552d4086
commit 0eac7816bc
+20 -7
View File
@@ -255,6 +255,16 @@ class JobManager:
[task["state"] in ["completed"] for task in self._job_view[__mediaid__]["tasks"]] [task["state"] in ["completed"] for task in self._job_view[__mediaid__]["tasks"]]
) )
def get_success_tasks(self, media: MediaInfo, season: int = None) -> List[dict]:
"""
获取某项任务成功的任务
"""
__mediaid__ = self.__get_id(media=media, season=season)
with job_lock:
if __mediaid__ not in self._job_view:
return []
return [task for task in self._job_view[__mediaid__]["tasks"] if task["state"] == "completed"]
def count(self, media: MediaInfo, season: int = None) -> int: def count(self, media: MediaInfo, season: int = None) -> int:
""" """
获取某项任务总数 获取某项任务总数
@@ -387,13 +397,16 @@ class TransferChain(ChainBase, metaclass=Singleton):
if self.jobview.is_success(task.mediainfo, task.meta.begin_season): if self.jobview.is_success(task.mediainfo, task.meta.begin_season):
# 移动模式删除空目录 # 移动模式删除空目录
if transferinfo.transfer_type in ["move"]: if transferinfo.transfer_type in ["move"]:
# 下载器hash # 所有成功的业务
if task.download_hash: tasks = self.jobview.get_success_tasks(task.mediainfo, task.meta.begin_season)
if self.remove_torrents(task.download_hash, downloader=task.downloader): for t in tasks:
logger.info(f"移动模式删除种子成功:{task.download_hash} ") # 下载器hash
# 删除残留目录 if t.download_hash:
if task.fileitem: if self.remove_torrents(t.download_hash, downloader=t.downloader):
self.storagechain.delete_media_file(task.fileitem, delete_self=False) logger.info(f"移动模式删除种子成功:{t.download_hash} ")
# 删除残留目录
if t.fileitem:
self.storagechain.delete_media_file(t.fileitem, delete_self=False)
# 整理完成且有成功的任务时 # 整理完成且有成功的任务时
if self.jobview.is_finished(task.mediainfo, task.meta.begin_season): if self.jobview.is_finished(task.mediainfo, task.meta.begin_season):