index.js 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142
  1. import React, { useState } from "react";
  2. import {Button, message} from 'antd'
  3. import { FilterTable } from 'wptpc-design'
  4. import {dc} from "@/conf/config";
  5. import ModalAE from './components/ModalAE'
  6. import { whiteDl } from '@/pages/ht/service'
  7. import { LongText } from 'wptpc-design'
  8. const apiUrl = `${dc}/api/white/list`
  9. let refreshFunc = () => {}
  10. const Whitelist = () => {
  11. const [visibles, setVisibles] = useState({
  12. ModalAE: false
  13. })
  14. const [idp, setIdp] = useState({
  15. id: '',
  16. phone: ''
  17. })
  18. const handleCancel = () => {
  19. setVisibles({
  20. ...visibles,
  21. ModalAE: false
  22. })
  23. }
  24. const showModalAE = (id, phone) => {
  25. setIdp({
  26. id,
  27. phone
  28. })
  29. setVisibles({
  30. ...visibles,
  31. ModalAE: true
  32. })
  33. }
  34. const handleDel = async (id) => {
  35. const res = await whiteDl({id})
  36. if (res?.code === 0) {
  37. message.success(res.msg)
  38. refreshFunc()
  39. }
  40. }
  41. const filterSetting = {
  42. hasClearBtn: false,
  43. formFields: [
  44. {
  45. label: '手机号:',
  46. type: 'input',
  47. key: 'phone',
  48. placeholder: '用户手机号搜索',
  49. },
  50. ]
  51. }
  52. const tableSetting = {
  53. batchBtns: [
  54. { label: '添加', type: 'primary', enabled: true, onClick: () => showModalAE('',''), key:'id' },
  55. ],
  56. rowKey: 'id',
  57. columnConfig: [
  58. {
  59. align: 'center',
  60. title: '用户ID',
  61. key: 'id',
  62. dataIndex: 'id'
  63. },
  64. {
  65. align: 'center',
  66. title: '用户昵称',
  67. key: 'nickname',
  68. dataIndex: 'nickname'
  69. },
  70. {
  71. align: 'center',
  72. title: '用户手机号',
  73. key: 'telphone',
  74. dataIndex: 'telphone'
  75. },
  76. {
  77. align: 'center',
  78. title: '开通业务',
  79. key: 'whiteScene',
  80. dataIndex: 'whiteScene',
  81. render: (text) => <LongText text={text.toString()} limit={20} />
  82. },
  83. {
  84. align: 'center',
  85. title: '开始时间',
  86. key: 'createTime',
  87. dataIndex: 'createTime'
  88. },
  89. {
  90. align: 'center',
  91. title: '结束时间',
  92. key: 'expireTime',
  93. dataIndex: 'expireTime'
  94. },
  95. {
  96. align: 'center',
  97. title: '操作',
  98. key: 'userinfoId',
  99. dataIndex: 'userinfoId',
  100. render: (_, record) => {
  101. return(
  102. <div key={_}>
  103. <Button onClick={() => showModalAE(record.id, record.telphone)} type='link'>编辑</Button>
  104. <Button onClick={() => handleDel(record.id)} type='link'>删除</Button>
  105. </div>
  106. )
  107. }
  108. },
  109. ],
  110. getRefresh: refresh => {
  111. refreshFunc = refresh
  112. },
  113. }
  114. return (
  115. <div>
  116. <FilterTable
  117. filterSetting={filterSetting}
  118. tableSetting={tableSetting}
  119. apiUrl={apiUrl}
  120. />
  121. {
  122. visibles.ModalAE &&
  123. <ModalAE
  124. handleCancel={handleCancel}
  125. visible={visibles.ModalAE}
  126. idp={idp}
  127. refreshFunc={refreshFunc}
  128. />
  129. }
  130. </div>
  131. )
  132. }
  133. export default Whitelist