wjx hai 1 ano
pai
achega
1047fc42a2

+ 6 - 0
config/routerConfig.ts

@@ -129,6 +129,12 @@ const gameDataStatistics = {
                     access: 'roleRechargeRanking',
                     component: './gameDataStatistics/roleOperate/roleRechargeRanking',
                 },
+                {
+                    path: '/gameDataStatistics/roleOperate/roleFightingRanking',
+                    name: '角色战力排行榜',
+                    access: 'roleFightingRanking',
+                    component: './gameDataStatistics/roleOperate/roleFightingRanking',
+                },
             ]
         },
         {

+ 36 - 7
src/components/QueryForm/index.tsx

@@ -2,7 +2,7 @@ import { Button, Col, DatePicker, Form, Input, Radio, Row, Select, Space } from
 import React, { useEffect, useState } from "react"
 import moment from "moment"
 import { useAjax } from "@/Hook/useAjax"
-import { getAllOfOwnerUserApi, getChannelChoiceListApi, getGameChoiceListApi, getCpChoiceListApi, getGameChoiceParentListType1Api, getPayListApi, getSubUserWithSelfListApi, getTtAllUserListApi, getUserSystemTypeChoiceListApi, getUserVipLevelChoiceListApi, getRoleUserListApi } from "@/services/gameData"
+import { getAllOfOwnerUserApi, getChannelChoiceListApi, getGameChoiceListApi, getCpChoiceListApi, getGameChoiceParentListType1Api, getPayListApi, getSubUserWithSelfListApi, getTtAllUserListApi, getUserSystemTypeChoiceListApi, getUserVipLevelChoiceListApi, getRoleUserListApi, getGameServerListApi } from "@/services/gameData"
 import { ActiveEnum, PayStatus, TYPE, gameClassifyEnum } from "./const"
 import { ADSTATUSEnum as ADSTTTATUSEnum } from "@/pages/gameDataStatistics/adlist/monitor/const"
 import { ADSTATUSEnum } from "@/pages/gameDataStatistics/adlist/tencentMonitor/const"
@@ -182,9 +182,14 @@ interface Props {
     isWeChatCompany?: boolean
     /** 是否开启 企业微信号 搜索 */
     isWeChat?: boolean
+    /** 是否开启 客服 搜索*/
     isCustomerServerId?: boolean
+    /** 是否开启 运营 搜索 */
     isOperatorId?: boolean
+    /** 是否开启GS 搜索 */
     isGsId?: boolean
+    /** 是否开启多个区服id搜索 */
+    isServerIds?: boolean
 }
 /**
  * 游戏数据系统 请求参数
@@ -198,9 +203,10 @@ const QueryForm: React.FC<Props> = (props) => {
         isGameRoleName, isFirstRecharge, isSwitch, isMerchantNo, isOrderId, isMerchantOrderNo, isPayStatus, isPayWay, isProductName, isRegAgent, isAgentId, isPutAgent, isRegDay, isOs, isParentId, isProjectId, isProjectName, isPromotionId, isPromotionName,
         isSysUserName, isRechargeDate, isBGGameClassify, isGameUserId, isSysUserId, isUserName, isUserId, isSelectRanking, isGameType, isConsumeDay, rechargeDay, isBeginDay, isType, isAdTTStatus, isUserEnterType, isServerName, isServerId, isServerDay, isAdTXStatus,
         payTimeDay, placeAnOrderDay, isPayIntervalTime, isActiveTypes, isNickname, isMobile, isRegIp, isIsAuth, isIsBindMobile, isIsRecharge, isUserStatus, isCreateRole, isRoleCount, isVipLevel, isCreateRoleDay, isIsChange, isIsSendMail, isWeChatCompany, isWeChat,
-        isCustomerServerId, isOperatorId, isGsId
+        isCustomerServerId, isOperatorId, isGsId, isServerIds
     } = props
     const [form] = Form.useForm()
+    const parentId = Form.useWatch('parentId', form)
     const [accountList, setAccountList] = useState<any[]>([])
     const [userIdList, setUserIdList] = useState<any[]>([])
     const [gsList, setGsList] = useState<any[]>([])
@@ -218,6 +224,7 @@ const QueryForm: React.FC<Props> = (props) => {
     const getPayList = useAjax(() => getPayListApi())
     const getUserVipLevelChoiceList = useAjax(() => getUserVipLevelChoiceListApi())
     const getRoleUserList = useAjax((params) => getRoleUserListApi(params))
+    const getGameServerList = useAjax((params) => getGameServerListApi(params))
     /**************************/
 
     useEffect(() => {
@@ -237,6 +244,12 @@ const QueryForm: React.FC<Props> = (props) => {
         }
     }, [isCustomerServerId, isOperatorId, isGsId])
 
+    useEffect(() => {
+        if (isServerIds && parentId) {
+            getGameServerList.run({ gameId: parentId })
+        }
+    }, [isServerIds, parentId])
+
     useEffect(() => {
         if (isAccountId) {
             // 请求广告账号列表
@@ -651,6 +664,22 @@ const QueryForm: React.FC<Props> = (props) => {
                     {getGameChoiceList?.data?.map((item: any) => <Select.Option value={item.id} key={item.id}>{item.name}</Select.Option>)}
                 </Select>
             </Form.Item></Col>}
+            {/* 区服id */}
+            {isServerIds && parentId && <Col><Form.Item name='serverIds'>
+                <Select
+                    maxTagCount={1}
+                    mode="multiple"
+                    showSearch
+                    style={{ minWidth: 140 }}
+                    allowClear
+                    placeholder={'请选择区服'}
+                    filterOption={(input, option) =>
+                        (option?.children as any)?.toLowerCase().indexOf(input.toLowerCase()) >= 0
+                    }
+                >
+                    {getGameServerList?.data?.map((item: any) => <Select.Option value={item.serverId} key={item.serverId}>{item.serverName}</Select.Option>)}
+                </Select>
+            </Form.Item></Col>}
             {/* 游戏应用类型搜索 */}
             {isGameType && <Col><Form.Item name='gameType'>
                 <Select
@@ -990,7 +1019,7 @@ const QueryForm: React.FC<Props> = (props) => {
                 <Select
                     showSearch
                     allowClear
-                    style={{ width: 98 }}
+                    style={{ width: 110 }}
                     placeholder={'玩家状态'}
                     filterOption={(input, option) =>
                         (option?.children as any)?.toLowerCase().indexOf(input.toLowerCase()) >= 0
@@ -1007,7 +1036,7 @@ const QueryForm: React.FC<Props> = (props) => {
                 <Select
                     showSearch
                     allowClear
-                    style={{ width: 98 }}
+                    style={{ width: 110 }}
                     placeholder={'是否创角'}
                     filterOption={(input, option) =>
                         (option?.children as any)?.toLowerCase().indexOf(input.toLowerCase()) >= 0
@@ -1023,7 +1052,7 @@ const QueryForm: React.FC<Props> = (props) => {
                 <Select
                     showSearch
                     allowClear
-                    style={{ width: 98 }}
+                    style={{ width: 110 }}
                     placeholder={'是否转端'}
                     filterOption={(input, option) =>
                         (option?.children as any)?.toLowerCase().indexOf(input.toLowerCase()) >= 0
@@ -1039,7 +1068,7 @@ const QueryForm: React.FC<Props> = (props) => {
                 <Select
                     showSearch
                     allowClear
-                    style={{ width: 98 }}
+                    style={{ width: 140 }}
                     placeholder={'邮件是否发送'}
                     filterOption={(input, option) =>
                         (option?.children as any)?.toLowerCase().indexOf(input.toLowerCase()) >= 0
@@ -1051,7 +1080,7 @@ const QueryForm: React.FC<Props> = (props) => {
             </Form.Item></Col>}
 
             {/* vip等级 */}
-            {isCreateRole && <Col><Form.Item name='vipLevel'>
+            {isVipLevel && <Col><Form.Item name='vipLevel'>
                 <Select
                     showSearch
                     allowClear

+ 4 - 2
src/pages/gameDataStatistics/components/TableData/index.tsx

@@ -211,11 +211,14 @@ function TableData(props: Prosp) {
         runResize(columns, type)
     }, [configName, selectData])
 
+    let colData = czChild ? { span: 24 } : { flex: '1 1 150px' }
+
     const header = <Col span={24}>
         <Row gutter={[0, 10]} align='bottom'>
-            <Col flex='1 1 150px'>
+            <Col {...colData}>
                 {isFullscreen && leftChild}
             </Col>
+            {czChild && <Col flex='1 1 150px'>{czChild}</Col>}
             <Col flex='0 1 150px'>
                 {/*紧凑*/}
                 <Space style={{ float: 'right', marginBottom: 4 }}>
@@ -284,7 +287,6 @@ function TableData(props: Prosp) {
                 </div>
                 <Row gutter={[0, 16]}>
                     {header}
-                    {<Col span={24}>{czChild && czChild}</Col>}
                     <Tab {...{ size, newColumns, handelResize, className, isZj, totalData, rowSelection, rowClassName, scroll, isFull, page, pageSize, dataSource, onChange, expandedRowRender, total, ajax, summary }} />
                 </Row>
             </Card>

+ 14 - 0
src/pages/gameDataStatistics/roleOperate/roleFightingRanking/index.tsx

@@ -0,0 +1,14 @@
+import React from "react"
+
+
+
+const RoleFightingRanking: React.FC = () => {
+
+
+
+    return <div>
+        
+    </div>
+}
+
+export default RoleFightingRanking

+ 10 - 8
src/pages/gameDataStatistics/roleOperate/roleRechargeRanking/index.tsx

@@ -18,7 +18,7 @@ const RoleRechargeRanking: React.FC = () => {
 
 
     /**********************************/
-    const [queryForm, setQueryForm] = useState<RoleRechargeRankingProps>({ pageNum: 1, pageSize: 20, sourceSystem: 'ZX_ONE' })
+    const [queryForm, setQueryForm] = useState<RoleRechargeRankingProps>({ pageNum: 1, pageSize: 50, sourceSystem: 'ZX_ONE', rechargeBeginDate: moment().format('YYYY-MM-DD'), rechargeEndDate: moment().format('YYYY-MM-DD') })
     const [data, setData] = useState<any[]>([])
     const [selectedRowKeys, setSelectedRowKeys] = useState<React.Key[]>([])
     const [sendEmailvisible, setSendEmailVisible] = useState<boolean>(false)
@@ -88,13 +88,13 @@ const RoleRechargeRanking: React.FC = () => {
     return <div>
         <TableData
             czChild={<Space>
-                <Button type="primary" disabled={selectedRowKeys.length === 0} onClick={() => sendPack(selectedRowKeys)}>批量发送礼包</Button>
-                <Button type="primary" disabled={selectedRowKeys.length === 0} onClick={() => sendEmail(selectedRowKeys)}>批量发送邮件</Button>
-                <Button type="primary" disabled={selectedRowKeys.length === 0} onClick={() => roleHandle(selectedRowKeys)}>批量角色操作</Button>
-                <Button type="primary" disabled={selectedRowKeys.length === 0} onClick={() => assignHandle(selectedRowKeys)}>批量指派</Button>
+                <Button type="primary" size="small" disabled={selectedRowKeys.length === 0} onClick={() => sendPack(selectedRowKeys)}>批量发送礼包</Button>
+                <Button type="primary" size="small" disabled={selectedRowKeys.length === 0} onClick={() => sendEmail(selectedRowKeys)}>批量发送邮件</Button>
+                <Button type="primary" size="small" disabled={selectedRowKeys.length === 0} onClick={() => roleHandle(selectedRowKeys)}>批量角色操作</Button>
+                <Button type="primary" size="small" disabled={selectedRowKeys.length === 0} onClick={() => assignHandle(selectedRowKeys)}>批量指派</Button>
             </Space>}
             leftChild={<QueryForm
-                initialValues={{ sourceSystem: 'ZX_ONE' }}
+                initialValues={{ sourceSystem: 'ZX_ONE', rechargeDay: [moment(), moment()] }}
                 onChange={(data: any) => {
                     console.log(data)
                     const { rechargeDay, createRoleDay, parentId, mobile, ...par } = data
@@ -128,17 +128,19 @@ const RoleRechargeRanking: React.FC = () => {
                 isSysUserId
                 isGameRoleName
                 isGameRoleId
-                isCreateRole
+                isIsSendMail
                 isWeChatCompany
                 isWeChat
                 isCustomerServerId
                 isOperatorId
                 isGsId
+                isVipLevel
+                isServerIds
             />}
             scroll={{ x: 1000, y: 600 }}
             isVirtually={false}
             ajax={getRoleRechargeRankingList}
-            fixed={{ left: 1, right: 1 }}
+            fixed={{ left: 2, right: 1 }}
             dataSource={getRoleRechargeRankingList?.data?.records?.map((item: any, index: number) => ({ ...item, id: Number(queryForm.pageNum.toString() + index.toString()) }))}
             page={getRoleRechargeRankingList?.data?.current || 1}
             pageSize={getRoleRechargeRankingList?.data?.size || 20}

+ 12 - 12
src/pages/gameDataStatistics/roleOperate/roleRechargeRanking/roleCz.tsx

@@ -1,8 +1,8 @@
 import { useAjax } from "@/Hook/useAjax"
-import { getSubUserWithSelfListApi } from "@/services/gameData"
+// import { getSubUserWithSelfListApi } from "@/services/gameData"
 import { modifyRoleDataApi } from "@/services/gameData/roleOperate"
-import { Col, Form, Input, Modal, Radio, Row, Select, Space, message } from "antd"
-import React, { useEffect, useState } from "react"
+import { Col, Form, Input, Modal, Radio, Row, Space, message } from "antd"
+import React, { useEffect } from "react"
 
 interface Props {
     data: any[]
@@ -18,9 +18,9 @@ const RoleCz: React.FC<Props> = ({ data = [], visible, onClose, onChange }) => {
 
     /**************************/
     const [form] = Form.useForm()
-    const [userIdList, setUserIdList] = useState<any[]>([])
+    // const [userIdList, setUserIdList] = useState<any[]>([])
 
-    const getSubUserWithSelfList = useAjax(() => getSubUserWithSelfListApi())
+    // const getSubUserWithSelfList = useAjax(() => getSubUserWithSelfListApi())
     const modifyRoleData = useAjax((params) => modifyRoleDataApi(params))
     /**************************/
 
@@ -41,11 +41,11 @@ const RoleCz: React.FC<Props> = ({ data = [], visible, onClose, onChange }) => {
     }, [data])
 
     /** 投手列表 */
-    useEffect(() => {
-        getSubUserWithSelfList.run().then(res => {
-            setUserIdList(res ? Object.keys(res)?.map(key => ({ userId: key, nickname: res[key] })) : [])
-        })
-    }, [])
+    // useEffect(() => {
+    //     getSubUserWithSelfList.run().then(res => {
+    //         setUserIdList(res ? Object.keys(res)?.map(key => ({ userId: key, nickname: res[key] })) : [])
+    //     })
+    // }, [])
 
     const handleOk = async () => {
         let validate = await form.validateFields()
@@ -103,7 +103,7 @@ const RoleCz: React.FC<Props> = ({ data = [], visible, onClose, onChange }) => {
                     </Form.Item>
                 </Col>
                 <Col span={12}>
-                    <Form.Item label="投手" name='putUserId'>
+                    {/* <Form.Item label="投手" name='putUserId'>
                         <Select
                             showSearch
                             allowClear
@@ -114,7 +114,7 @@ const RoleCz: React.FC<Props> = ({ data = [], visible, onClose, onChange }) => {
                         >
                             {userIdList.map((item: any) => <Select.Option value={item.userId} key={item.userId}>{item.nickname}</Select.Option>)}
                         </Select>
-                    </Form.Item>
+                    </Form.Item> */}
                 </Col>
                 <Col span={12}>
                     <Form.Item name='isAddCorpWechat' label="是否添加企微">

+ 7 - 7
src/pages/gameDataStatistics/roleOperate/roleRechargeRanking/sendEmailTable.tsx

@@ -15,7 +15,7 @@ const SendEmailTable: React.FC<Props> = ({ data, onChange }) => {
 
     /*********************************/
     const [queryForm, setQueryForm] = useState<getSendEmailLogProps>({ pageNum: 1, pageSize: 20 })
-    const [selectedRowKeys, setSelectedRowKeys] = useState<React.Key[]>([])
+    const [selectedRowKeys, setSelectedRowKeys] = useState<any[]>([])
     const [sendEmialvisible, setSendEmialVisible] = useState<boolean>(false)
     const [ids, setIds] = useState<string[]>([])
     const getSendEmailList = useAjax((params) => getSendEmailListApi(params))
@@ -63,13 +63,13 @@ const SendEmailTable: React.FC<Props> = ({ data, onChange }) => {
                     }
                 }}
             />
-            <Button type="primary" onClick={() => { update(selectedRowKeys) }} disabled={selectedRowKeys.length === 0}>批量更新</Button>
+            <Button type="primary" size="small" onClick={() => { update(selectedRowKeys) }} disabled={selectedRowKeys.length === 0}>批量更新</Button>
             <Popconfirm
                 title="确定删除?"
                 disabled={selectedRowKeys.length === 0}
-                onConfirm={() => { del(selectedRowKeys) }}
+                onConfirm={() => { del(selectedRowKeys.map(item => item.id)) }}
             >
-                <Button danger onClick={() => { }} disabled={selectedRowKeys.length === 0}>批量删除</Button>
+                <Button danger size="small" disabled={selectedRowKeys.length === 0}>批量删除</Button>
             </Popconfirm>
         </Space>
         <Table
@@ -96,9 +96,9 @@ const SendEmailTable: React.FC<Props> = ({ data, onChange }) => {
                 }
             }
             rowSelection={{
-                selectedRowKeys,
-                onChange: (selectedRowKeys: React.Key[]) => {
-                    setSelectedRowKeys(selectedRowKeys)
+                selectedRowKeys: selectedRowKeys.map(item => item?.id),
+                onChange: (selectedRowKeys: React.Key[], selectedRows: any[]) => {
+                    setSelectedRowKeys(selectedRows)
                 },
             }}
         />

+ 10 - 3
src/pages/gameDataStatistics/roleOperate/roleRechargeRanking/sendMail.tsx

@@ -1,12 +1,12 @@
 import { useAjax } from "@/Hook/useAjax"
 import { addOrUpdateEmailApi } from "@/services/gameData/roleOperate"
 import { DatePicker, Form, Modal, message } from "antd"
-import React from "react"
+import React, { useEffect } from "react"
 import moment from "moment"
 
 interface Props {
     data: any[]
-    ids?: number[];
+    ids?: any[];
     visible?: boolean
     onClose?: () => void
     onChange?: () => void
@@ -23,12 +23,19 @@ const SendMail: React.FC<Props> = ({ data = [], ids, visible, onClose, onChange
     const addOrUpdateEmail = useAjax((params) => addOrUpdateEmailApi(params))
     /************************************/
 
+    useEffect(() => {
+        if (ids?.length === 1) {
+            const { sendTime } = ids?.[0]
+            form.setFieldsValue({ sendTime: sendTime ? moment(sendTime) : undefined })
+        }
+    }, [ids])
+
     const handleOk = async () => {
         let validate = await form.validateFields()
         const { sendTime, giftId } = validate
         let params: any = { giftId, sendTime: moment(sendTime).format('YYYY-MM-DD HH:mm:ss') }
         if (ids) {
-            params.ids = ids
+            params.ids = ids.map(item => item.id)
         }
         let roleInfoList = data.map(item => {
             return {

+ 9 - 3
src/pages/gameDataStatistics/roleOperate/roleRechargeRanking/sendPack.tsx

@@ -7,7 +7,7 @@ import moment from "moment"
 
 interface Props {
     data: any[]
-    ids?: number[];
+    ids?: any[];
     visible?: boolean
     onClose?: () => void
     onChange?: () => void
@@ -18,13 +18,19 @@ interface Props {
  */
 const SendPack: React.FC<Props> = ({ data = [], ids, visible, onClose, onChange }) => {
 
-
     /************************************/
     const [form] = Form.useForm()
     const getPackList = useAjax((params) => getPackListApi(params))
     const addOrUpdateGift = useAjax((params) => addOrUpdateGiftApi(params))
     /************************************/
 
+    useEffect(() => {
+        if (ids?.length === 1) {
+            const { sendTime, giftId } = ids?.[0]
+            form.setFieldsValue({ sendTime: sendTime ? moment(sendTime) : undefined, giftId })
+        }
+    }, [ids])
+
     useEffect(() => {
         getPackList.run({})
     }, [data])
@@ -34,7 +40,7 @@ const SendPack: React.FC<Props> = ({ data = [], ids, visible, onClose, onChange
         const { sendTime, giftId } = validate
         let params: any = { giftId, sendTime: moment(sendTime).format('YYYY-MM-DD HH:mm:ss') }
         if (ids) {
-            params.ids = ids
+            params.ids = ids.map((item: any) => item.id)
         }
         let roleInfoList = data.map(item => {
             return {

+ 7 - 7
src/pages/gameDataStatistics/roleOperate/roleRechargeRanking/sendPackTable.tsx

@@ -15,7 +15,7 @@ const SendPackTable: React.FC<Props> = ({ data, onChange }) => {
 
     /*********************************/
     const [queryForm, setQueryForm] = useState<getSendGiftLogProps>({ pageNum: 1, pageSize: 20 })
-    const [selectedRowKeys, setSelectedRowKeys] = useState<React.Key[]>([])
+    const [selectedRowKeys, setSelectedRowKeys] = useState<any[]>([])
     const [sendPackvisible, setSendPackVisible] = useState<boolean>(false)
     const [ids, setIds] = useState<string[]>([])
     const getSendGiftLogList = useAjax((params) => getSendGiftLogListApi(params))
@@ -64,13 +64,13 @@ const SendPackTable: React.FC<Props> = ({ data, onChange }) => {
                     }
                 }}
             />
-            <Button type="primary" onClick={() => { update(selectedRowKeys) }} disabled={selectedRowKeys.length === 0}>批量更新</Button>
+            <Button type="primary" size="small" onClick={() => { update(selectedRowKeys) }} disabled={selectedRowKeys.length === 0}>批量更新</Button>
             <Popconfirm
                 title="确定删除?"
                 disabled={selectedRowKeys.length === 0}
-                onConfirm={() => { del(selectedRowKeys) }}
+                onConfirm={() => { del(selectedRowKeys.map(item => item.id)) }}
             >
-                <Button danger onClick={() => { }} disabled={selectedRowKeys.length === 0}>批量删除</Button>
+                <Button danger size="small" disabled={selectedRowKeys.length === 0}>批量删除</Button>
             </Popconfirm>
         </Space>
         <Table
@@ -97,9 +97,9 @@ const SendPackTable: React.FC<Props> = ({ data, onChange }) => {
                 }
             }
             rowSelection={{
-                selectedRowKeys,
-                onChange: (selectedRowKeys: React.Key[]) => {
-                    setSelectedRowKeys(selectedRowKeys)
+                selectedRowKeys: selectedRowKeys.map(item => item?.id),
+                onChange: (selectedRowKeys: React.Key[], selectedRows: any[]) => {
+                    setSelectedRowKeys(selectedRows)
                 },
             }}
         />

+ 4 - 9
src/pages/gameDataStatistics/roleOperate/roleRechargeRanking/tableConfig.tsx

@@ -220,11 +220,6 @@ function columns12(
                 { title: '客服', dataIndex: 'customer_service_name', label: '客户管理操作', align: 'center', width: 80, render: (a: string, b: any) => (<WidthEllipsis value={a} />) },
                 { title: '运营', dataIndex: 'oper_user_name', label: '客户管理操作', align: 'center', width: 80, render: (a: string, b: any) => (<WidthEllipsis value={a} />) },
                 { title: '投手', dataIndex: 'put_user_name', label: '客户管理操作', align: 'center', width: 80, render: (a: string, b: any) => (<WidthEllipsis value={a} />) },
-                { title: '创建者', dataIndex: 'create_by', label: '客户管理操作', align: 'center', width: 80, render: (a: string, b: any) => (<WidthEllipsis value={a} />) },
-                { title: '更新者', dataIndex: 'update_by', label: '客户管理操作', align: 'center', width: 80, render: (a: string, b: any) => (<WidthEllipsis value={a} />) },
-                { title: '创建时间', dataIndex: 'create_time', label: '客户管理操作', align: 'center', width: 140, render: (a: string, b: any) => (<WidthEllipsis value={a} />) },
-                { title: '更新时间', dataIndex: 'update_time', label: '客户管理操作', align: 'center', width: 140, render: (a: string, b: any) => (<WidthEllipsis value={a} />) },
-                { title: '是否删除', dataIndex: 'is_delete', label: '客户管理操作', align: 'center', width: 70, render: (a: string, b: any) => (<WidthEllipsis value={a ? '删除' : '‘正常'} />) },
                 // {
                 //     title: '指派',
                 //     dataIndex: 'zp',
@@ -248,13 +243,13 @@ function columns12(
                     dataIndex: 'cz',
                     label: '操作',
                     align: 'center',
-                    width: 180,
+                    width: 160,
                     default: 20,
                     render: (a: any, b: any) => {
                         return <Space>
-                            <a onClick={() => { roleHandle([b]) }}>角色操作</a>
-                            <a onClick={() => { assignHandle([b]) }}>指派</a>
-                            <a onClick={() => { changeLog([b]) }}>变更记录</a>
+                            <a style={{fontSize: 12}} onClick={() => { roleHandle([b]) }}>角色操作</a>
+                            <a style={{fontSize: 12}} onClick={() => { assignHandle([b]) }}>指派</a>
+                            <a style={{fontSize: 12}} onClick={() => { changeLog([b]) }}>变更记录</a>
                         </Space>
                     }
                 }

+ 9 - 0
src/services/gameData/index.ts

@@ -119,4 +119,13 @@ export async function getUserVipLevelChoiceListApi() {
  */
 export async function getPackListApi(data: { gameId?: number, giftName?: string }) {
     return request(gameApi + `/manage/game/gift/list`, { method: 'POST', data });
+}
+
+/**
+ * 获取游戏区服
+ * @param data 
+ * @returns 
+ */
+export async function getGameServerListApi(params: { gameId: number }) {
+    return request(gameApi + `/manage/gameServer/all/server/list`, { method: 'GET', params });
 }