Merge pull request #2901 from thsrite/v2

This commit is contained in:
jxxghp
2024-10-22 12:12:00 +08:00
committed by GitHub
3 changed files with 29 additions and 13 deletions

View File

@@ -486,9 +486,6 @@ class MediaChain(ChainBase, metaclass=Singleton):
content = __download_image(image_url)
# 保存图片文件到当前目录
__save_file(_fileitem=fileitem, _path=image_path, _content=content)
# 季文件夹刮完,判断你上级是不是剧集根目录
season_meta = MetaInfo(filepath.parent.name)
filepath = filepath.parent
# 判断当前目录是不是剧集根目录
if season_meta.name:
# 当前目录有名称生成tvshow nfo 和 tv图片

View File

@@ -901,7 +901,9 @@ class FileManagerModule(_ModuleBase):
# 目的操作对象
target_oper: StorageBase = self.__get_storage_oper(target_storage)
# 目标目录
target_diritem = target_oper.get_folder(new_file.parent)
target_diritem = target_oper.get_folder(
new_file.parent) if mediainfo.type == MediaType.MOVIE else target_oper.get_folder(
new_file.parent.parent)
# 目标文件
target_item = target_oper.get_item(new_file)
if target_item:

View File

@@ -128,6 +128,10 @@ class Monitor(metaclass=Singleton):
monitor_dirs = self.directoryhelper.get_download_dirs()
if not monitor_dirs:
return
# 启动定时服务进程
self._scheduler = BackgroundScheduler(timezone=settings.TZ)
for mon_dir in monitor_dirs:
if not mon_dir.library_path:
continue
@@ -141,9 +145,6 @@ class Monitor(metaclass=Singleton):
self.systemmessage.put(f"{target_path} 是监控目录 {mon_path} 的子目录,无法监控", title="目录监控")
continue
# 启动定时服务进程
self._scheduler = BackgroundScheduler(timezone=settings.TZ)
# 启动监控
if mon_dir.storage == "local":
# 本地目录监控
@@ -177,8 +178,12 @@ class Monitor(metaclass=Singleton):
'mon_path': mon_path
})
# 追加入库消息统一发送服务
self._scheduler.add_job(self.__send_msg, trigger='interval', seconds=15)
# 追加入库消息统一发送服务
self._scheduler.add_job(self.__send_msg, trigger='interval', seconds=15)
# 启动定时服务
if self._scheduler.get_jobs():
self._scheduler.print_jobs()
self._scheduler.start()
@staticmethod
def __choose_observer() -> Any:
@@ -439,6 +444,18 @@ class Monitor(metaclass=Singleton):
link=settings.MP_DOMAIN('#/history')
))
return
else:
# 转移成功
logger.info(f"{event_path.name} 入库成功:{transferinfo.target_diritem.path}")
# 新增转移成功历史记录
self.transferhis.add_success(
fileitem=file_item,
mode=dir_info.transfer_type,
download_hash=download_hash,
meta=file_meta,
mediainfo=mediainfo,
transferinfo=transferinfo
)
# TODO 汇总刮削
if dir_info.scraping:
@@ -475,12 +492,12 @@ class Monitor(metaclass=Singleton):
if media_files:
file_exists = False
for file in media_files:
if str(file_meta.path) == file.get("path"):
if str(transferinfo.fileitem.path) == file.get("path"):
file_exists = True
break
if not file_exists:
media_files.append({
"path": str(file_meta.path),
"path": str(transferinfo.fileitem.path),
"mediainfo": mediainfo,
"file_meta": file_meta,
"transferinfo": transferinfo
@@ -488,7 +505,7 @@ class Monitor(metaclass=Singleton):
else:
media_files = [
{
"path": str(file_meta.path),
"path": str(transferinfo.fileitem.path),
"mediainfo": mediainfo,
"file_meta": file_meta,
"transferinfo": transferinfo
@@ -502,7 +519,7 @@ class Monitor(metaclass=Singleton):
media_list = {
"files": [
{
"path": str(file_meta.path),
"path": str(transferinfo.fileitem.path),
"mediainfo": mediainfo,
"file_meta": file_meta,
"transferinfo": transferinfo