mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-09-05 23:47:41 +08:00
fix 目录监控汇总消息发送 && 剧集刮削
This commit is contained in:
@@ -486,9 +486,6 @@ class MediaChain(ChainBase, metaclass=Singleton):
|
|||||||
content = __download_image(image_url)
|
content = __download_image(image_url)
|
||||||
# 保存图片文件到当前目录
|
# 保存图片文件到当前目录
|
||||||
__save_file(_fileitem=fileitem, _path=image_path, _content=content)
|
__save_file(_fileitem=fileitem, _path=image_path, _content=content)
|
||||||
# 季文件夹刮完,判断你上级是不是剧集根目录
|
|
||||||
season_meta = MetaInfo(filepath.parent.name)
|
|
||||||
filepath = filepath.parent
|
|
||||||
# 判断当前目录是不是剧集根目录
|
# 判断当前目录是不是剧集根目录
|
||||||
if season_meta.name:
|
if season_meta.name:
|
||||||
# 当前目录有名称,生成tvshow nfo 和 tv图片
|
# 当前目录有名称,生成tvshow nfo 和 tv图片
|
||||||
|
|||||||
@@ -901,7 +901,9 @@ class FileManagerModule(_ModuleBase):
|
|||||||
# 目的操作对象
|
# 目的操作对象
|
||||||
target_oper: StorageBase = self.__get_storage_oper(target_storage)
|
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)
|
target_item = target_oper.get_item(new_file)
|
||||||
if target_item:
|
if target_item:
|
||||||
|
|||||||
+26
-9
@@ -128,6 +128,10 @@ class Monitor(metaclass=Singleton):
|
|||||||
monitor_dirs = self.directoryhelper.get_download_dirs()
|
monitor_dirs = self.directoryhelper.get_download_dirs()
|
||||||
if not monitor_dirs:
|
if not monitor_dirs:
|
||||||
return
|
return
|
||||||
|
|
||||||
|
# 启动定时服务进程
|
||||||
|
self._scheduler = BackgroundScheduler(timezone=settings.TZ)
|
||||||
|
|
||||||
for mon_dir in monitor_dirs:
|
for mon_dir in monitor_dirs:
|
||||||
if not mon_dir.library_path:
|
if not mon_dir.library_path:
|
||||||
continue
|
continue
|
||||||
@@ -141,9 +145,6 @@ class Monitor(metaclass=Singleton):
|
|||||||
self.systemmessage.put(f"{target_path} 是监控目录 {mon_path} 的子目录,无法监控", title="目录监控")
|
self.systemmessage.put(f"{target_path} 是监控目录 {mon_path} 的子目录,无法监控", title="目录监控")
|
||||||
continue
|
continue
|
||||||
|
|
||||||
# 启动定时服务进程
|
|
||||||
self._scheduler = BackgroundScheduler(timezone=settings.TZ)
|
|
||||||
|
|
||||||
# 启动监控
|
# 启动监控
|
||||||
if mon_dir.storage == "local":
|
if mon_dir.storage == "local":
|
||||||
# 本地目录监控
|
# 本地目录监控
|
||||||
@@ -177,8 +178,12 @@ class Monitor(metaclass=Singleton):
|
|||||||
'mon_path': mon_path
|
'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
|
@staticmethod
|
||||||
def __choose_observer() -> Any:
|
def __choose_observer() -> Any:
|
||||||
@@ -439,6 +444,18 @@ class Monitor(metaclass=Singleton):
|
|||||||
link=settings.MP_DOMAIN('#/history')
|
link=settings.MP_DOMAIN('#/history')
|
||||||
))
|
))
|
||||||
return
|
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 汇总刮削
|
# TODO 汇总刮削
|
||||||
if dir_info.scraping:
|
if dir_info.scraping:
|
||||||
@@ -475,12 +492,12 @@ class Monitor(metaclass=Singleton):
|
|||||||
if media_files:
|
if media_files:
|
||||||
file_exists = False
|
file_exists = False
|
||||||
for file in media_files:
|
for file in media_files:
|
||||||
if str(file_meta.path) == file.get("path"):
|
if str(transferinfo.fileitem.path) == file.get("path"):
|
||||||
file_exists = True
|
file_exists = True
|
||||||
break
|
break
|
||||||
if not file_exists:
|
if not file_exists:
|
||||||
media_files.append({
|
media_files.append({
|
||||||
"path": str(file_meta.path),
|
"path": str(transferinfo.fileitem.path),
|
||||||
"mediainfo": mediainfo,
|
"mediainfo": mediainfo,
|
||||||
"file_meta": file_meta,
|
"file_meta": file_meta,
|
||||||
"transferinfo": transferinfo
|
"transferinfo": transferinfo
|
||||||
@@ -488,7 +505,7 @@ class Monitor(metaclass=Singleton):
|
|||||||
else:
|
else:
|
||||||
media_files = [
|
media_files = [
|
||||||
{
|
{
|
||||||
"path": str(file_meta.path),
|
"path": str(transferinfo.fileitem.path),
|
||||||
"mediainfo": mediainfo,
|
"mediainfo": mediainfo,
|
||||||
"file_meta": file_meta,
|
"file_meta": file_meta,
|
||||||
"transferinfo": transferinfo
|
"transferinfo": transferinfo
|
||||||
@@ -502,7 +519,7 @@ class Monitor(metaclass=Singleton):
|
|||||||
media_list = {
|
media_list = {
|
||||||
"files": [
|
"files": [
|
||||||
{
|
{
|
||||||
"path": str(file_meta.path),
|
"path": str(transferinfo.fileitem.path),
|
||||||
"mediainfo": mediainfo,
|
"mediainfo": mediainfo,
|
||||||
"file_meta": file_meta,
|
"file_meta": file_meta,
|
||||||
"transferinfo": transferinfo
|
"transferinfo": transferinfo
|
||||||
|
|||||||
Reference in New Issue
Block a user