index.jsx 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. import { useState, useEffect, useMemo } from 'react'
  2. import BasicTable from '@/components/Table'
  3. import { Select } from 'antd'
  4. import { queryDepartmentAndStaffWithOptionId } from '@/services/statistic'
  5. const Usage = () => {
  6. const [state, setState] = useState({
  7. op: 'staff',
  8. opIds: []
  9. })
  10. const queryStaffAndDepartment = async params => {
  11. queryDepartmentAndStaffWithOptionId(params)
  12. }
  13. useEffect(() => {
  14. queryStaffAndDepartment()
  15. }, [])
  16. useEffect(() => {
  17. // 重新发起请求
  18. }, [state.op])
  19. const columns = [
  20. {
  21. title: 'Name',
  22. dataIndex: 'name',
  23. key: 'name',
  24. width: 100,
  25. fixed: 'left'
  26. },
  27. {
  28. title: '未使用',
  29. children: [
  30. {
  31. title: '生成',
  32. key: 'receive',
  33. dataindex: 'receive'
  34. },
  35. {
  36. title: '接受',
  37. key: 'receive',
  38. dataindex: 'receive'
  39. }
  40. ]
  41. },
  42. {
  43. title: '已使用',
  44. children: [
  45. {
  46. title: '借出',
  47. key: 'receive',
  48. dataindex: 'receive'
  49. },
  50. {
  51. title: '销售',
  52. key: 'receive',
  53. dataindex: 'receive'
  54. },
  55. {
  56. title: '赠送',
  57. key: 'receive',
  58. dataindex: 'receive'
  59. }
  60. ]
  61. }
  62. ]
  63. const options = useMemo(() => {}, [state.op])
  64. const handleOnOpIdsChange = () => {}
  65. return (
  66. <div>
  67. <div>
  68. <Select
  69. options={[
  70. { label: '部门', value: 'department' },
  71. { label: '员工', value: 'staff' }
  72. ]}
  73. onChange={val => setState({ ...state, op: val })}
  74. />
  75. <Select className="ml-2" options={options} mode="multiple" onChange={handleOnOpIdsChange} />
  76. </div>
  77. <BasicTable columns={columns} search={false} />
  78. </div>
  79. )
  80. }
  81. export default Usage