import ProgressTable from "@/components/ProgressTable" import WidthEllipsis from "@/components/widthEllipsis" import { Badge, Popconfirm, Space, Statistic } from "antd" import React from "react" import SendEmailDetails from "./sendEmailDetails" import './index.less' import SendPackDetails from "./sendPackDetails" // import IsTrue from "./isTrue" // import InputUpdate from "./inputUpdate" function columns12( sendEmail: (data: any[]) => void, sendPack: (data: any[]) => void, handleIsTrue: (value: string, data: any, type: string) => void, handleSave: (data: any) => void, roleHandle: (data: any[]) => void, assignHandle: (data: any[]) => void, changeLog: (data: any[]) => void ) { let newArr: { label: string, data: any[] }[] = [ { label: '角色信息', data: [ { title: '游戏', dataIndex: 'role_reg_parent_game_name', label: '角色信息', align: 'center', width: 70, render: (a: string, b: any) => () }, { title: '游戏区服', dataIndex: 'server_name', label: '玩家信息', align: 'center', width: 90, default: 4, render: (a: string, b: any) => () }, { title: '区服ID', dataIndex: 'server_id', label: '角色信息', align: 'center', width: 70, render: (a: string, b: any) => () }, { title: '角色名称', dataIndex: 'role_name', label: '角色信息', align: 'center', width: 90, default: 2, render: (a: string, b: any) => () }, { title: '角色创建时间', dataIndex: 'role_create_time', label: '角色信息', align: 'center', width: 140, render: (a: string, b: any) => () }, { title: '角色VIP等级', dataIndex: 'vip_level', label: '角色信息', align: 'center', width: 60, default: 3, render: (a: string, b: any) => () }, { title: '角色等级', dataIndex: 'role_level', label: '角色信息', align: 'center', width: 65, render: (a: string, b: any) => () }, { title: '角色攻击力', dataIndex: 'combat_num', label: '角色信息', align: 'center', width: 70, render: (a: string, b: any) => () }, ], }, { label: '玩家信息', data: [ { title: '玩家ID', dataIndex: 'user_id', label: '玩家信息', align: 'center', width: 70 }, { title: '玩家账号', dataIndex: 'username', label: '玩家信息', align: 'center', width: 120, default: 1, render: (a: string, b: any) => () }, { title: '注册渠道', dataIndex: 'agent_name', label: '玩家信息', align: 'center', width: 80, default: 5, render: (a: string, b: any) => () }, { title: '注册渠道ID', dataIndex: 'agent_id', label: '玩家信息', align: 'center', width: 80 }, { title: '注册时间', dataIndex: 'user_create_time', label: '玩家信息', align: 'center', width: 140, default: 6, render: (a: string, b: any) => () }, { title: '注册游戏', dataIndex: 'user_reg_game_name', label: '玩家信息', align: 'center', width: 70, default: 7, render: (a: string, b: any) => () }, { title: '玩家操作系统', dataIndex: 'os', label: '玩家信息', align: 'center', width: 70, default: 8 }, // { title: '玩家等级标签', dataIndex: '13', label: '玩家信息', align: 'center', width: 70, default: 14 }, { title: '最近充值游戏', dataIndex: 'user_last_recharge_game_name', label: '玩家信息', align: 'center', width: 70, default: 15, render: (a: string, b: any) => () }, { title: '最近充值时间', dataIndex: 'user_pay_time', label: '玩家信息', align: 'center', width: 140, default: 16, render: (a: string, b: any) => () }, { title: '最近活跃时间', dataIndex: 'user_active_time', label: '玩家信息', align: 'center', width: 140, default: 17, render: (a: string, b: any) => () }, { title: '注册充值时间差', dataIndex: 'regPayTimeDiff', align: 'center', width: 140, default: 18, render: (a: string, b: any) => { let diff = new Date(b.user_pay_time).getTime() - new Date(b.user_create_time).getTime() function secondsToDhms(seconds: any) { const days = Math.floor(seconds / (3600 * 24)); const hours = Math.floor((seconds % (3600 * 24)) / 3600); const minutes = Math.floor((seconds % 3600) / 60); const remainingSeconds = seconds % 60; return `${days ? days + "天" : ''}${hours ? hours + "小时" : ''}${minutes ? minutes + "分" : ''}${remainingSeconds ? remainingSeconds + "秒" : ''}` } return diff ? : '--' } }, { title: '最近充值时间距今', dataIndex: 'nowPayTimeDiff', align: 'center', width: 130, default: 19, render: (a: string, b: any) => { let diff = new Date().getTime() - new Date(b.user_pay_time).getTime() function secondsToDhms(seconds: any) { const days = Math.floor(seconds / (3600 * 24)); const hours = Math.floor((seconds % (3600 * 24)) / 3600); const minutes = Math.floor((seconds % 3600) / 60); const remainingSeconds = seconds % 60; return `${days ? days + "天" : ''}${hours ? hours + "小时" : ''}${minutes ? minutes + "分" : ''}${remainingSeconds ? remainingSeconds.toFixed(0) + "秒" : ''}` } return diff ? 1 ? { color: 'red' } : {}}> : '--' } }, ] }, { label: '角色充值信息', data: [ { title: '当天充值金额', dataIndex: 'today_amount', label: '角色充值信息', align: 'center', width: 70, default: 9, sorter: true, className: 'progress', render: (a: number) => { return = 1000 ? { color: '#000', fontWeight: 500 } : { fontWeight: 500 }} /> }, }, { title: '首充金额', dataIndex: 'role_first_amount', label: '角色充值信息', align: 'center', width: 70, default: 10, sorter: true, render: (a: string) => }, { title: '最近充值金额', dataIndex: 'role_last_amount', label: '角色充值信息', align: 'center', width: 70, default: 11, sorter: true, render: (a: string) => }, { title: '累计充值金额', dataIndex: 'amount', label: '角色充值信息', align: 'center', width: 100, default: 12, sorter: true, className: 'progress', render: (a: number) => { return = 5000 ? { color: '#000', fontWeight: 500 } : { fontWeight: 500 }} /> }, }, { title: '平均单价', dataIndex: 'avg_amount', label: '角色充值信息', align: 'center', width: 70, default: 13, sorter: true, render: (a: string) => }, { title: '累计充值次数', dataIndex: 'amount_count', label: '角色充值信息', align: 'center', width: 70, default: 14, sorter: true, render: (a: string) => }, ], }, { label: '客户运营操作', data: [ { title: '邮件是否发送', dataIndex: 'is_send_mail', label: '客户运营操作', width: 130, align: 'center', render: (a: any, b: any) => { return {a ? : } sendEmail([b])}>发送 }, }, { title: '最新发送礼包', dataIndex: 'send_gift_id', label: '客户运营操作', align: 'center', width: 138, render: (a: any, b: any) => { return
sendPack([b])}>发送
}, }, { title: '是否转端', dataIndex: 'is_change_game_type', label: '客户运营操作', align: 'center', width: 60, render: (a: any, b: any) => { // return handleIsTrue(value, b, 'isChangeGameType')} /> return a ? '是' : '否' }, }, { title: '是否添加企微', dataIndex: 'is_add_corp_wechat', label: '客户运营操作', align: 'center', width: 60, render: (a: any, b: any) => { // return handleIsTrue(value, b, 'isAddCorpWechat')} /> return a ? '是' : '否' }, }, { title: '企微号', dataIndex: 'add_corp_user_id', label: '客户运营操作', align: 'center', width: 80, className: 'padding0', render: (a: any, b: any) => { // return return }, }, { title: '客户微信号', dataIndex: 'user_wechat', label: '客户运营操作', align: 'center', width: 80, render: (a: any, b: any) => { // return return }, }, { title: '客户手机号', dataIndex: 'user_phone', label: '客户运营操作', align: 'center', width: 80, render: (a: any, b: any) => { // return return }, }, { title: '是否退游', dataIndex: 'is_remove_game', label: '客户运营操作', align: 'center', width: 50, render: (a: any, b: any) => { // return handleIsTrue(value, b, 'isRemoveGame')} /> return a ? '是' : '否' }, }, { title: '是否唤醒', dataIndex: 'is_wake_up', label: '客户运营操作', align: 'center', width: 50, render: (a: any, b: any) => { // return handleIsTrue(value, b, 'isWakeUp')} /> return a ? '是' : '否' }, }, { title: '备注', dataIndex: 'remark', label: '客户运营操作', align: 'center', width: 80, render: (a: any, b: any) => { // return return }, }, // { // title: '角色操作', // dataIndex: 'rolecz', // label: '客户运营操作', // align: 'center', // width: 80, // render: (a: any, b: any) => { // return { roleHandle([b]) }}>角色操作 // } // } ] }, { label: '客户管理操作', data: [ { title: 'GS', dataIndex: 'gs_name', label: '客户管理操作', align: 'center', width: 80, render: (a: string, b: any) => () }, { title: '客服', dataIndex: 'customer_service_name', label: '客户管理操作', align: 'center', width: 80, render: (a: string, b: any) => () }, { title: '运营', dataIndex: 'oper_user_name', label: '客户管理操作', align: 'center', width: 80, render: (a: string, b: any) => () }, { title: '投手', dataIndex: 'put_user_name', label: '客户管理操作', align: 'center', width: 80, render: (a: string, b: any) => () }, { title: '创建者', dataIndex: 'create_by', label: '客户管理操作', align: 'center', width: 80, render: (a: string, b: any) => () }, { title: '更新者', dataIndex: 'update_by', label: '客户管理操作', align: 'center', width: 80, render: (a: string, b: any) => () }, { title: '创建时间', dataIndex: 'create_time', label: '客户管理操作', align: 'center', width: 140, render: (a: string, b: any) => () }, { title: '更新时间', dataIndex: 'update_time', label: '客户管理操作', align: 'center', width: 140, render: (a: string, b: any) => () }, { title: '是否删除', dataIndex: 'is_delete', label: '客户管理操作', align: 'center', width: 70, render: (a: string, b: any) => () }, // { // title: '指派', // dataIndex: 'zp', // label: '客户管理操作', // align: 'center', // width: 110, // render: (a: any, b: any) => { // return // { assignHandle([b]) }}>指派 // { changeLog([b]) }}>变更记录 // // } // } ] }, { label: '操作', data: [ { title: '操作', dataIndex: 'cz', label: '操作', align: 'center', width: 180, default: 20, render: (a: any, b: any) => { return { roleHandle([b]) }}>角色操作 { assignHandle([b]) }}>指派 { changeLog([b]) }}>变更记录 } } ] } ] return newArr } export const columnsSendEmailLog = (update: (data: any) => void, del: (id: number[]) => void): any[] => { return [ { title: '发送时间', dataIndex: 'sendTime', key: 'sendTime', width: 145, ellipsis: true, fixed: 'left' }, { title: '操作人', dataIndex: 'createName', key: 'createName', width: 60, ellipsis: true }, { title: '更新人', dataIndex: 'updateName', key: 'updateName', width: 60, ellipsis: true }, { title: '创建时间', dataIndex: 'createTime', key: 'createTime', width: 145, ellipsis: true }, { title: '更新时间', dataIndex: 'updateTime', key: 'updateTime', width: 145, ellipsis: true }, { title: '操作', dataIndex: 'cz', key: 'cz', width: 70, fixed: 'right', render: (a: any, b: any) => { return update([b])}>更新 del([b.id])} > 删除 } }, ] }; export const columnsSendPackLog = (update: (data: any) => void, del: (id: number[]) => void): any[] => { return [ { title: '礼包', dataIndex: 'giftName', key: 'giftName', width: 100, ellipsis: true, fixed: 'left' }, { title: '发送时间', dataIndex: 'sendTime', key: 'sendTime', width: 145, ellipsis: true }, { title: '操作人', dataIndex: 'createName', key: 'createName', width: 60, ellipsis: true }, { title: '更新人', dataIndex: 'updateName', key: 'updateName', width: 60, ellipsis: true }, { title: '创建时间', dataIndex: 'createTime', key: 'createTime', width: 145, ellipsis: true }, { title: '更新时间', dataIndex: 'updateTime', key: 'updateTime', width: 145, ellipsis: true }, { title: '操作', dataIndex: 'cz', key: 'cz', width: 70, fixed: 'right', render: (a: any, b: any) => { return update([b])}>更新 del([b.id])} > 删除 } }, ] }; /** * 变更记录 * @param update * @param del * @returns */ export const columnsChangeLog = (update: (data: any) => void, del: (id: number[]) => void): any[] => { return [ { title: '开始时间', dataIndex: 'startTime', key: 'startTime', width: 145, ellipsis: true }, { title: '结束时间', dataIndex: 'endTime', key: 'endTime', width: 145, ellipsis: true }, { title: '游戏名称', dataIndex: 'gameName', key: 'gameName', width: 100, ellipsis: true, fixed: 'left' }, { title: '角色名称', dataIndex: 'roleName', key: 'roleName', width: 100, ellipsis: true, fixed: 'left' }, { title: '区服名称', dataIndex: 'serverName', key: 'serverName', width: 100, ellipsis: true, fixed: 'left' }, { title: '客服', dataIndex: 'customerServiceName', key: 'customerServiceName', width: 100, ellipsis: true }, { title: '运营', dataIndex: 'operUserName', key: 'operUserName', width: 100, ellipsis: true }, { title: '运营', dataIndex: 'gsName', key: 'gsName', width: 100, ellipsis: true }, { title: '创建人', dataIndex: 'createName', key: 'createName', width: 60, ellipsis: true }, { title: '创建时间', dataIndex: 'createTime', key: 'createTime', width: 145, ellipsis: true }, { title: '更新人', dataIndex: 'updateName', key: 'updateName', width: 60, ellipsis: true }, { title: '更新时间', dataIndex: 'updateTime', key: 'updateTime', width: 145, ellipsis: true }, { title: '备注', dataIndex: 'remark', key: 'remark', width: 200, ellipsis: true }, { title: '操作', dataIndex: 'cz', key: 'cz', width: 70, fixed: 'right', render: (a: any, b: any) => { return update(b)}>修改 del([b.id])} > 删除 } }, ] }; export default columns12