feat: 账号健康状态、统一组件逻辑

This commit is contained in:
rd
2025-07-04 14:05:01 +08:00
parent 954e4bc308
commit 1d52fda0cd
37 changed files with 1362 additions and 571 deletions

View File

@ -39,7 +39,7 @@
已添加<span class="count">{{ checkColumns.length }}</span>
</span>
<div class="checked-list">
<div v-for="(groupName, index) in requiredGroupNames" :key="index" class="checked-item">
<div v-for="(groupName, index) in requiredGroupNames" :key="index" class="checked-item !cursor-default">
<div class="flex items-center">
<img :src="icon1" alt="icon" class="mr-8px" width="16" height="16" />
<span>{{ groupName }}</span>
@ -117,48 +117,13 @@ const close = () => {
};
const initData = async () => {
const data = {
selected_columns: [],
groups: [
{
label: '基础信息',
is_require: 1,
columns: [
{ label: '账号名称', value: 'account_name', is_require: 1 },
{ label: '项目分组', value: 'project_group', is_require: 1 },
{ label: '状态', value: 'status', is_require: 1 },
{ label: '运营人员', value: 'operator', is_require: 1 },
{ label: 'AI评价', value: 'ai_score', is_require: 1 },
],
},
{
label: '分析数据',
is_require: 0,
columns: [
{ label: '粉丝量', value: 'fans', is_require: 0 },
{ label: '总赞藏数', value: 'total_likes', is_require: 0 },
{ label: '观看量', value: 'views', is_require: 0 },
{ label: '观看量环比', value: 'views_ratio', is_require: 0 },
{ label: '点赞量', value: 'likes', is_require: 0 },
{ label: '点赞量环比', value: 'likes_ratio', is_require: 0 },
{ label: '最新内容标题/日期', value: 'latest_content', is_require: 0 },
{ label: '最新作品观看数', value: 'latest_views', is_require: 0 },
{ label: '最新作品日增长', value: 'latest_growth', is_require: 0 },
{ label: '次新内容标题/日期', value: 'second_latest_content', is_require: 0 },
{ label: '次新作品观看数', value: 'second_latest_views', is_require: 0 },
{ label: '次新作品日增长', value: 'second_latest_growth', is_require: 0 },
],
},
],
};
// const { code, data } = await getCustomColumns({ type: props.type });
// if (code === 0) {
const { selected_columns, groups } = data;
dataSource.value = groups;
setDefaultCheckColumns(groups, selected_columns);
allColumns.value = groups.flatMap((group) => group.columns);
// }
const { code, data } = await getCustomColumns({ type: props.type });
if (code === 200) {
const { selected_columns, groups } = data;
dataSource.value = groups;
setDefaultCheckColumns(groups, selected_columns);
allColumns.value = groups.flatMap((group) => group.columns);
}
};
const isCheck = (option) => {