|
|
@@ -176,11 +176,12 @@ interface AccountGroup {
|
|
|
}
|
|
|
const accountGroups = ref<AccountGroup[]>([]);
|
|
|
|
|
|
-// 可用平台
|
|
|
+// 可用平台(只显示抖音、百家号、视频号和小红书)
|
|
|
const availablePlatforms = computed(() => {
|
|
|
- return Object.entries(PLATFORMS).map(([key, value]) => ({
|
|
|
- value: key as PlatformType,
|
|
|
- label: value.name,
|
|
|
+ const allowedPlatforms: PlatformType[] = ['douyin', 'baijiahao', 'weixin_video', 'xiaohongshu'];
|
|
|
+ return allowedPlatforms.map(key => ({
|
|
|
+ value: key,
|
|
|
+ label: PLATFORMS[key].name,
|
|
|
}));
|
|
|
});
|
|
|
|
|
|
@@ -232,22 +233,41 @@ const summaryData = ref<SummaryData>({
|
|
|
yesterdayFansIncrease: 0,
|
|
|
});
|
|
|
|
|
|
-// 统计卡片数据
|
|
|
+// 基于过滤后账号列表的汇总统计(只统计抖音、百家号、视频号和小红书)
|
|
|
+const filteredSummaryData = computed(() => {
|
|
|
+ const allowedPlatforms: PlatformType[] = ['douyin', 'baijiahao', 'weixin_video', 'xiaohongshu'];
|
|
|
+ const filtered = accounts.value.filter(a => allowedPlatforms.includes(a.platform));
|
|
|
+
|
|
|
+ return {
|
|
|
+ totalAccounts: filtered.length,
|
|
|
+ totalIncome: filtered.reduce((sum, a) => sum + (a.totalIncome || 0), 0),
|
|
|
+ yesterdayIncome: filtered.reduce((sum, a) => sum + (a.yesterdayIncome || 0), 0),
|
|
|
+ totalViews: filtered.reduce((sum, a) => sum + (a.totalViews || 0), 0),
|
|
|
+ yesterdayViews: filtered.reduce((sum, a) => sum + (a.yesterdayViews || 0), 0),
|
|
|
+ totalFans: filtered.reduce((sum, a) => sum + (a.fansCount || 0), 0),
|
|
|
+ yesterdayComments: filtered.reduce((sum, a) => sum + (a.yesterdayComments || 0), 0),
|
|
|
+ yesterdayLikes: filtered.reduce((sum, a) => sum + (a.yesterdayLikes || 0), 0),
|
|
|
+ yesterdayFansIncrease: filtered.reduce((sum, a) => sum + (a.yesterdayFansIncrease || 0), 0),
|
|
|
+ };
|
|
|
+});
|
|
|
+
|
|
|
+// 统计卡片数据(使用过滤后的汇总数据)
|
|
|
const summaryStats = computed(() => [
|
|
|
- { label: '账号总数', value: summaryData.value.totalAccounts },
|
|
|
- { label: '总收益(元)', value: summaryData.value.totalIncome },
|
|
|
- { label: '昨日收益(元)', value: summaryData.value.yesterdayIncome },
|
|
|
- { label: '总播放(阅读)', value: summaryData.value.totalViews },
|
|
|
- { label: '昨日播放(阅读)', value: summaryData.value.yesterdayViews },
|
|
|
- { label: '总粉丝', value: summaryData.value.totalFans, highlight: true },
|
|
|
- { label: '昨日评论', value: summaryData.value.yesterdayComments },
|
|
|
- { label: '昨日点赞', value: summaryData.value.yesterdayLikes },
|
|
|
- { label: '昨日涨粉', value: summaryData.value.yesterdayFansIncrease },
|
|
|
+ { label: '账号总数', value: filteredSummaryData.value.totalAccounts },
|
|
|
+ { label: '总收益(元)', value: filteredSummaryData.value.totalIncome },
|
|
|
+ { label: '昨日收益(元)', value: filteredSummaryData.value.yesterdayIncome },
|
|
|
+ { label: '总播放(阅读)', value: filteredSummaryData.value.totalViews },
|
|
|
+ { label: '昨日播放(阅读)', value: filteredSummaryData.value.yesterdayViews },
|
|
|
+ { label: '总粉丝', value: filteredSummaryData.value.totalFans, highlight: true },
|
|
|
+ { label: '昨日评论', value: filteredSummaryData.value.yesterdayComments },
|
|
|
+ { label: '昨日点赞', value: filteredSummaryData.value.yesterdayLikes },
|
|
|
+ { label: '昨日涨粉', value: filteredSummaryData.value.yesterdayFansIncrease },
|
|
|
]);
|
|
|
|
|
|
-// 过滤后的账号列表
|
|
|
+// 过滤后的账号列表(只显示抖音、百家号、视频号和小红书)
|
|
|
const filteredAccounts = computed(() => {
|
|
|
- let result = accounts.value;
|
|
|
+ const allowedPlatforms: PlatformType[] = ['douyin', 'baijiahao', 'weixin_video', 'xiaohongshu'];
|
|
|
+ let result = accounts.value.filter(a => allowedPlatforms.includes(a.platform));
|
|
|
|
|
|
if (selectedGroup.value) {
|
|
|
result = result.filter(a => a.groupId === selectedGroup.value);
|