feat: 支持根据筛选条件批量编辑视频的下载状态 (#558)

This commit is contained in:
ᴀᴍᴛᴏᴀᴇʀ
2025-12-06 19:47:16 +08:00
committed by GitHub
parent 930660045f
commit f1703096fd
10 changed files with 761 additions and 114 deletions

View File

@@ -33,7 +33,7 @@ pub struct ResetVideoResponse {
}
#[derive(Serialize)]
pub struct ResetAllVideosResponse {
pub struct ResetFilteredVideosResponse {
pub resetted: bool,
pub resetted_videos_count: usize,
pub resetted_pages_count: usize,
@@ -46,6 +46,13 @@ pub struct UpdateVideoStatusResponse {
pub pages: Vec<PageInfo>,
}
#[derive(Serialize)]
pub struct UpdateFilteredVideoStatusResponse {
pub success: bool,
pub updated_videos_count: usize,
pub updated_pages_count: usize,
}
#[derive(FromQueryResult, Serialize)]
pub struct VideoSource {
pub id: i32,
@@ -75,6 +82,21 @@ pub struct PageInfo {
pub download_status: u32,
}
#[derive(Serialize, DerivePartialModel, FromQueryResult, Clone, Copy)]
#[sea_orm(entity = "video::Entity")]
pub struct SimpleVideoInfo {
pub id: i32,
pub download_status: u32,
}
#[derive(Serialize, DerivePartialModel, FromQueryResult, Clone, Copy)]
#[sea_orm(entity = "page::Entity")]
pub struct SimplePageInfo {
pub id: i32,
pub video_id: i32,
pub download_status: u32,
}
fn serde_video_download_status<S>(status: &u32, serializer: S) -> Result<S::Ok, S::Error>
where
S: serde::Serializer,