|
@@ -1,14 +1,10 @@
|
|
|
-import WidthEllipsis from "@/components/widthEllipsis"
|
|
|
import { Statistic } from "antd"
|
|
|
import React from "react"
|
|
|
import style from './index.less'
|
|
|
|
|
|
-function columns12(): { label: string, fieldSHow?: { label: string, saveField: string, defaultValue: any[], data: any[] }, data: any[] }[] {
|
|
|
+function columns12(gameType: any): { label: string, fieldSHow?: { label: string, saveField: string, defaultValue: any[], data: any[] }, data: any[] }[] {
|
|
|
|
|
|
let defaultValue = [ // 默认展示字段
|
|
|
- // { label: '创角人数', key: 'ffcjrs', type: '付费趋势' },
|
|
|
- // { label: '创角数量', key: 'ffcjsl', type: '付费趋势' },
|
|
|
- // { label: '活跃人数', key: 'ffhyrs', type: '付费趋势' },
|
|
|
{ label: '充值人数', key: 'rechargeCount', type: '付费趋势' },
|
|
|
{ label: '充值金额', key: 'rechargeMoney', type: '付费趋势' },
|
|
|
{ label: '增', key: 'addPayBack', type: '付费趋势' },
|
|
@@ -27,139 +23,180 @@ function columns12(): { label: string, fieldSHow?: { label: string, saveField: s
|
|
|
{
|
|
|
label: '推广账号信息',
|
|
|
data: [
|
|
|
- { title: '推广账号名称', dataIndex: 'accountName', key: 'accountName', label: '推广账号信息', align: 'center', width: 95, default: 1 },
|
|
|
- { title: '推广账号ID', dataIndex: 'accountId', key: 'accountId', label: '推广账号信息', align: 'center', width: 70, default: 2 },
|
|
|
- { title: '推广账号类型', dataIndex: '3', key: '3', label: '推广账号信息', align: 'center', width: 70, default: 3 },
|
|
|
{
|
|
|
- title: '投放渠道', dataIndex: 'putAgent', key: 'putAgent', label: '推广账号信息', align: 'center', width: 130, default: 4,
|
|
|
- render: (a: string, b: any) => (<div style={{ minHeight: 60, display: 'flex', alignItems: 'center' }}>{a}</div>)
|
|
|
+ title: '推广账号', dataIndex: 'accountId', key: 'accountId', label: '推广账号信息', align: 'center', width: 70, default: 1,
|
|
|
+ render: (a: any) => (<span>{a || '--'}</span>)
|
|
|
},
|
|
|
- { title: '推广状态', dataIndex: 'promoteStatus', key: 'promoteStatus', label: '推广账号信息', align: 'center', width: 70, default: 5 },
|
|
|
- { title: '充值模板', dataIndex: '6', key: '6', label: '推广账号信息', align: 'center', width: 70, default: 6 },
|
|
|
+ {
|
|
|
+ title: '投放渠道', dataIndex: 'agentName', key: 'agentName', label: '推广账号信息', align: 'center', width: 130, default: 2,
|
|
|
+ render: (a: string, b: any) => (<span>{a || '--'}</span>)
|
|
|
+ }
|
|
|
]
|
|
|
},
|
|
|
{
|
|
|
label: '业务人员信息',
|
|
|
data: [
|
|
|
- { title: '投手', dataIndex: 'sysUserName', key: 'sysUserName', label: '业务人员信息', align: 'center', width: 70, default: 7 },
|
|
|
- { title: '运营', dataIndex: '8', key: '8', label: '业务人员信息', align: 'center', width: 70, default: 8 },
|
|
|
- { title: '项目组', dataIndex: '9', key: '9', label: '业务人员信息', align: 'center', width: 70, default: 9 },
|
|
|
- { title: '期数', dataIndex: '10', key: '10', label: '业务人员信息', align: 'center', width: 70, default: 10 }
|
|
|
+ { title: '投手', dataIndex: 'sysUserName', key: 'sysUserName', label: '业务人员信息', align: 'center', width: 70, default: 3, render: (a: any) => (<span>{a || '--'}</span>) }
|
|
|
]
|
|
|
},
|
|
|
{
|
|
|
label: '推广内容信息',
|
|
|
data: [
|
|
|
- { title: '推广游戏CP名称', dataIndex: 'cpName', key: 'cpName', label: '推广内容信息', align: 'center', width: 70, default: 11 },
|
|
|
- { title: '推广游戏名称', dataIndex: 'gameName', key: 'gameName', label: '推广内容信息', align: 'center', width: 70, default: 12 },
|
|
|
- { title: '推广游戏应用类型', dataIndex: 'gameType', key: 'gameType', label: '推广内容信息', align: 'center', width: 70, default: 13 },
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- label: '消耗时间',
|
|
|
- data: [
|
|
|
- { title: '消耗时间(小时)', dataIndex: '14', key: '14', label: '消耗时间', align: 'center', width: 110, default: 14 },
|
|
|
- { title: '消耗时间(天)', dataIndex: '15', key: '15', label: '消耗时间', align: 'center', width: 110, default: 15 },
|
|
|
+ { title: '推广游戏CP名称', dataIndex: 'cpName', key: 'cpName', label: '推广内容信息', align: 'center', width: 70, default: 4, render: (a: any) => (<span>{a || '--'}</span>) },
|
|
|
+ { title: '推广游戏名称', dataIndex: 'gameName', key: 'gameName', label: '推广内容信息', align: 'center', width: 70, default: 5, render: (a: any) => (<span>{a || '--'}</span>) },
|
|
|
+ {
|
|
|
+ title: '推广游戏应用类型', dataIndex: 'gameType', key: 'gameType', label: '推广内容信息', align: 'center', width: 70, default: 6, render: (a: string) => {
|
|
|
+ if (a) {
|
|
|
+ let one = a.charAt(0)
|
|
|
+ switch(one) {
|
|
|
+ case '3':
|
|
|
+ return 'Android'
|
|
|
+ case '4':
|
|
|
+ return 'IOS'
|
|
|
+ case '5':
|
|
|
+ return 'H5'
|
|
|
+ case '6':
|
|
|
+ return '小程序'
|
|
|
+ default:
|
|
|
+ return gameType[a] || a || '--'
|
|
|
+ }
|
|
|
+ } else return '--'
|
|
|
+ }
|
|
|
+ },
|
|
|
]
|
|
|
},
|
|
|
{
|
|
|
label: '消耗',
|
|
|
data: [
|
|
|
- { title: '消耗', dataIndex: 'cost', key: 'cost', label: '消耗', align: 'center', width: 70, default: 16 },
|
|
|
- { title: '赔付金', dataIndex: 'costBack', key: 'costBack', label: '消耗', align: 'center', width: 90, default: 17 },
|
|
|
- { title: '实际消耗', dataIndex: 'costReal', key: 'costReal', label: '消耗', align: 'center', width: 90, default: 18 },
|
|
|
- { title: '推广计划数量', dataIndex: 'adPlanCount', key: 'adPlanCount', label: '消耗', align: 'center', width: 90, default: 19 },
|
|
|
- { title: '推广广告数量', dataIndex: 'adCount', key: 'adCount', label: '消耗', align: 'center', width: 90, default: 20 },
|
|
|
+ { title: '消耗', dataIndex: 'cost', key: 'cost', label: '消耗', align: 'center', width: 70, default: 7, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ { title: '推广计划数量', dataIndex: 'adPlanCount', key: 'adPlanCount', label: '消耗', align: 'center', width: 90, default: 8, sorter: true, render: (a: any) => (<span>{a || '--'}</span>) }
|
|
|
]
|
|
|
},
|
|
|
{
|
|
|
label: '广告曝光数据',
|
|
|
data: [
|
|
|
- { title: '曝光量', dataIndex: 'viewCount', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '点击量', dataIndex: 'clickCount', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '转化量', dataIndex: 'convertCount', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '转化率', dataIndex: 'convertRate', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '平均转化成本', dataIndex: 'avgConvertCost', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '深度转化量', dataIndex: 'deepConvertCount', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '深度转化成本', dataIndex: 'deepConvertCost', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '深度转化率', dataIndex: 'deepConvertRate', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '千次曝光成本', dataIndex: 'thousandViewCost', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '平均点击均价', dataIndex: 'avgClickCost', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '应用下载开始量', dataIndex: 'appDownloadCount', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '应用下载开始成本', dataIndex: 'appDownloadCost', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '应用下载开始率', dataIndex: 'appDownloadRate', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '应用下载完成量', dataIndex: 'downloadFinish', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '应用下载完成成本', dataIndex: 'downloadFinishCost', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '应用下载完成率', dataIndex: 'downloadFinishRate', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '应用安装量', dataIndex: 'appInstallCount', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '应用安装成本', dataIndex: 'appInstallCost', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '应用安装完成率', dataIndex: 'appInstallRate', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '应用激活量', dataIndex: 'appActiveCount', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '应用激活成本', dataIndex: 'appActiveCost', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
- { title: '应用激活率', dataIndex: 'appActiveRate', label: '广告曝光数据', align: 'center', width: 70 },
|
|
|
+ { title: '曝光量', dataIndex: 'viewCount', label: '广告曝光数据', align: 'center', width: 70, default: 9, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '点击量', dataIndex: 'clickCount', label: '广告曝光数据', align: 'center', width: 70, default: 10, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '转化量', dataIndex: 'convertCount', label: '广告曝光数据', align: 'center', width: 70, default: 11, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ {
|
|
|
+ title: '转化率', dataIndex: 'convertRate', label: '广告曝光数据', align: 'center', width: 70, default: 12, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ { title: '平均转化成本', dataIndex: 'avgConvertCost', label: '广告曝光数据', align: 'center', width: 70, default: 13, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ { title: '深度转化量', dataIndex: 'deepConvertCount', label: '广告曝光数据', align: 'center', width: 70, default: 14, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '深度转化成本', dataIndex: 'deepConvertCost', label: '广告曝光数据', align: 'center', width: 70, default: 15, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ {
|
|
|
+ title: '深度转化率', dataIndex: 'deepConvertRate', label: '广告曝光数据', align: 'center', width: 70, default: 16, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ { title: '千次曝光成本', dataIndex: 'thousandViewCost', label: '广告曝光数据', align: 'center', width: 70, default: 17, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ { title: '平均点击均价', dataIndex: 'avgClickCost', label: '广告曝光数据', align: 'center', width: 70, default: 18, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ { title: '应用下载开始量', dataIndex: 'appDownloadCount', label: '广告曝光数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '应用下载开始成本', dataIndex: 'appDownloadCost', label: '广告曝光数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ {
|
|
|
+ title: '应用下载开始率', dataIndex: 'appDownloadRate', label: '广告曝光数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ { title: '应用下载完成量', dataIndex: 'downloadFinish', label: '广告曝光数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '应用下载完成成本', dataIndex: 'downloadFinishCost', label: '广告曝光数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ {
|
|
|
+ title: '应用下载完成率', dataIndex: 'downloadFinishRate', label: '广告曝光数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ { title: '应用安装量', dataIndex: 'appInstallCount', label: '广告曝光数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '应用安装成本', dataIndex: 'appInstallCost', label: '广告曝光数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ {
|
|
|
+ title: '应用安装完成率', dataIndex: 'appInstallRate', label: '广告曝光数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ { title: '应用激活量', dataIndex: 'appActiveCount', label: '广告曝光数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '应用激活成本', dataIndex: 'appActiveCost', label: '广告曝光数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ {
|
|
|
+ title: '应用激活率', dataIndex: 'appActiveRate', label: '广告曝光数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
]
|
|
|
},
|
|
|
{
|
|
|
label: '用户数据',
|
|
|
data: [
|
|
|
- { title: '注册人数', dataIndex: 'regUserCount', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '活跃用户人数', dataIndex: 'activeUserCount', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '创角人数', dataIndex: 'userCountOfCreateRole', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '首日创角人数', dataIndex: 'userCountOfFirstCreateRole', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '新用户累计创角人数', dataIndex: 'firstUserCountOfFirstCreateRole', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '创角量', dataIndex: 'createRoleCount', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '首日创角量', dataIndex: 'firstCreateRoleCount', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '新用户累计创角量', dataIndex: 'roleCountOfFirstUser', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '注册成本', dataIndex: 'regCost', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '首日创角成本', dataIndex: 'firstCreateRoleCost', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '新用户创角成本', dataIndex: 'firstUserCreateRoleCost', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '首日创角率', dataIndex: 'firstCreateRoleRate', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '新用户创角率', dataIndex: 'firstUserCreateRoleRate', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '游戏当日LTV', dataIndex: 'oneDayLTV', label: '用户数据', align: 'center', width: 70 },
|
|
|
- { title: '游戏当日广告变现ROI', dataIndex: 'firstRecoveryRate', label: '用户数据', align: 'center', width: 70 }
|
|
|
+ { title: '注册成本', dataIndex: 'regCost', label: '用户数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
]
|
|
|
},
|
|
|
{
|
|
|
label: '付费数据',
|
|
|
data: [
|
|
|
- { title: '首日新用户充值次数', dataIndex: 'firstUserRechargeCount', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '首日新用户充值人数', dataIndex: 'firstUserRechargeUser', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '首日新用户充值金额', dataIndex: 'firstUserRechargeMoney', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '老用户充值次数', dataIndex: 'oldUserRechargeCount', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '老用户充值人数', dataIndex: 'oldUserRechargeUser', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '老用户充值金额', dataIndex: 'oldUserRechargeMoney', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '账面充值次数', dataIndex: 'showRechargeCount', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '账面充值人数', dataIndex: 'showRechargeUser', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '账面充值金额', dataIndex: 'showRechargeMoney', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '新用户累计充值次数', dataIndex: 'newUserRechargeCount', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '新用户累计充值人数', dataIndex: 'newUserRechargeUser', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '新用户累计充值金额', dataIndex: 'newUserRechargeMoney', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '首日回收率', dataIndex: 'c16', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '买量回收率', dataIndex: 'buyRecoveryRate', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '毛利额', dataIndex: 'c19', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '3日ROI', dataIndex: 'threeDayROI', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '5日ROI', dataIndex: 'fiveDayROI', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '7日ROI', dataIndex: 'sevenDayROI', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '30日ROI', dataIndex: 'thirtyDayROI', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '60日ROI', dataIndex: 'sixtyDayROI', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '180日ROI', dataIndex: 'oneHundredAndEightyDayROI', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '1年ROI', dataIndex: 'oneYearROI', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '首日付费率', dataIndex: 'firstRechargeRate', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '买量用户付费率', dataIndex: 'buyUserRechargeRate', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '新用户付费比', dataIndex: 'newUserRechargeRate', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '活跃用户付费率', dataIndex: 'activeUserRechargeRate', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '首日客单价', dataIndex: 'avgFirstUserRecharge', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '买量客单价', dataIndex: 'avgBuyUserRecharge', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '账面客单价', dataIndex: 'avgShowUserRecharge', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '首日充值成本', dataIndex: 'firstRechargeCost', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '买量充值成本', dataIndex: 'buyUserRechargeCost', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '复充率', dataIndex: 'repeatRechargeRate', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '平均活跃付费率', dataIndex: 'avgActiveRechargeRate', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '新增注册ARPU', dataIndex: 'newRegARPU', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '活跃ARPPU', dataIndex: 'activeARPU', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '首日付费ARPU', dataIndex: 'firstRechargeARPU', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '当天付费ARPU', dataIndex: 'c48', label: '付费数据', align: 'center', width: 70 },
|
|
|
- { title: '账面ARPU', dataIndex: 'showRechargeARPU', label: '付费数据', align: 'center', width: 70 }
|
|
|
+ { title: '首日新用户充值次数', dataIndex: 'firstUserRechargeCount', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '首日新用户充值人数', dataIndex: 'firstUserRechargeUser', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '首日新用户充值金额', dataIndex: 'firstUserRechargeMoney', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ { title: '老用户充值次数', dataIndex: 'oldUserRechargeCount', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '老用户充值人数', dataIndex: 'oldUserRechargeUser', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '老用户充值金额', dataIndex: 'oldUserRechargeMoney', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ { title: '账面充值次数', dataIndex: 'showRechargeCount', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '账面充值人数', dataIndex: 'showRechargeUser', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '账面充值金额', dataIndex: 'showRechargeMoney', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ { title: '新用户累计充值次数', dataIndex: 'newUserRechargeCount', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '新用户累计充值人数', dataIndex: 'newUserRechargeUser', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '新用户累计充值金额', dataIndex: 'newUserRechargeMoney', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ {
|
|
|
+ title: '首日回收率', dataIndex: 'todayRecoveryRate', label: '付费数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '买量回收率', dataIndex: 'buyRecoveryRate', label: '付费数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ { title: '毛利额', dataIndex: 'grossMargin', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ {
|
|
|
+ title: '3日ROI', dataIndex: 'roiDay3', label: '付费数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '5日ROI', dataIndex: 'roiDay5', label: '付费数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '7日ROI', dataIndex: 'roiDay7', label: '付费数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '30日ROI', dataIndex: 'roiDay30', label: '付费数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '60日ROI', dataIndex: 'roiDay60', label: '付费数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '180日ROI', dataIndex: 'roiDay180', label: '付费数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '1年ROI', dataIndex: 'roiYear1', label: '付费数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '首日付费率', dataIndex: 'firstRechargeRate', label: '付费数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ {
|
|
|
+ title: '买量用户付费率', dataIndex: 'buyUserRechargeRate', label: '付费数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ { title: '新用户付费比', dataIndex: 'newUserRechargeRate', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '首日客单价', dataIndex: 'avgFirstUserRecharge', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ { title: '买量客单价', dataIndex: 'avgBuyUserRecharge', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ { title: '账面客单价', dataIndex: 'avgShowUserRecharge', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ { title: '首日充值成本', dataIndex: 'firstRechargeCost', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ { title: '买量充值成本', dataIndex: 'buyUserRechargeCost', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} /> },
|
|
|
+ {
|
|
|
+ title: '复充率', dataIndex: 'repeatRechargeRate', label: '付费数据', align: 'center', width: 70, sorter: true,
|
|
|
+ render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={a >= 1 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
|
|
|
+ },
|
|
|
+ { title: '新增注册ARPU', dataIndex: 'newRegARPU', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '首日付费ARPU', dataIndex: 'firstRechargeARPU', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '当天付费ARPU', dataIndex: 'todayRechargeArpu', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> },
|
|
|
+ { title: '账面ARPU', dataIndex: 'showRechargeARPU', label: '付费数据', align: 'center', width: 70, sorter: true, render: (a: string) => <Statistic value={a || 0} groupSeparator="" /> }
|
|
|
]
|
|
|
},
|
|
|
{
|
|
@@ -171,9 +208,6 @@ function columns12(): { label: string, fieldSHow?: { label: string, saveField: s
|
|
|
{
|
|
|
label: '付费趋势',
|
|
|
data: [
|
|
|
- // { label: '创角人数', key: 'ffcjrs', type: '付费趋势' },
|
|
|
- // { label: '创角数量', key: 'ffcjsl', type: '付费趋势' },
|
|
|
- // { label: '活跃人数', key: 'ffhyrs', type: '付费趋势' },
|
|
|
{ label: '充值人数', key: 'rechargeCount', type: '付费趋势' },
|
|
|
{ label: '充值金额', key: 'rechargeMoney', type: '付费趋势' },
|
|
|
{ label: '增', key: 'addPayBack', type: '付费趋势' },
|
|
@@ -181,28 +215,6 @@ function columns12(): { label: string, fieldSHow?: { label: string, saveField: s
|
|
|
{ label: '倍', key: 'newUserRechargeRate', type: '付费趋势' },
|
|
|
]
|
|
|
},
|
|
|
- {
|
|
|
- label: 'LTV数据',
|
|
|
- data: [
|
|
|
- { label: 'LTV', key: 'LTV', type: 'LTV数据' },
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- label: '留存分析',
|
|
|
- data: [
|
|
|
- { label: '活跃人数', key: 'rechargeUserRetentionRate', type: '留存分析' },
|
|
|
- { label: '留存率', key: 'regUserRetentionRate', type: '留存分析' },
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- label: '玩家90日激活数据',
|
|
|
- data: [
|
|
|
- { label: '创角人数', key: 'cjrs1', type: '玩家90日激活数据' },
|
|
|
- { label: '付费人数', key: 'ffrs1', type: '玩家90日激活数据' },
|
|
|
- { label: '创角比', key: 'cjb', type: '玩家90日激活数据' },
|
|
|
- { label: '付费比', key: 'ffb1', type: '玩家90日激活数据' },
|
|
|
- ]
|
|
|
- }
|
|
|
]
|
|
|
},
|
|
|
label: '时间区间跨度',
|
|
@@ -211,20 +223,21 @@ function columns12(): { label: string, fieldSHow?: { label: string, saveField: s
|
|
|
dataIndex: "D1",
|
|
|
label: "时间区间跨度",
|
|
|
width: 110,
|
|
|
+ default: 19,
|
|
|
render: (a: any, b: any) => {
|
|
|
if (newSelectFieldData?.length > 0) {
|
|
|
let data: any = {}
|
|
|
let keyS: string[] = newSelectFieldData?.map((item: any) => item.key)
|
|
|
switch (newSelectFieldData[0].type) {
|
|
|
case '付费趋势':
|
|
|
- if (b?.oneDayRechargeTrend) {
|
|
|
- data = b?.oneDayRechargeTrend
|
|
|
+ if (b?.rechargeTrendDay1) {
|
|
|
+ data = b?.rechargeTrendDay1
|
|
|
return <div className={style.dbox}>
|
|
|
- {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>人:<span>{data?.rechargeCount}</span></span>}
|
|
|
- {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
- {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.addPayBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.payBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.newUserRechargeRate}</span></span>}
|
|
|
+ {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>充人:<span>{data?.rechargeUserCount}</span></span>}
|
|
|
+ {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充金:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
+ {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.increase * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.back * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.multiples}</span></span>}
|
|
|
</div>
|
|
|
}
|
|
|
return '--'
|
|
@@ -237,20 +250,21 @@ function columns12(): { label: string, fieldSHow?: { label: string, saveField: s
|
|
|
dataIndex: "D3",
|
|
|
label: "时间区间跨度",
|
|
|
width: 110,
|
|
|
+ default: 20,
|
|
|
render: (a: any, b: any) => {
|
|
|
if (newSelectFieldData?.length > 0) {
|
|
|
let data: any = {}
|
|
|
let keyS: string[] = newSelectFieldData?.map((item: any) => item.key)
|
|
|
switch (newSelectFieldData[0].type) {
|
|
|
case '付费趋势':
|
|
|
- if (b?.threeDayRechargeTrend) {
|
|
|
- data = b?.threeDayRechargeTrend
|
|
|
+ if (b?.rechargeTrendDay3) {
|
|
|
+ data = b?.rechargeTrendDay3
|
|
|
return <div className={style.dbox}>
|
|
|
- {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>人:<span>{data?.rechargeCount}</span></span>}
|
|
|
- {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
- {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.addPayBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.payBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.newUserRechargeRate}</span></span>}
|
|
|
+ {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>充人:<span>{data?.rechargeUserCount}</span></span>}
|
|
|
+ {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充金:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
+ {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.increase * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.back * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.multiples}</span></span>}
|
|
|
</div>
|
|
|
}
|
|
|
return '--'
|
|
@@ -263,20 +277,21 @@ function columns12(): { label: string, fieldSHow?: { label: string, saveField: s
|
|
|
dataIndex: "D7",
|
|
|
label: "时间区间跨度",
|
|
|
width: 110,
|
|
|
+ default: 21,
|
|
|
render: (a: any, b: any) => {
|
|
|
if (newSelectFieldData?.length > 0) {
|
|
|
let data: any = {}
|
|
|
let keyS: string[] = newSelectFieldData?.map((item: any) => item.key)
|
|
|
switch (newSelectFieldData[0].type) {
|
|
|
case '付费趋势':
|
|
|
- if (b?.sevenDayRechargeTrend) {
|
|
|
- data = b?.sevenDayRechargeTrend
|
|
|
+ if (b?.rechargeTrendDay7) {
|
|
|
+ data = b?.rechargeTrendDay7
|
|
|
return <div className={style.dbox}>
|
|
|
- {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>人:<span>{data?.rechargeCount}</span></span>}
|
|
|
- {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
- {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.addPayBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.payBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.newUserRechargeRate}</span></span>}
|
|
|
+ {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>充人:<span>{data?.rechargeUserCount}</span></span>}
|
|
|
+ {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充金:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
+ {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.increase * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.back * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.multiples}</span></span>}
|
|
|
</div>
|
|
|
}
|
|
|
return '--'
|
|
@@ -289,20 +304,21 @@ function columns12(): { label: string, fieldSHow?: { label: string, saveField: s
|
|
|
dataIndex: "D15",
|
|
|
label: "时间区间跨度",
|
|
|
width: 110,
|
|
|
+ default: 22,
|
|
|
render: (a: any, b: any) => {
|
|
|
if (newSelectFieldData?.length > 0) {
|
|
|
let data: any = {}
|
|
|
let keyS: string[] = newSelectFieldData?.map((item: any) => item.key)
|
|
|
switch (newSelectFieldData[0].type) {
|
|
|
case '付费趋势':
|
|
|
- if (b?.fifteenDayRechargeTrend) {
|
|
|
- data = b?.fifteenDayRechargeTrend
|
|
|
+ if (b?.rechargeTrendDay15) {
|
|
|
+ data = b?.rechargeTrendDay15
|
|
|
return <div className={style.dbox}>
|
|
|
- {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>人:<span>{data?.rechargeCount}</span></span>}
|
|
|
- {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
- {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.addPayBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.payBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.newUserRechargeRate}</span></span>}
|
|
|
+ {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>充人:<span>{data?.rechargeUserCount}</span></span>}
|
|
|
+ {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充金:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
+ {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.increase * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.back * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.multiples}</span></span>}
|
|
|
</div>
|
|
|
}
|
|
|
return '--'
|
|
@@ -315,20 +331,21 @@ function columns12(): { label: string, fieldSHow?: { label: string, saveField: s
|
|
|
dataIndex: "M1",
|
|
|
label: "时间区间跨度",
|
|
|
width: 110,
|
|
|
+ default: 23,
|
|
|
render: (a: any, b: any) => {
|
|
|
if (newSelectFieldData?.length > 0) {
|
|
|
let data: any = {}
|
|
|
let keyS: string[] = newSelectFieldData?.map((item: any) => item.key)
|
|
|
switch (newSelectFieldData[0].type) {
|
|
|
case '付费趋势':
|
|
|
- if (b?.oneMonthRechargeTrend) {
|
|
|
- data = b?.oneMonthRechargeTrend
|
|
|
+ if (b?.rechargeTrendMonth1) {
|
|
|
+ data = b?.rechargeTrendMonth1
|
|
|
return <div className={style.dbox}>
|
|
|
- {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>人:<span>{data?.rechargeCount}</span></span>}
|
|
|
- {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
- {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.addPayBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.payBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.newUserRechargeRate}</span></span>}
|
|
|
+ {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>充人:<span>{data?.rechargeUserCount}</span></span>}
|
|
|
+ {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充金:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
+ {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.increase * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.back * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.multiples}</span></span>}
|
|
|
</div>
|
|
|
}
|
|
|
return '--'
|
|
@@ -341,20 +358,21 @@ function columns12(): { label: string, fieldSHow?: { label: string, saveField: s
|
|
|
dataIndex: "M2",
|
|
|
label: "时间区间跨度",
|
|
|
width: 110,
|
|
|
+ default: 24,
|
|
|
render: (a: any, b: any) => {
|
|
|
if (newSelectFieldData?.length > 0) {
|
|
|
let data: any = {}
|
|
|
let keyS: string[] = newSelectFieldData?.map((item: any) => item.key)
|
|
|
switch (newSelectFieldData[0].type) {
|
|
|
case '付费趋势':
|
|
|
- if (b?.twoMonthRechargeTrend) {
|
|
|
- data = b?.twoMonthRechargeTrend
|
|
|
+ if (b?.rechargeTrendMonth2) {
|
|
|
+ data = b?.rechargeTrendMonth2
|
|
|
return <div className={style.dbox}>
|
|
|
- {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>人:<span>{data?.rechargeCount}</span></span>}
|
|
|
- {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
- {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.addPayBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.payBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.newUserRechargeRate}</span></span>}
|
|
|
+ {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>充人:<span>{data?.rechargeUserCount}</span></span>}
|
|
|
+ {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充金:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
+ {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.increase * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.back * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.multiples}</span></span>}
|
|
|
</div>
|
|
|
}
|
|
|
return '--'
|
|
@@ -367,20 +385,21 @@ function columns12(): { label: string, fieldSHow?: { label: string, saveField: s
|
|
|
dataIndex: "M3",
|
|
|
label: "时间区间跨度",
|
|
|
width: 110,
|
|
|
+ default: 25,
|
|
|
render: (a: any, b: any) => {
|
|
|
if (newSelectFieldData?.length > 0) {
|
|
|
let data: any = {}
|
|
|
let keyS: string[] = newSelectFieldData?.map((item: any) => item.key)
|
|
|
switch (newSelectFieldData[0].type) {
|
|
|
case '付费趋势':
|
|
|
- if (b?.threeMonthRechargeTrend) {
|
|
|
- data = b?.threeMonthRechargeTrend
|
|
|
+ if (b?.rechargeTrendMonth3) {
|
|
|
+ data = b?.rechargeTrendMonth3
|
|
|
return <div className={style.dbox}>
|
|
|
- {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>人:<span>{data?.rechargeCount}</span></span>}
|
|
|
- {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
- {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.addPayBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.payBack * 100)?.toFixed(2)}%</span></span>}
|
|
|
- {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.newUserRechargeRate}</span></span>}
|
|
|
+ {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>充人:<span>{data?.rechargeUserCount}</span></span>}
|
|
|
+ {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充金:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
+ {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.increase * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.back * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.multiples}</span></span>}
|
|
|
</div>
|
|
|
}
|
|
|
return '--'
|
|
@@ -390,607 +409,34 @@ function columns12(): { label: string, fieldSHow?: { label: string, saveField: s
|
|
|
},
|
|
|
}, {
|
|
|
title: "总",
|
|
|
+ default: 26,
|
|
|
dataIndex: "total",
|
|
|
label: "时间区间跨度",
|
|
|
align: "center",
|
|
|
- width: 70
|
|
|
+ width: 110,
|
|
|
+ render: (a: any, b: any) => {
|
|
|
+ if (newSelectFieldData?.length > 0) {
|
|
|
+ let data: any = {}
|
|
|
+ let keyS: string[] = newSelectFieldData?.map((item: any) => item.key)
|
|
|
+ switch (newSelectFieldData[0].type) {
|
|
|
+ case '付费趋势':
|
|
|
+ if (b?.rechargeTrendTotal) {
|
|
|
+ data = b?.rechargeTrendTotal
|
|
|
+ return <div className={style.dbox}>
|
|
|
+ {keyS?.includes('rechargeCount') && <span style={{ color: '#d81b60', fontWeight: 600 }}>充人:<span>{data?.rechargeUserCount}</span></span>}
|
|
|
+ {keyS?.includes('rechargeMoney') && <span style={{ color: '#0f538a', fontWeight: 600 }}>充金:<span><Statistic value={data?.rechargeMoney || 0} valueStyle={{ color: '#0f538a', fontWeight: 600 }} /></span></span>}
|
|
|
+ {keyS?.includes('addPayBack') && <span style={{ color: 'rgb(12,130,16)', fontWeight: 600 }}>增:<span>{(data?.increase * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#ff5722', fontWeight: 600 }}>回:<span>{(data?.back * 100)?.toFixed(2)}%</span></span>}
|
|
|
+ {keyS?.includes('payBack') && <span style={{ color: '#d81b60', fontWeight: 600 }}>倍:<span>{data?.multiples}</span></span>}
|
|
|
+ </div>
|
|
|
+ }
|
|
|
+ return '--'
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return '--'
|
|
|
+ },
|
|
|
}]
|
|
|
- // label: 'D1-D30',
|
|
|
- // data: [{
|
|
|
- // title: "D1",
|
|
|
- // dataIndex: "D1",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D2",
|
|
|
- // dataIndex: "D2",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D3",
|
|
|
- // dataIndex: "D3",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D4",
|
|
|
- // dataIndex: "D4",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D5",
|
|
|
- // dataIndex: "D5",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D6",
|
|
|
- // dataIndex: "D6",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D7",
|
|
|
- // dataIndex: "D7",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D8",
|
|
|
- // dataIndex: "D8",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D9",
|
|
|
- // dataIndex: "D9",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D10",
|
|
|
- // dataIndex: "D10",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D11",
|
|
|
- // dataIndex: "D11",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D12",
|
|
|
- // dataIndex: "D12",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D13",
|
|
|
- // dataIndex: "D13",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D14",
|
|
|
- // dataIndex: "D14",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D15",
|
|
|
- // dataIndex: "D15",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D16",
|
|
|
- // dataIndex: "D16",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D17",
|
|
|
- // dataIndex: "D17",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D18",
|
|
|
- // dataIndex: "D18",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D19",
|
|
|
- // dataIndex: "D19",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D20",
|
|
|
- // dataIndex: "D20",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D21",
|
|
|
- // dataIndex: "D21",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D22",
|
|
|
- // dataIndex: "D22",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D23",
|
|
|
- // dataIndex: "D23",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D24",
|
|
|
- // dataIndex: "D24",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D25",
|
|
|
- // dataIndex: "D25",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D26",
|
|
|
- // dataIndex: "D26",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D27",
|
|
|
- // dataIndex: "D27",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D28",
|
|
|
- // dataIndex: "D28",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D29",
|
|
|
- // dataIndex: "D29",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D30",
|
|
|
- // dataIndex: "D30",
|
|
|
- // label: "D1-D30",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }]
|
|
|
- },
|
|
|
- // {
|
|
|
- // label: 'D31-D60',
|
|
|
- // data: [{
|
|
|
- // title: "D31",
|
|
|
- // dataIndex: "D31",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D32",
|
|
|
- // dataIndex: "D32",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D33",
|
|
|
- // dataIndex: "D33",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D34",
|
|
|
- // dataIndex: "D34",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D35",
|
|
|
- // dataIndex: "D35",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D36",
|
|
|
- // dataIndex: "D36",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D37",
|
|
|
- // dataIndex: "D37",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D38",
|
|
|
- // dataIndex: "D38",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D39",
|
|
|
- // dataIndex: "D39",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D40",
|
|
|
- // dataIndex: "D40",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D41",
|
|
|
- // dataIndex: "D41",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D42",
|
|
|
- // dataIndex: "D42",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D43",
|
|
|
- // dataIndex: "D43",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D44",
|
|
|
- // dataIndex: "D44",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D45",
|
|
|
- // dataIndex: "D45",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D46",
|
|
|
- // dataIndex: "D46",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D47",
|
|
|
- // dataIndex: "D47",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D48",
|
|
|
- // dataIndex: "D48",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D49",
|
|
|
- // dataIndex: "D49",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D50",
|
|
|
- // dataIndex: "D50",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D51",
|
|
|
- // dataIndex: "D51",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D52",
|
|
|
- // dataIndex: "D52",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D53",
|
|
|
- // dataIndex: "D53",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D54",
|
|
|
- // dataIndex: "D54",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D55",
|
|
|
- // dataIndex: "D55",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D56",
|
|
|
- // dataIndex: "D56",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D57",
|
|
|
- // dataIndex: "D57",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D58",
|
|
|
- // dataIndex: "D58",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D59",
|
|
|
- // dataIndex: "D59",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D60",
|
|
|
- // dataIndex: "D60",
|
|
|
- // label: "D31-D60",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }],
|
|
|
- // },
|
|
|
- // {
|
|
|
- // label: 'D61-D90',
|
|
|
- // data: [{
|
|
|
- // title: "D61",
|
|
|
- // dataIndex: "D61",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D62",
|
|
|
- // dataIndex: "D62",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D63",
|
|
|
- // dataIndex: "D63",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D64",
|
|
|
- // dataIndex: "D64",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D65",
|
|
|
- // dataIndex: "D65",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D66",
|
|
|
- // dataIndex: "D66",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D67",
|
|
|
- // dataIndex: "D67",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D68",
|
|
|
- // dataIndex: "D68",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D69",
|
|
|
- // dataIndex: "D69",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D70",
|
|
|
- // dataIndex: "D70",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D71",
|
|
|
- // dataIndex: "D71",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D72",
|
|
|
- // dataIndex: "D72",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D73",
|
|
|
- // dataIndex: "D73",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D74",
|
|
|
- // dataIndex: "D74",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D75",
|
|
|
- // dataIndex: "D75",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D76",
|
|
|
- // dataIndex: "D76",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D77",
|
|
|
- // dataIndex: "D77",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D78",
|
|
|
- // dataIndex: "D78",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D79",
|
|
|
- // dataIndex: "D79",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D80",
|
|
|
- // dataIndex: "D80",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D81",
|
|
|
- // dataIndex: "D81",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D82",
|
|
|
- // dataIndex: "D82",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D83",
|
|
|
- // dataIndex: "D83",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D84",
|
|
|
- // dataIndex: "D84",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D85",
|
|
|
- // dataIndex: "D85",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D86",
|
|
|
- // dataIndex: "D86",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D87",
|
|
|
- // dataIndex: "D87",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D88",
|
|
|
- // dataIndex: "D88",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D89",
|
|
|
- // dataIndex: "D89",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "D90",
|
|
|
- // dataIndex: "D90",
|
|
|
- // label: "D61-D90",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }],
|
|
|
- // },
|
|
|
- // {
|
|
|
- // label: '月份',
|
|
|
- // data: [{
|
|
|
- // title: "M4",
|
|
|
- // dataIndex: "M4",
|
|
|
- // label: "月份",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "M5",
|
|
|
- // dataIndex: "M5",
|
|
|
- // label: "月份",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "M6",
|
|
|
- // dataIndex: "M6",
|
|
|
- // label: "月份",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // }, {
|
|
|
- // title: "M12",
|
|
|
- // dataIndex: "M12",
|
|
|
- // label: "月份",
|
|
|
- // align: "center",
|
|
|
- // width: 70
|
|
|
- // },]
|
|
|
- // },
|
|
|
- // {
|
|
|
- // label: '操作',
|
|
|
- // data: [
|
|
|
- // {
|
|
|
- // title: '操作',
|
|
|
- // dataIndex: 'cz',
|
|
|
- // label: '操作',
|
|
|
- // default: 21,
|
|
|
- // key: 'cz',
|
|
|
- // align: 'center',
|
|
|
- // width: 75,
|
|
|
- // render: (a: number) => {
|
|
|
- // return <span>1111</span>
|
|
|
- // },
|
|
|
- // }
|
|
|
- // ]
|
|
|
- // }
|
|
|
+ }
|
|
|
]
|
|
|
}
|
|
|
|