From 673596d8f9bbe93630f90a738a535c33a1dfb3d0 Mon Sep 17 00:00:00 2001 From: jxxghp Date: Thu, 6 Feb 2025 19:21:02 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E5=9C=A8=E5=AA=92=E4=BD=93?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E4=B8=AD=E6=B7=BB=E5=8A=A0=E5=AA=92=E4=BD=93?= =?UTF-8?q?ID=E5=89=8D=E7=BC=80=E5=92=8C=E5=AA=92=E4=BD=93ID?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/types.ts | 4 ++++ src/components/cards/MediaCard.vue | 4 +++- src/views/discover/MediaDetailView.vue | 9 ++++----- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/src/api/types.ts b/src/api/types.ts index 7a621b9b..b4d410ee 100644 --- a/src/api/types.ts +++ b/src/api/types.ts @@ -208,6 +208,10 @@ export interface MediaInfo { bangumi_id?: string // 合集ID collection_id?: number + // 其它媒体ID前缀 + mediaid_prefix?: string + // 其它媒体ID值 + media_id?: string // 媒体原语种 original_language?: string // 媒体原发行标题 diff --git a/src/components/cards/MediaCard.vue b/src/components/cards/MediaCard.vue index 32121da4..29ea0910 100644 --- a/src/components/cards/MediaCard.vue +++ b/src/components/cards/MediaCard.vue @@ -77,7 +77,8 @@ const observer = ref(null) function getMediaId() { if (props.media?.tmdb_id) return `tmdb:${props.media?.tmdb_id}` else if (props.media?.douban_id) return `douban:${props.media?.douban_id}` - else return `bangumi:${props.media?.bangumi_id}` + else if (props.media?.bangumi_id) return `bangumi:${props.media?.bangumi_id}` + else return `${props.media?.mediaid_prefix}:${props.media?.media_id}` } // 订阅弹窗选择的多季 @@ -146,6 +147,7 @@ async function addSubscribe(season = 0) { tmdbid: props.media?.tmdb_id, doubanid: props.media?.douban_id, bangumiid: props.media?.bangumi_id, + mediaid: props.media?.media_id ? `${props.media?.mediaid_prefix}:${props.media?.media_id}` : '', season, best_version, }) diff --git a/src/views/discover/MediaDetailView.vue b/src/views/discover/MediaDetailView.vue index 205c835b..65494e25 100644 --- a/src/views/discover/MediaDetailView.vue +++ b/src/views/discover/MediaDetailView.vue @@ -57,11 +57,10 @@ const subscribeId = ref() // 获得mediaid function getMediaId() { - return mediaDetail.value?.tmdb_id - ? `tmdb:${mediaDetail.value?.tmdb_id}` - : mediaDetail.value?.douban_id - ? `douban:${mediaDetail.value?.douban_id}` - : `bangumi:${mediaDetail.value?.bangumi_id}` + if (mediaDetail.value?.tmdb_id) return `tmdb:${mediaDetail.value?.tmdb_id}` + else if (mediaDetail.value?.douban_id) return `douban:${mediaDetail.value?.douban_id}` + else if (mediaDetail.value?.bangumi_id) return `bangumi:${mediaDetail.value?.bangumi_id}` + else return `${mediaDetail.value?.mediaid_prefix}:${mediaDetail.value?.media_id}` } // 调用API查询详情