Files
lingji-work-fe/src/views/property-marketing/media-account/account-detail/constants.ts

54 lines
1.8 KiB
TypeScript
Raw Normal View History

/*
* @Author: RenXiaoDong
* @Date: 2025-06-28 12:55:44
*/
2025-07-05 11:57:06 +08:00
import { CUSTOM_FIELDS, getPropPrefix } from '@/views/property-marketing/media-account/common_constants';
// 不足4个。就补两个null进去
2025-07-05 12:00:31 +08:00
export function groupArrayBySize<T extends { dataIndex: string; prop: string; title: string; tooltip: string }>(
2025-07-05 11:57:06 +08:00
fields: T[],
groupSize = 4,
dateType: string,
): T[][] {
const result: T[][] = [];
for (let i = 0; i < fields.length; i += groupSize) {
result.push(fields.slice(i, i + groupSize));
}
2025-07-05 12:00:31 +08:00
const labelPrefix = dateType === 'week' ? '近7天' : '近30天';
2025-07-05 11:57:06 +08:00
return result.map((item) => {
return item.map((item) => {
return {
...item,
dataIndex: `${getPropPrefix(dateType)}${item.dataIndex}`,
prop: `${getPropPrefix(dateType)}${item.prop}`,
2025-07-05 12:00:31 +08:00
title: `${labelPrefix}${item.title}`,
tooltip: `${labelPrefix}${item.tooltip}`,
2025-07-05 11:57:06 +08:00
};
});
});
}
export const getAccountInfoFields = (dateType: string, showMore: boolean) => {
const baseFields = [
[
{ title: '账号名称', dataIndex: 'name' },
{ title: '项目分组', dataIndex: 'group.name' },
{ title: '状态', dataIndex: 'status', type: 'status' },
{ title: '运营人员', dataIndex: 'operator_name' },
],
[
{ title: 'AI评价', dataIndex: 'ai_evaluation' },
2025-07-08 18:16:45 +08:00
{ title: '粉丝量', dataIndex: 'fans_number', tooltip: '账号的当前粉丝总数。' },
{
title: '总赞藏数',
dataIndex: 'like_collect_number',
tooltip: '账号所有内容获得的点赞数与收藏数总和,用于衡量历史内容的整体吸引力与认可度。',
},
2025-07-05 11:57:06 +08:00
],
];
const customFields = groupArrayBySize(CUSTOM_FIELDS, 4, dateType);
return showMore ? [...baseFields, ...customFields] : [...baseFields];
};