import WidthEllipsis from "@/components/widthEllipsis"
import { Badge, Statistic, Tag } from "antd"
import React from "react"

function columns12(): { label: string, fieldSHow?: { label: string, saveField: string, defaultValue: any[], data: any[] }, data: any[] }[] {


    return [
        {
            label: '基本信息',
            data: [
                {
                    title: 'GS名称', dataIndex: 'gsName', label: '基本信息', align: 'center', width: 75, default: 1,
                    render: (a: string) => (<WidthEllipsis value={a} />)
                },
                {
                    title: '父游戏名称', dataIndex: 'parentGameName', label: '基本信息', align: 'center', width: 85, default: 2,
                    render: (a: string) => (<WidthEllipsis value={a} />)
                },
                {
                    title: '角色名称', dataIndex: 'roleName', label: '基本信息', align: 'center', width: 85, default: 3,
                    render: (a: string) => (<WidthEllipsis value={a} />)
                },
                {
                    title: '角色创建时间', dataIndex: 'roleTime', label: '基本信息', align: 'center', width: 125, default: 4,
                    render: (a: string, b: any) => (<WidthEllipsis value={a} />)
                },
                {
                    title: '角色创角天数', dataIndex: 'roleCreateDayDiff', label: '基本信息', align: 'center', width: 60, default: 5,
                    render: (a: string) => (<WidthEllipsis value={a} />)
                },
                {
                    title: '角色来源', dataIndex: 'roleSource', label: '基本信息', align: 'center', width: 75, default: 6,
                    render: (a: string) => (<WidthEllipsis value={{ '1': '区服指派', '2': '角色指派' }[a]} />)
                },
                {
                    title: '角色所在区服名称', dataIndex: 'endServerName', label: '基本信息', align: 'center', width: 80, default: 7,
                    render: (a: string) => (<WidthEllipsis value={a} />)
                },
                {
                    title: '服务时间', dataIndex: 'gsStartTime', label: '基本信息', align: 'center', width: 160, default: 8,
                    render: (a: string, b: any) => (<WidthEllipsis value={`${a}-${b?.gsEndTime}`} />)
                },
                {
                    title: '服务天数', dataIndex: 'gsServeDays', label: '基本信息', align: 'center', width: 45, default: 9,
                    render: (a: string) => (<WidthEllipsis value={a} />)
                },
                {
                    title: '服务状态', dataIndex: 'serveStatus', label: '基本信息', align: 'center', width: 75, default: 10,
                    render: (a: boolean) => {
                        return a ? <Tag color="success" style={{ marginRight: 0 }}>服务完成</Tag> : <Tag color="processing" style={{ marginRight: 0 }}>服务中</Tag>
                    }
                },
                {
                    title: '角色当前状态(系统)', dataIndex: 'systemRemoveGameStatus', label: '基本信息', align: 'center', width: 75, default: 11,
                    render: (a: number) => {
                        return a === 0 ? <Badge status="success" text={<span style={{ fontSize: 12 }}>正常</span>} /> : a === 1 ? <Badge status="error" text={<span style={{ fontSize: 12 }}>退游</span>} /> : '--'
                    }
                },
                {
                    title: '角色当前状态(人工)', dataIndex: 'humanRemoveGameStatus', label: '基本信息', align: 'center', width: 75, default: 12,
                    render: (a: number) => {
                        return a === 0 ? <Badge status="success" text={<span style={{ fontSize: 12 }}>正常</span>} /> : a === 1 ? <Badge status="error" text={<span style={{ fontSize: 12 }}>退游</span>} /> : '--'
                    }
                },
            ]
        },
        {
            label: '角色游戏数据',
            data: [
                {
                    title: '角色VIP等级', dataIndex: 'roleVip', label: '角色游戏数据', align: 'center', width: 55, sorter: true, default: 13,
                    render: (a: string) => <Statistic value={a || 0} />
                },
                {
                    title: '角色攻击力', dataIndex: 'combatNum', label: '角色游戏数据', align: 'right', width: 80, sorter: true, default: 14,
                    render: (a: string) => <Statistic value={a || 0} />
                },
                {
                    title: '角色游戏等级', dataIndex: 'roleLevel', label: '角色游戏数据', align: 'center', width: 60, sorter: true, default: 15,
                    render: (a: string) => <Statistic value={a || 0} />
                },
                {
                    title: '角色首充金额', dataIndex: 'firstAmount', label: '角色游戏数据', align: 'right', width: 55, sorter: true, default: 16,
                    render: (a: string) => <Statistic value={a || 0} />
                },
                {
                    title: '创角24小时付费金额', dataIndex: 'roleHourAmount', label: '角色游戏数据', align: 'right', width: 70, sorter: true, default: 17,
                    render: (a: string) => <Statistic value={a || 0} />
                },
                {
                    title: '角色当天付费金额', dataIndex: 'todayAmount', label: '角色游戏数据', align: 'right', width: 70, sorter: true, default: 18,
                    render: (a: string) => <Statistic value={a || 0} />
                },
                {
                    title: '角色当天付费次数', dataIndex: 'todayCount', label: '角色游戏数据', align: 'center', width: 70, sorter: true, default: 19,
                    render: (a: string) => <Statistic value={a || 0} />
                },
                {
                    title: '角色当天区服充值比', dataIndex: 'serverProportion', label: '角色游戏数据', align: 'center', width: 80, sorter: true, default: 20,
                    render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={!a ? {} : a >= 50 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
                },
                {
                    title: '角色当天游戏充值比', dataIndex: 'gameProportion', label: '角色游戏数据', align: 'center', width: 80, sorter: true, default: 21,
                    render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={!a ? {} : a >= 50 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
                },
                {
                    title: '角色累计充值次数', dataIndex: 'totalCnt', label: '角色游戏数据', align: 'center', width: 70, sorter: true, default: 22,
                    render: (a: string) => <Statistic value={a || 0} />
                },
                {
                    title: '角色累计充值金额', dataIndex: 'totalAmount', label: '角色游戏数据', align: 'right', width: 70, sorter: true, default: 23,
                    render: (a: string) => <Statistic value={a || 0} />
                },
                {
                    title: '角色最近充值金额', dataIndex: 'lastAmount', label: '角色游戏数据', align: 'right', width: 70, sorter: true, default: 24,
                    render: (a: string) => <Statistic value={a || 0} />
                },
                {
                    title: '角色最近充值产品', dataIndex: 'productName', label: '角色游戏数据', align: 'center', width: 85, default: 25,
                    render: (a: string) => (<WidthEllipsis value={a} />)
                },
                {
                    title: '角色最近充值时间', dataIndex: 'lastOrderTime', label: '角色游戏数据', align: 'center', width: 120, default: 26,
                    render: (a: string) => (<WidthEllipsis value={a} />)
                },
                {
                    title: '角色最近活跃时间', dataIndex: 'activeTime', label: '角色游戏数据', align: 'center', width: 120, default: 27,
                    render: (a: string) => (<WidthEllipsis value={a} />)
                },
                {
                    title: '角色最近充值时间距今', dataIndex: 'lastOrderDayDiff', label: '角色游戏数据', align: 'center', width: 65, default: 28,
                    render: (a: number) => (<span style={{ fontSize: 12, color: a > 5 ? 'red' : '#000' }}>{a}</span>)
                },
                {
                    title: '角色最近活跃时间距今', dataIndex: 'roleActiveDayDiff', label: '角色游戏数据', align: 'center', width: 65, default: 29,
                    render: (a: number) => (<span style={{ fontSize: 12, color: a > 5 ? 'red' : '#000' }}>{a}</span>)
                },
                {
                    title: '角色转端充值比', dataIndex: 'proportion', label: '角色游戏数据', align: 'center', width: 70, sorter: true, default: 30,
                    render: (a: number) => <Statistic value={a ? a * 100 : 0} precision={2} valueStyle={!a ? {} : a >= 50 ? { color: 'red' } : { color: '#0f990f' }} suffix="%" />
                },
            ]
        },
        {
            label: '补充数据',
            data: [
                {
                    title: 'GS服务中的付费金额', dataIndex: 'gsAmount', label: '补充数据', align: 'right', width: 70, sorter: true, default: 31,
                    render: (a: string) => <Statistic value={a || 0} />
                },
                {
                    title: 'GS服务中的付费次数', dataIndex: 'gsCount', label: '补充数据', align: 'right', width: 70, sorter: true, default: 32,
                    render: (a: string) => <Statistic value={a || 0} />
                },
                {
                    title: '区服指派GS充值金额', dataIndex: 'serverAmount', label: '补充数据', align: 'right', width: 70, sorter: true, default: 33,
                    render: (a: string) => <Statistic value={a || 0} />
                },
                {
                    title: '区服指派GS充值次数', dataIndex: 'serverCount', label: '补充数据', align: 'right', width: 70, sorter: true, default: 34,
                    render: (a: string) => <Statistic value={a || 0} />
                },
            ]
        }
    ]
}

export default columns12