index.tsx 4.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. import { useAjax } from "@/Hook/useAjax"
  2. import React, { useEffect, useState } from "react"
  3. import columns12 from "./tableConfig"
  4. import TablePro from "@/pages/gameDataStatistics/components/TablePro"
  5. import QueryFormGS from "@/components/QueryForm/indexGs"
  6. import moment from "moment"
  7. import { getRoleManageListApi, getRoleManageProps } from "@/services/gsData"
  8. /**
  9. * 游戏角色管理
  10. * @returns
  11. */
  12. const RoleManage: React.FC = () => {
  13. /***************************************/
  14. const [queryForm, setQueryForm] = useState<getRoleManageProps>({
  15. pageNum: 1,
  16. pageSize: 30,
  17. sourceSystem: 'ZX_ONE'
  18. })
  19. const getRoleManageList = useAjax((params) => getRoleManageListApi(params))
  20. /***************************************/
  21. useEffect(() => {
  22. getRoleManageList.run(queryForm)
  23. }, [queryForm])
  24. return <div>
  25. <TablePro
  26. leftChild={<QueryFormGS
  27. initialValues={{ sourceSystem: 'ZX_ONE', roleSource: 2 }}
  28. isSource
  29. isGsId
  30. isServeDay={{}}
  31. rechargeDay={{ placeholder: ['角色创建开始日期', '角色创建结束日期'] }}
  32. isSuperParentGameId
  33. isParentId
  34. isServerIds
  35. isServeStatus
  36. isGsStatus
  37. isGameRoleName
  38. onChange={(data: any) => {
  39. console.log(data)
  40. const { rechargeDay, gsId, parentId, superParentGameId, serverIds, serveDay, ...params } = data
  41. let newQueryForm = JSON.parse(JSON.stringify(queryForm))
  42. newQueryForm.pageNum = 1
  43. newQueryForm.gsIdList = gsId
  44. newQueryForm.parentGameId = parentId
  45. newQueryForm.superGameId = superParentGameId
  46. newQueryForm.serverIdList = serverIds
  47. if (serveDay && serveDay?.length === 2) {
  48. newQueryForm['serveDayBegin'] = moment(serveDay[0]).format('YYYY-MM-DD')
  49. newQueryForm['serveDayEnd'] = moment(serveDay[1]).format('YYYY-MM-DD')
  50. } else {
  51. delete newQueryForm['serveDayBegin']
  52. delete newQueryForm['serveDayEnd']
  53. }
  54. if (rechargeDay && rechargeDay?.length === 2) {
  55. newQueryForm['roleCreateDayBegin'] = moment(rechargeDay[0]).format('YYYY-MM-DD')
  56. newQueryForm['roleCreateDayEnd'] = moment(rechargeDay[1]).format('YYYY-MM-DD')
  57. } else {
  58. delete newQueryForm['roleCreateDayBegin']
  59. delete newQueryForm['roleCreateDayEnd']
  60. }
  61. setQueryForm({ ...newQueryForm, ...params })
  62. }}
  63. />}
  64. config={columns12()}
  65. configName={'游戏角色管理'}
  66. fixed={{ left: 4, right: 0 }}
  67. scroll={{ x: 1000, y: 620 }}
  68. title='游戏角色管理'
  69. loading={getRoleManageList.loading}
  70. ajax={getRoleManageList}
  71. page={getRoleManageList?.data?.current || 1}
  72. pageSize={getRoleManageList?.data?.size || 20}
  73. total={getRoleManageList?.data?.total || 0}
  74. dataSource={getRoleManageList?.data?.records?.map((item: any, index: number) => ({ ...item, id: Number(queryForm.pageNum.toString() + (index + '')) }))}
  75. onChange={(pagination: any, _: any, sortData: any) => {
  76. let { current, pageSize } = pagination
  77. let newQueryForm = JSON.parse(JSON.stringify(queryForm))
  78. if (sortData && sortData?.order) {
  79. newQueryForm['sortAsc'] = sortData?.order === 'ascend' ? true : false
  80. newQueryForm['sortFiled'] = sortData?.field
  81. } else {
  82. delete newQueryForm['sortAsc']
  83. delete newQueryForm['sortFiled']
  84. }
  85. newQueryForm.pageNum = current || newQueryForm.pageNum
  86. newQueryForm.pageSize = pageSize || newQueryForm.pageSize
  87. setQueryForm({ ...newQueryForm })
  88. }}
  89. />
  90. </div>
  91. }
  92. export default RoleManage