mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-09-07 08:26:53 +08:00
fix: 历史记录删除源文件后,不在订阅的文件列表中显示
This commit is contained in:
@@ -4,6 +4,7 @@ import jieba
|
|||||||
from fastapi import APIRouter, Depends
|
from fastapi import APIRouter, Depends
|
||||||
from sqlalchemy.ext.asyncio import AsyncSession
|
from sqlalchemy.ext.asyncio import AsyncSession
|
||||||
from sqlalchemy.orm import Session
|
from sqlalchemy.orm import Session
|
||||||
|
from pathlib import Path
|
||||||
|
|
||||||
from app import schemas
|
from app import schemas
|
||||||
from app.chain.storage import StorageChain
|
from app.chain.storage import StorageChain
|
||||||
@@ -11,7 +12,7 @@ from app.core.event import eventmanager
|
|||||||
from app.core.security import verify_token
|
from app.core.security import verify_token
|
||||||
from app.db import get_async_db, get_db
|
from app.db import get_async_db, get_db
|
||||||
from app.db.models import User
|
from app.db.models import User
|
||||||
from app.db.models.downloadhistory import DownloadHistory
|
from app.db.models.downloadhistory import DownloadHistory, DownloadFiles
|
||||||
from app.db.models.transferhistory import TransferHistory
|
from app.db.models.transferhistory import TransferHistory
|
||||||
from app.db.user_oper import get_current_active_superuser_async, get_current_active_superuser
|
from app.db.user_oper import get_current_active_superuser_async, get_current_active_superuser
|
||||||
from app.schemas.types import EventType
|
from app.schemas.types import EventType
|
||||||
@@ -98,6 +99,8 @@ def delete_transfer_history(history_in: schemas.TransferHistory,
|
|||||||
state = StorageChain().delete_media_file(src_fileitem)
|
state = StorageChain().delete_media_file(src_fileitem)
|
||||||
if not state:
|
if not state:
|
||||||
return schemas.Response(success=False, message=f"{src_fileitem.path} 删除失败")
|
return schemas.Response(success=False, message=f"{src_fileitem.path} 删除失败")
|
||||||
|
# 删除下载记录中关联的文件
|
||||||
|
DownloadFiles.delete_by_fullpath(db, Path(src_fileitem.path).as_posix())
|
||||||
# 发送事件
|
# 发送事件
|
||||||
eventmanager.send_event(
|
eventmanager.send_event(
|
||||||
EventType.DownloadFileDeleted,
|
EventType.DownloadFileDeleted,
|
||||||
|
|||||||
@@ -1668,7 +1668,7 @@ class SubscribeChain(ChainBase):
|
|||||||
if download_his:
|
if download_his:
|
||||||
for his in download_his:
|
for his in download_his:
|
||||||
# 查询下载文件
|
# 查询下载文件
|
||||||
files = downloadhis.get_files_by_hash(his.download_hash)
|
files = downloadhis.get_files_by_hash(his.download_hash, state=1)
|
||||||
if files:
|
if files:
|
||||||
for file in files:
|
for file in files:
|
||||||
# 识别文件名
|
# 识别文件名
|
||||||
|
|||||||
Reference in New Issue
Block a user