diff --git a/apps/admin-web/src/components/ArticlePublishStatus.vue b/apps/admin-web/src/components/ArticlePublishStatus.vue index 7ccbe1b..b29b78a 100644 --- a/apps/admin-web/src/components/ArticlePublishStatus.vue +++ b/apps/admin-web/src/components/ArticlePublishStatus.vue @@ -18,6 +18,7 @@ interface PublishPlatformEntry { accountName: string avatarUrl: string status: PublishRecordStatus + targetType: string } type PublishRecordStatus = 'success' | 'failed' | 'publishing' @@ -83,7 +84,11 @@ const platformEntries = computed(() => { const entries: PublishPlatformEntry[] = [] for (const record of publishRecordsQuery.data.value ?? []) { - const key = `${record.platform_id}:${record.platform_account_id}` + const targetType = String(record.target_type ?? 'platform_account') + const key = + targetType === 'enterprise_site' + ? `${targetType}:${record.target_connection_id ?? record.id}` + : `${record.platform_id}:${record.platform_account_id}` if (seen.has(key)) { continue } @@ -91,7 +96,7 @@ const platformEntries = computed(() => { const normalizedId = normalizePublishPlatformId(record.platform_id) const platform = platformMap.value.get(normalizedId) - const fallback = getPublishPlatformMeta(normalizedId) + const fallback = enterprisePlatformFallback(normalizedId) entries.push({ key, @@ -101,6 +106,7 @@ const platformEntries = computed(() => { accountName: record.platform_nickname || '--', avatarUrl: '', status: normalizePublishRecordStatus(record.status), + targetType, }) } @@ -236,6 +242,17 @@ function getAccountInitial(accountName: string): string { return trimmed.slice(0, 1).toUpperCase() } + +function enterprisePlatformFallback(platformId: string) { + if (platformId === 'pbootcms') { + return { + name: 'PBootCMS', + shortName: 'CMS', + accent: '#0f766e', + } + } + return getPublishPlatformMeta(platformId) +}