diff --git a/app/chain/transfer.py b/app/chain/transfer.py index 44bc8aa1..206240b3 100644 --- a/app/chain/transfer.py +++ b/app/chain/transfer.py @@ -392,13 +392,19 @@ class TransferChain(ChainBase): download_hash = download_file.download_hash # 查询整理目标目录 - if not target_directory and not target_path: + if not target_directory: if src_match: # 按源目录匹配,以便找到更合适的目录配置 - target_directory = self.directoryhelper.get_dir(file_mediainfo, + target_directory = self.directoryhelper.get_dir(media=file_mediainfo, storage=file_item.storage, src_path=file_path, target_storage=target_storage) + elif target_path: + # 指定目标路径,`手动整理`场景下使用,忽略源目录匹配,使用指定目录匹配 + target_directory = self.directoryhelper.get_dir(media=file_mediainfo, + storage=target_storage, + target_path=target_path, + target_storage=target_storage) else: # 未指定目标路径,根据媒体信息获取目标目录 target_directory = self.directoryhelper.get_dir(file_mediainfo,