知与行后台管理端

verifyList.jsx 3.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. import React, { useState, useEffect } from 'react';
  2. import { Form, Input, Button, Icon, Select, message, Table, Divider, Tag, Pagination, Modal, DatePicker } from 'antd';
  3. import { FormattedMessage } from 'umi-plugin-react/locale';
  4. import styles from '../style/GoodsList.less';
  5. import router from 'umi/router';
  6. import moment from 'moment';
  7. import apis from '../../services/apis';
  8. import request from '../../utils/request'
  9. const { Option } = Select;
  10. const { MonthPicker, RangePicker, WeekPicker } = DatePicker;
  11. const header = (props) => {
  12. const [ data, setData ] = useState({})
  13. useEffect(() => {
  14. getVerifyList({pageNum: 1,pageSize: 10, phone: props.location.query.telValue });
  15. },[])
  16. // 查询列表
  17. const getVerifyList = (params) => {
  18. request({ ...apis.integralMall.taPointsExchange, params: { ...params },}).then((data) => {
  19. setData(data)
  20. })
  21. }
  22. const changePageNum = (pageNumber) => {
  23. getVerifyList({ pageNum: 1, pageSize: 10, phone: props.location.query.telValue })
  24. }
  25. const toBack = () => {
  26. router.push({
  27. pathname: '/integralMall/writeOff',
  28. });
  29. }
  30. const changeStatus = (row) => () => {
  31. request({ ...apis.integralMall.changeTaPointsExchange, data: row}).then((data) => {
  32. message.info("操作成功")
  33. getVerifyList({ pageNum: pageNumber, pageSize: 10, phone: props.location.query.telValue })
  34. })
  35. }
  36. const columns = [
  37. {
  38. title: '用户姓名',
  39. dataIndex: 'personName',
  40. key: 'personName',
  41. align: 'center',
  42. },
  43. {
  44. title: '用户类型',
  45. dataIndex: 'personType',
  46. key: 'personType',
  47. align: 'center',
  48. render: (personType)=> <><span>{personType === 'Realty Consultant' ? '置业顾问' : personType === 'Sales Executive' ? '销售主管' : personType === 'estate agent' ? '经纪人' : ''}</span></>
  49. },
  50. {
  51. title: '手机号',
  52. dataIndex: 'phone',
  53. key: 'phone',
  54. align: 'center',
  55. },
  56. {
  57. title: '商品图片',
  58. dataIndex: 'image',
  59. key: 'image',
  60. align: 'center',
  61. render: (text, record) => <img src={record.image} className={styles.touxiang} />,
  62. },
  63. {
  64. title: '商品名称',
  65. dataIndex: 'targetName',
  66. key: 'targetName',
  67. align: 'center',
  68. },
  69. {
  70. title: '兑换时间',
  71. dataIndex: 'createDate',
  72. key: 'createDate',
  73. align: 'center',
  74. render: (createDate) => <><span>{moment(createDate).format('YYYY-MM-DD HH:mm')}</span></>
  75. },
  76. {
  77. title: '领取时间',
  78. dataIndex: 'verifyDate',
  79. key: 'verifyDate',
  80. align: 'center',
  81. render: (verifyDate) => <><span>{verifyDate != null ? moment(verifyDate).format('YYYY-MM-DD HH:mm') : ''}</span></>
  82. },
  83. {
  84. title: '状态',
  85. dataIndex: 'status',
  86. key: 'status',
  87. align: 'center',
  88. render: (status)=> <><span>{status == 1 ? '已领取' : '未领取'}</span></>
  89. },
  90. {
  91. title: '操作',
  92. dataIndex: 'handle',
  93. key: 'handle',
  94. align: 'center',
  95. render: (x,row) => <span style={{ color: '#1990FF' }} onClick={changeStatus(row)}>{ row.status == 1?'':'核销' }</span>
  96. },
  97. ];
  98. return (
  99. <>
  100. <Button type="primary" className={styles.addBtn} onClick={toBack}>返回</Button>
  101. <Table dataSource={data.records} columns={columns} pagination={false} />
  102. <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
  103. <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
  104. </div>
  105. </>
  106. )
  107. }
  108. const WrappedHeader = Form.create({ name: 'header' })(header);
  109. export default WrappedHeader