许静 vor 5 Jahren
Ursprung
Commit
2684473156
31 geänderte Dateien mit 127 neuen und 93 gelöschten Zeilen
  1. 9
    0
      src/global.less
  2. 65
    45
      src/pages/Welcome.jsx
  3. 1
    1
      src/pages/activity/ActivityList.jsx
  4. 1
    1
      src/pages/activity/SignList.jsx
  5. 1
    1
      src/pages/building/list/add/components/imageSet.jsx
  6. 2
    2
      src/pages/building/type/index.jsx
  7. 1
    1
      src/pages/carouselFigure/advertisingList.jsx
  8. 1
    1
      src/pages/carouselFigure/carouselFigureList.jsx
  9. 1
    1
      src/pages/channel/InviteClients.jsx
  10. 1
    1
      src/pages/channel/brokerList.jsx
  11. 1
    1
      src/pages/channel/channelList.jsx
  12. 1
    1
      src/pages/channel/recommendClients.jsx
  13. 1
    1
      src/pages/customer/customerlist/components/attribution.jsx
  14. 1
    1
      src/pages/customer/customerlist/components/integralRecord.jsx
  15. 1
    1
      src/pages/customer/customerlist/customerDetail.jsx
  16. 6
    6
      src/pages/customer/customerlist/index.jsx
  17. 2
    2
      src/pages/customer/drift/index.jsx
  18. 6
    6
      src/pages/customer/independentList/index.jsx
  19. 6
    6
      src/pages/customer/recommendCustomer/index.jsx
  20. 2
    2
      src/pages/customer/report/index.jsx
  21. 1
    1
      src/pages/indexEcharts/components/IntentionalCustomers.jsx
  22. 2
    2
      src/pages/indexEcharts/components/UserBehavior.jsx
  23. 1
    1
      src/pages/integralMall/GoodsList.jsx
  24. 2
    2
      src/pages/integralMall/achieve.jsx
  25. 1
    1
      src/pages/integralMall/exchangeRecords.jsx
  26. 1
    1
      src/pages/integralMall/verifyList.jsx
  27. 1
    1
      src/pages/news/type/NewsType.jsx
  28. 1
    1
      src/pages/staff/list/RoleList.jsx
  29. 1
    1
      src/pages/system/housingPolicy.jsx
  30. 1
    1
      src/pages/system/messageList.jsx
  31. 5
    0
      src/services/apis.js

+ 9
- 0
src/global.less Datei anzeigen

89
   padding: 0 0 0 10px;
89
   padding: 0 0 0 10px;
90
   align-items: center;
90
   align-items: center;
91
 }
91
 }
92
+.ant-radio-button-wrapper{
93
+  color: #FF7E48;
94
+  border: 1px solid #FF7E48;
95
+}
96
+.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled) {
97
+  color: #fff;
98
+  background: #FF7E48;
99
+  border-color: #FF7E48;
100
+}
92
 .ant-row.ant-form-item .ant-form-item-label.ant-col-sm-3{
101
 .ant-row.ant-form-item .ant-form-item-label.ant-col-sm-3{
93
   min-width: 100px;
102
   min-width: 100px;
94
 }
103
 }

+ 65
- 45
src/pages/Welcome.jsx Datei anzeigen

1
-import React from 'react';
1
+import React, { useEffect, useState } from 'react';
2
 import { Card, Typography, Alert, Row, Col } from 'antd';
2
 import { Card, Typography, Alert, Row, Col } from 'antd';
3
 import { FormattedMessage } from 'umi-plugin-react/locale';
3
 import { FormattedMessage } from 'umi-plugin-react/locale';
4
 import EchartsTest from '../components/EchartsTest';
4
 import EchartsTest from '../components/EchartsTest';
5
 import IndexEcharts from './indexEcharts/index';
5
 import IndexEcharts from './indexEcharts/index';
6
 import router from 'umi/router';
6
 import router from 'umi/router';
7
+import apis from '../services/apis';
8
+import request from '../utils/request'
9
+const Welcome = (props) => {
7
 
10
 
8
-const option = {
9
-  xAxis: {
10
-    type: 'category',
11
-    data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
12
-  },
13
-  yAxis: {
14
-    type: 'value'
15
-  },
16
-  series: [{
17
-    data: [820, 932, 901, 934, 1290, 1330, 1320],
18
-    type: 'line'
19
-  }]
20
-};
11
+  const option = {
12
+    xAxis: {
13
+      type: 'category',
14
+      data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
15
+    },
16
+    yAxis: {
17
+      type: 'value'
18
+    },
19
+    series: [{
20
+      data: [820, 932, 901, 934, 1290, 1330, 1320],
21
+      type: 'line'
22
+    }]
23
+  };
24
+  useEffect(() => {
25
+    echratsInfo();
26
+  }, [])
27
+  const [data, setData] = useState({ records: [] })
28
+  function echratsInfo(params) {
29
+    request({
30
+      ...apis.indexEcharts.list,
31
+      params,
32
+    }).then((data) => {
33
+      setData(data)
34
+      console.log(data, "666666666666666666666666666666")
21
 
35
 
22
-export default () => (
23
-  <>
24
-    <div style={{ display: 'flex',marginBottom:'28px' }}>
25
-      <div style={{
26
-        textAlign: 'center', display: 'flex', justifyContent: 'center', lineHeight: '100px', background: 'linear-gradient(144deg,rgba(241,43,62,1) 0%,rgba(254,144,155,1) 100%)', height: '100px',
27
-        boxShadow: '0px  0.11rem 14px -15px rgba(241,43,62,1)',
28
-        borderRadius: '12px', width: '32%', marginRight: '2%'
29
-      }}>
30
-        <span style={{ fontSize: '24px', color: '#fff' }}>总用户 </span>
31
-        <span style={{ fontSize: '52px', color: '#fff', marginLeft: '26px', fontFamily: 'fantasy' }}>133</span>
32
-      </div>
33
-      <div style={{
34
-        textAlign: 'center', display: 'flex', justifyContent: 'center', lineHeight: '100px', background: 'linear-gradient(144deg,rgba(255,126,74,1) 0%,rgba(255,196,168,1) 100%)', height: '100px',
35
-        boxShadow: '0px  0.11rem 14px -15px rgba(255,126,74,1)',
36
-        borderRadius: '12px', width: '32%', marginRight: '2%'
37
-      }}>
38
-        <span style={{ fontSize: '24px', color: '#fff' }}>总注册用户 </span>
39
-        <span style={{ fontSize: '52px', color: '#fff', marginLeft: '26px', fontFamily: 'fantasy' }}>12</span>
40
-      </div>
41
-      <div onClick={()=>router.push('/indexEcharts/newUsers')} style={{
42
-        textAlign: 'center', display: 'flex', justifyContent: 'center', background: 'linear-gradient(137deg,rgba(107,130,230,1) 0%,rgba(152,175,251,1) 100%)', height: '100px',
43
-        boxShadow: '0px  0.11rem 14px -15px rgba(107,130,230,1)',
44
-        borderRadius: '12px', width: '32%',
45
-      }}>
46
-        <span style={{ fontSize: '24px', color: '#fff',borderBottom:'1px solid #fff',margin:'30px 0' }}>最近7天新增 </span>
47
-        <span style={{ fontSize: '52px', color: '#fff', marginLeft: '26px', fontFamily: 'fantasy', lineHeight: '100px' }}>91</span>
36
+    })
37
+  }
38
+
39
+  return (
40
+    <>
41
+      <div style={{ display: 'flex', marginBottom: '28px' }}>
42
+        <div style={{
43
+          textAlign: 'center', display: 'flex', justifyContent: 'center', lineHeight: '100px', background: 'linear-gradient(144deg,rgba(241,43,62,1) 0%,rgba(254,144,155,1) 100%)', height: '100px',
44
+          boxShadow: '0px  0.11rem 14px -15px rgba(241,43,62,1)',
45
+          borderRadius: '12px', width: '32%', marginRight: '2%'
46
+        }}>
47
+          <span style={{ fontSize: '24px', color: '#fff' }}>总用户 </span>
48
+          <span style={{ fontSize: '52px', color: '#fff', marginLeft: '26px', fontFamily: 'fantasy' }}>{data.selectUserCount || '0'}</span>
49
+        </div>
50
+        <div style={{
51
+          textAlign: 'center', display: 'flex', justifyContent: 'center', lineHeight: '100px', background: 'linear-gradient(144deg,rgba(255,126,74,1) 0%,rgba(255,196,168,1) 100%)', height: '100px',
52
+          boxShadow: '0px  0.11rem 14px -15px rgba(255,126,74,1)',
53
+          borderRadius: '12px', width: '32%', marginRight: '2%'
54
+        }}>
55
+          <span style={{ fontSize: '24px', color: '#fff' }}>总注册用户 </span>
56
+          <span style={{ fontSize: '52px', color: '#fff', marginLeft: '26px', fontFamily: 'fantasy' }}>{data.selectRegisteredCount || '0'}</span>
57
+        </div>
58
+        <div onClick={() => router.push('/indexEcharts/newUsers')} style={{
59
+          textAlign: 'center', display: 'flex', justifyContent: 'center', background: 'linear-gradient(137deg,rgba(107,130,230,1) 0%,rgba(152,175,251,1) 100%)', height: '100px',
60
+          boxShadow: '0px  0.11rem 14px -15px rgba(107,130,230,1)',
61
+          borderRadius: '12px', width: '32%',
62
+        }}>
63
+          <span style={{ fontSize: '24px', color: '#fff', borderBottom: '1px solid #fff', margin: '30px 0' }}>最近7天新增 </span>
64
+          <span style={{ fontSize: '52px', color: '#fff', marginLeft: '26px', fontFamily: 'fantasy', lineHeight: '100px' }}>{data.selectRecentlyCount || '0'}</span>
65
+        </div>
48
       </div>
66
       </div>
49
-    </div>
50
-    <IndexEcharts style={{ width: '100%'}}></IndexEcharts>
67
+      <IndexEcharts style={{ width: '100%' }}></IndexEcharts>
68
+
69
+      {/* <EchartsTest style={{ width: 500, height: 500 }}></EchartsTest> */}
51
 
70
 
52
-    {/* <EchartsTest style={{ width: 500, height: 500 }}></EchartsTest> */}
71
+    </>
72
+  )
73
+}
74
+export default Welcome;
53
 
75
 
54
-  </>
55
-);
56
 
76
 

+ 1
- 1
src/pages/activity/ActivityList.jsx Datei anzeigen

247
       <AuthButton name="admin.buildingDynamic.add.post" noRight={null}>
247
       <AuthButton name="admin.buildingDynamic.add.post" noRight={null}>
248
         <Button type="danger" className={styles.addBtn} onClick={toEditGoods()}>新增</Button>
248
         <Button type="danger" className={styles.addBtn} onClick={toEditGoods()}>新增</Button>
249
       </AuthButton>
249
       </AuthButton>
250
-      <Table dataSource={data.list} columns={columns} pagination={false}/>
250
+      <Table dataSource={data.list} columns={columns} pagination={false} rowKey="activityList"/>
251
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
251
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
252
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
252
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
253
       </div>
253
       </div>

+ 1
- 1
src/pages/activity/SignList.jsx Datei anzeigen

69
   return (
69
   return (
70
     <>
70
     <>
71
       <Button type="primary" className={styles.addBtn} onClick={toActivityList}>返回</Button>
71
       <Button type="primary" className={styles.addBtn} onClick={toActivityList}>返回</Button>
72
-      <Table dataSource={data.list.data} columns={columns} pagination={false} />
72
+      <Table dataSource={data.list.data} columns={columns} pagination={false} rowKey="activity"/>
73
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
73
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
74
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
74
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
75
       </div>
75
       </div>

+ 1
- 1
src/pages/building/list/add/components/imageSet.jsx Datei anzeigen

137
   return (
137
   return (
138
     <>
138
     <>
139
       <Button type="primary" onClick={() => showEdi()}>新增户型库</Button>
139
       <Button type="primary" onClick={() => showEdi()}>新增户型库</Button>
140
-      <Table dataSource={data} columns={columns} pagination={false} />
140
+      <Table dataSource={data} columns={columns} pagination={false} rowKey="imageSet" />
141
 
141
 
142
       {/* 编辑页 */}
142
       {/* 编辑页 */}
143
       {/*  onSuccess是子组件传递事件信息  */}
143
       {/*  onSuccess是子组件传递事件信息  */}

+ 2
- 2
src/pages/building/type/index.jsx Datei anzeigen

27
       title: '创建时间',
27
       title: '创建时间',
28
       dataIndex: 'createDate',
28
       dataIndex: 'createDate',
29
       key: 'createDate',
29
       key: 'createDate',
30
-      render: (_, record) => <sapn>{moment(record.createDate).format('YYYY-MM-DD')}</sapn>,
30
+      render: (_, record) => <span>{moment(record.createDate).format('YYYY-MM-DD')}</span>,
31
     },
31
     },
32
     {
32
     {
33
       title: '操作',
33
       title: '操作',
100
       <AuthButton name="admin.tdBuildingType.post" noRight={null}>
100
       <AuthButton name="admin.tdBuildingType.post" noRight={null}>
101
         <Button type="danger" onClick={() => toEdi()}>新增类型</Button>
101
         <Button type="danger" onClick={() => toEdi()}>新增类型</Button>
102
       </AuthButton>
102
       </AuthButton>
103
-      <Table style={{ marginTop: '30px' }} dataSource={data.records} columns={columns} pagination={false} />
103
+      <Table style={{ marginTop: '30px' }} dataSource={data.records} columns={columns} pagination={false} rowKey="buildingType"/>
104
       {/* 分页 */}
104
       {/* 分页 */}
105
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
105
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
106
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={onChange} />
106
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={onChange} />

+ 1
- 1
src/pages/carouselFigure/advertisingList.jsx Datei anzeigen

209
       <AuthButton name="admin.extendContent.post" noRight={null}>
209
       <AuthButton name="admin.extendContent.post" noRight={null}>
210
         <Button type="danger" className={styles.addBtn} onClick={toEdit()}>新增</Button>
210
         <Button type="danger" className={styles.addBtn} onClick={toEdit()}>新增</Button>
211
       </AuthButton>
211
       </AuthButton>
212
-      <Table dataSource={data.records} columns={columns} pagination={false}/>
212
+      <Table dataSource={data.records} columns={columns} pagination={false} rowKey="advertisingList"/>
213
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
213
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
214
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
214
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
215
       </div>
215
       </div>

+ 1
- 1
src/pages/carouselFigure/carouselFigureList.jsx Datei anzeigen

209
       <AuthButton name="admin.extendContent.post" noRight={null}>
209
       <AuthButton name="admin.extendContent.post" noRight={null}>
210
         <Button type="danger" className={styles.addBtn} onClick={toEditCarouse()}>新增</Button>
210
         <Button type="danger" className={styles.addBtn} onClick={toEditCarouse()}>新增</Button>
211
       </AuthButton>
211
       </AuthButton>
212
-      <Table dataSource={data.records} columns={columns} pagination={false}/>
212
+      <Table dataSource={data.records} columns={columns} pagination={false} rowKey="carouseFigureList"/>
213
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
213
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
214
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
214
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
215
       </div>
215
       </div>

+ 1
- 1
src/pages/channel/InviteClients.jsx Datei anzeigen

79
     <>
79
     <>
80
       <div className={channels.searchBox}>
80
       <div className={channels.searchBox}>
81
       </div>
81
       </div>
82
-      <Table dataSource={data.records} columns={columns} pagination={{ pageSize: 10, total: data.total, onChange }} />
82
+      <Table dataSource={data.records} rowKey="InviteClient" columns={columns} pagination={{ pageSize: 10, total: data.total, onChange }} />
83
   </>
83
   </>
84
   )
84
   )
85
 }
85
 }

+ 1
- 1
src/pages/channel/brokerList.jsx Datei anzeigen

157
       {/* <Button onClick={() => refurbishList() }>重置</Button> */}
157
       {/* <Button onClick={() => refurbishList() }>重置</Button> */}
158
     </div>
158
     </div>
159
     </div>
159
     </div>
160
-    <Table style={{marginTop:'40px'}} dataSource={data.list} columns={columns} pagination={{ pageSize: 10, total: data.total, onChange }} />
160
+    <Table style={{marginTop:'40px'}} dataSource={data.list} columns={columns} pagination={{ pageSize: 10, total: data.total, onChange }} rowKey="brokerList"/>
161
   </>
161
   </>
162
 )
162
 )
163
 }
163
 }

+ 1
- 1
src/pages/channel/channelList.jsx Datei anzeigen

192
       <AuthButton name="admin.channel.post" noRight={null}>
192
       <AuthButton name="admin.channel.post" noRight={null}>
193
         <Button type="danger" onClick={toAdd} className={channels.about} >新增</Button>
193
         <Button type="danger" onClick={toAdd} className={channels.about} >新增</Button>
194
       </AuthButton>
194
       </AuthButton>
195
-      <Table dataSource={data.result.records} columns={columns} pagination={{ pageSize: 10, total: data.result.total, onChange }} />
195
+      <Table dataSource={data.result.records} columns={columns} rowKey="channelList" pagination={{ pageSize: 10, total: data.result.total, onChange }} />
196
     </>
196
     </>
197
   )
197
   )
198
 }
198
 }

+ 1
- 1
src/pages/channel/recommendClients.jsx Datei anzeigen

131
     }
131
     }
132
 return (
132
 return (
133
   <>
133
   <>
134
-  <Table dataSource={data.records} columns={columns} pagination={{ pageSize: 10, total: data.total, onChange }} />
134
+  <Table dataSource={data.records} rowKey="recommendClist" columns={columns} pagination={{ pageSize: 10, total: data.total, onChange }} />
135
   </>
135
   </>
136
 )
136
 )
137
 }
137
 }

+ 1
- 1
src/pages/customer/customerlist/components/attribution.jsx Datei anzeigen

138
             // onOk={() => this.handleOk()}
138
             // onOk={() => this.handleOk()}
139
             onCancel={(e) => this.handleCancel(e)}
139
             onCancel={(e) => this.handleCancel(e)}
140
           >
140
           >
141
-            <Table dataSource={this.state.dataSource.records} columns={columns} pagination={{ total: this.state.dataSource.total, onChange: e => this.onChange(e) }} />
141
+            <Table rowKey="attribution" dataSource={this.state.dataSource.records} columns={columns} pagination={{ total: this.state.dataSource.total, onChange: e => this.onChange(e) }} />
142
           </Modal>
142
           </Modal>
143
       </>
143
       </>
144
     );
144
     );

+ 1
- 1
src/pages/customer/customerlist/components/integralRecord.jsx Datei anzeigen

140
             // onOk={() => this.handleOk()}
140
             // onOk={() => this.handleOk()}
141
             onCancel={(e) => this.handleCancel(e)}
141
             onCancel={(e) => this.handleCancel(e)}
142
           >
142
           >
143
-            <Table dataSource={this.state.dataSource.result.records} columns={columns} pagination={{ total: this.state.dataSource.result.total, onChange: e => this.onChange(e) }} />
143
+            <Table dataSource={this.state.dataSource.result.records} rowKey="integralrecord" columns={columns} pagination={{ total: this.state.dataSource.result.total, onChange: e => this.onChange(e) }} />
144
           </Modal>
144
           </Modal>
145
       </>
145
       </>
146
     );
146
     );

+ 1
- 1
src/pages/customer/customerlist/customerDetail.jsx Datei anzeigen

103
       </div>
103
       </div>
104
       <div className={styles.recordBox}>
104
       <div className={styles.recordBox}>
105
         <p className={styles.tableName}>访问记录</p>
105
         <p className={styles.tableName}>访问记录</p>
106
-        <Table dataSource={data.visitRecords} columns={columns} pagination={false} />
106
+        <Table dataSource={data.visitRecords} columns={columns} pagination={false} rowKey="customerDetail" />
107
       </div>
107
       </div>
108
 
108
 
109
     </>
109
     </>

+ 6
- 6
src/pages/customer/customerlist/index.jsx Datei anzeigen

151
       dataIndex: 'name',
151
       dataIndex: 'name',
152
       key: 'name',
152
       key: 'name',
153
       // eslint-disable-next-line no-nested-ternary
153
       // eslint-disable-next-line no-nested-ternary
154
-      render: (_, record) => <><sapn>{customerType === 'private' ? record.name : record.nickname}</sapn></>,
154
+      render: (_, record) => <><span>{customerType === 'private' ? record.name : record.nickname}</span></>,
155
     },
155
     },
156
     {
156
     {
157
       title: '电话',
157
       title: '电话',
163
       dataIndex: 'sex',
163
       dataIndex: 'sex',
164
       key: 'sex',
164
       key: 'sex',
165
       // eslint-disable-next-line no-nested-ternary
165
       // eslint-disable-next-line no-nested-ternary
166
-      render: (_, record) => <><sapn>{record.sex === 1 ? '男' : record.sex === 2 ? '女' : '未知'}</sapn></>,
166
+      render: (_, record) => <><span>{record.sex === 1 ? '男' : record.sex === 2 ? '女' : '未知'}</span></>,
167
     },
167
     },
168
     {
168
     {
169
       title: '置业顾问',
169
       title: '置业顾问',
172
       // eslint-disable-next-line no-nested-ternary
172
       // eslint-disable-next-line no-nested-ternary
173
       render: (_, record) => (
173
       render: (_, record) => (
174
         <>
174
         <>
175
-          <sapn>{record.consultantName}</sapn>
175
+          <span>{record.consultantName}</span>
176
           <br />
176
           <br />
177
-          <sapn>{record.consultTel}</sapn>
177
+          <span>{record.consultTel}</span>
178
         </>
178
         </>
179
       ),
179
       ),
180
     },
180
     },
183
       dataIndex: 'reportRecommendStatus',
183
       dataIndex: 'reportRecommendStatus',
184
       key: 'reportRecommendStatus',
184
       key: 'reportRecommendStatus',
185
       // eslint-disable-next-line no-nested-ternary
185
       // eslint-disable-next-line no-nested-ternary
186
-      render: (_, record) => <><sapn>{record.reportRecommendStatus === 0 ? '为报备' : record.reportRecommendStatus === 1 ? '报备' : record.reportRecommendStatus === 2 ? '推荐' : ''}</sapn></>,
186
+      render: (_, record) => <><span>{record.reportRecommendStatus === 0 ? '为报备' : record.reportRecommendStatus === 1 ? '报备' : record.reportRecommendStatus === 2 ? '推荐' : ''}</span></>,
187
     },
187
     },
188
     {
188
     {
189
       title: '操作',
189
       title: '操作',
268
           </Radio.Group>
268
           </Radio.Group>
269
         </AuthButton>
269
         </AuthButton>
270
       </div>
270
       </div>
271
-      <Table dataSource={dataSource.records} columns={columns} pagination={{ total: dataSource.total, onChange }} />
271
+      <Table dataSource={dataSource.records} columns={columns} pagination={{ total: dataSource.total, onChange }} rowKey="customerList" />
272
 
272
 
273
       {/* 调整归属 */}
273
       {/* 调整归属 */}
274
       <Attribution visibleData={gVisibleData} />
274
       <Attribution visibleData={gVisibleData} />

+ 2
- 2
src/pages/customer/drift/index.jsx Datei anzeigen

54
       dataIndex: 'gender',
54
       dataIndex: 'gender',
55
       key: 'gender',
55
       key: 'gender',
56
       // eslint-disable-next-line no-nested-ternary
56
       // eslint-disable-next-line no-nested-ternary
57
-      render: (_, record) => <><sapn>{ record.gender === '1' ? '男' : record.gender === '2' ? '女' : '未知' }</sapn></>,
57
+      render: (_, record) => <><span>{ record.gender === '1' ? '男' : record.gender === '2' ? '女' : '未知' }</span></>,
58
     },
58
     },
59
   ];
59
   ];
60
 
60
 
61
   return (
61
   return (
62
     // eslint-disable-next-line max-len
62
     // eslint-disable-next-line max-len
63
-    <Table dataSource={dataSources.records} columns={columns} pagination={{ total: dataSources.total, onChange }} />
63
+    <Table dataSource={dataSources.records} rowKey="drift" columns={columns} pagination={{ total: dataSources.total, onChange }} />
64
   )
64
   )
65
 }
65
 }
66
 
66
 

+ 6
- 6
src/pages/customer/independentList/index.jsx Datei anzeigen

132
             // onOk={() => this.handleOk()}
132
             // onOk={() => this.handleOk()}
133
             onCancel={(e) => this.handleCancel(e)}
133
             onCancel={(e) => this.handleCancel(e)}
134
           >
134
           >
135
-            <Table dataSource={this.state.dataSource.records} columns={columns} pagination={{ total: this.state.dataSource.total, onChange: e => this.onChange(e) }} />
135
+            <Table rowKey="independentList" dataSource={this.state.dataSource.records} columns={columns} pagination={{ total: this.state.dataSource.total, onChange: e => this.onChange(e) }} />
136
           </Modal>
136
           </Modal>
137
       </>
137
       </>
138
     );
138
     );
243
             // onOk={() => this.handleOk()}
243
             // onOk={() => this.handleOk()}
244
             onCancel={(e) => this.handleCancel(e)}
244
             onCancel={(e) => this.handleCancel(e)}
245
           >
245
           >
246
-            <Table dataSource={this.state.dataSource.records} columns={columns} pagination={{ total: this.state.dataSource.total, onChange: e => this.onChange(e) }} />
246
+            <Table rowKey="independent" dataSource={this.state.dataSource.records} columns={columns} pagination={{ total: this.state.dataSource.total, onChange: e => this.onChange(e) }} />
247
           </Modal>
247
           </Modal>
248
       </>
248
       </>
249
     );
249
     );
374
       dataIndex: 'gender',
374
       dataIndex: 'gender',
375
       key: 'gender',
375
       key: 'gender',
376
       // eslint-disable-next-line no-nested-ternary
376
       // eslint-disable-next-line no-nested-ternary
377
-      render: (_, record) => <><sapn>{ record.gender === '1' ? '男' : record.gender === '2' ? '女' : '未知' }</sapn></>,
377
+      render: (_, record) => <><span>{ record.gender === '1' ? '男' : record.gender === '2' ? '女' : '未知' }</span></>,
378
     },
378
     },
379
     {
379
     {
380
       title: '类型',
380
       title: '类型',
381
       dataIndex: 'personType',
381
       dataIndex: 'personType',
382
       key: 'personType',
382
       key: 'personType',
383
-      render: (_, record) => <><sapn>{ record.channelName !== null ? '渠道经纪人' : '独立经纪人' }</sapn></>,
383
+      render: (_, record) => <><span>{ record.channelName !== null ? '渠道经纪人' : '独立经纪人' }</span></>,
384
     },
384
     },
385
     {
385
     {
386
       title: '所属渠道',
386
       title: '所属渠道',
395
         <>
395
         <>
396
           {
396
           {
397
             <>
397
             <>
398
-              {/* <sapn style={{ color: 'rgba(239,39,58,1)' }}>查看详细</sapn> */}
398
+              {/* <span style={{ color: 'rgba(239,39,58,1)' }}>查看详细</span> */}
399
               <AuthButton name="admin.channel.InviteClientsList.get" noRight={null}>
399
               <AuthButton name="admin.channel.InviteClientsList.get" noRight={null}>
400
                 <a style={{ color: 'rgba(239,39,58,1)' }} onClick={() => Invite(record)}>邀请经纪人</a>
400
                 <a style={{ color: 'rgba(239,39,58,1)' }} onClick={() => Invite(record)}>邀请经纪人</a>
401
               </AuthButton>
401
               </AuthButton>
438
       <Button type="primary" onClick={() => exportIndependen()} className={Styles.SubmitButton} style={{ marginTop: '5px', marginBottom: '5px' }}>
438
       <Button type="primary" onClick={() => exportIndependen()} className={Styles.SubmitButton} style={{ marginTop: '5px', marginBottom: '5px' }}>
439
         导出数据
439
         导出数据
440
       </Button>
440
       </Button>
441
-      <Table dataSource={dataSource.records} columns={columns} pagination={{ total: dataSource.total, onChange }} />
441
+      <Table rowKey="independentIndex" dataSource={dataSource.records} columns={columns} pagination={{ total: dataSource.total, onChange }} />
442
             {/* 调整归属 */}
442
             {/* 调整归属 */}
443
         <ModalTable visibleData={gVisibleData} />
443
         <ModalTable visibleData={gVisibleData} />
444
         <InviteTable visibleData={gInviteData} />
444
         <InviteTable visibleData={gInviteData} />

+ 6
- 6
src/pages/customer/recommendCustomer/index.jsx Datei anzeigen

128
       dataIndex: 'sex',
128
       dataIndex: 'sex',
129
       key: 'sex',
129
       key: 'sex',
130
       // eslint-disable-next-line no-nested-ternary
130
       // eslint-disable-next-line no-nested-ternary
131
-      render: (_, record) => <><sapn>{ record.sex === 1 ? '男' : record.sex === 2 ? '女' : '未知' }</sapn></>,
131
+      render: (_, record) => <><span>{ record.sex === 1 ? '男' : record.sex === 2 ? '女' : '未知' }</span></>,
132
     },
132
     },
133
     {
133
     {
134
       title: '意向项目',
134
       title: '意向项目',
139
       title: '推荐人',
139
       title: '推荐人',
140
       dataIndex: 'consultantName',
140
       dataIndex: 'consultantName',
141
       key: 'consultantName',
141
       key: 'consultantName',
142
-      render: (_, record) => <><sapn>{ record.recommendName + " " + record.recommendTel }</sapn></>,
142
+      render: (_, record) => <><span>{ record.recommendName + " " + record.recommendTel }</span></>,
143
     },
143
     },
144
     {
144
     {
145
       title: '推荐时间',
145
       title: '推荐时间',
146
       dataIndex: 'createDate',
146
       dataIndex: 'createDate',
147
       key: 'createDate',
147
       key: 'createDate',
148
-      render: (_, record) => <><sapn>{ record.createDate && moment(record.createDate).format('YYYY-MM-DD') }</sapn></>,
148
+      render: (_, record) => <><span>{ record.createDate && moment(record.createDate).format('YYYY-MM-DD') }</span></>,
149
     },
149
     },
150
     {
150
     {
151
       title: '状态',
151
       title: '状态',
152
       dataIndex: 'verifyStatus',
152
       dataIndex: 'verifyStatus',
153
       key: 'verifyStatus',
153
       key: 'verifyStatus',
154
-      render: (_, record) => <><sapn>{ record.verifyStatus === 0 ? '未通过': record.verifyStatus === 1 ? '已通过' : record.verifyStatus === 2 ? '已驳回' : '' }</sapn></>,
154
+      render: (_, record) => <><span>{ record.verifyStatus === 0 ? '未通过': record.verifyStatus === 1 ? '已通过' : record.verifyStatus === 2 ? '已驳回' : '' }</span></>,
155
     },
155
     },
156
     {
156
     {
157
       title: '操作',
157
       title: '操作',
161
         <>
161
         <>
162
           {
162
           {
163
             <AuthButton name="admin.customer.recommend.verify.id.put" noRight={null}>
163
             <AuthButton name="admin.customer.recommend.verify.id.put" noRight={null}>
164
-              {record.verifyStatus === 0 ? <sapn style={{ color: 'rgba(239,39,58,1)' }} onClick={() => toAudit(record.customerId)}>审核</sapn> : ''}
164
+              {record.verifyStatus === 0 ? <span style={{ color: 'rgba(239,39,58,1)' }} onClick={() => toAudit(record.customerId)}>审核</span> : ''}
165
             </AuthButton>
165
             </AuthButton>
166
           }
166
           }
167
         </>
167
         </>
216
       <Button type="primary" onClick={() => exportRecommendCustomer()} className={Styles.SubmitButton} style={{ marginTop: '5px', marginBottom: '5px' }}>
216
       <Button type="primary" onClick={() => exportRecommendCustomer()} className={Styles.SubmitButton} style={{ marginTop: '5px', marginBottom: '5px' }}>
217
         导出数据
217
         导出数据
218
       </Button>
218
       </Button>
219
-      <Table dataSource={dataSource.records} columns={columns} pagination={{ total: dataSource.total, onChange }} />
219
+      <Table rowKey="recommendCustomer" dataSource={dataSource.records} columns={columns} pagination={{ total: dataSource.total, onChange }} />
220
     </>
220
     </>
221
   );
221
   );
222
 }
222
 }

+ 2
- 2
src/pages/customer/report/index.jsx Datei anzeigen

112
       dataIndex: 'sex',
112
       dataIndex: 'sex',
113
       key: 'sex',
113
       key: 'sex',
114
       // eslint-disable-next-line no-nested-ternary
114
       // eslint-disable-next-line no-nested-ternary
115
-      render: (_, record) => <><sapn>{ record.sex === 1 ? '男' : record.sex === 2 ? '女' : '未知' }</sapn></>,
115
+      render: (_, record) => <><span>{ record.sex === 1 ? '男' : record.sex === 2 ? '女' : '未知' }</span></>,
116
     },
116
     },
117
     {
117
     {
118
       title: '意向项目',
118
       title: '意向项目',
182
       <Button type="primary" onClick={() => exportReport()} className={Styles.SubmitButton} style={{ marginTop: '5px' }}>
182
       <Button type="primary" onClick={() => exportReport()} className={Styles.SubmitButton} style={{ marginTop: '5px' }}>
183
         导出数据
183
         导出数据
184
       </Button>
184
       </Button>
185
-      <Table style={{marginTop:'40px'}} dataSource={dataSource.records} columns={columns} pagination={{ total: dataSource.total, onChange }} />
185
+      <Table rowKey="report" style={{marginTop:'40px'}} dataSource={dataSource.records} columns={columns} pagination={{ total: dataSource.total, onChange }} />
186
     </>
186
     </>
187
   );
187
   );
188
 }
188
 }

+ 1
- 1
src/pages/indexEcharts/components/IntentionalCustomers.jsx Datei anzeigen

86
 
86
 
87
         <BuildSelect slot='action' onChange={(e => handleBuildingChange(e))}></BuildSelect>
87
         <BuildSelect slot='action' onChange={(e => handleBuildingChange(e))}></BuildSelect>
88
 
88
 
89
-        <Table dataSource={data.records} columns={columns} style={{marginTop:'15px'}} pagination={false} scroll={{ y: 500 }} />
89
+        <Table rowKey="IntentionalCustomers" dataSource={data.records} columns={columns} style={{marginTop:'15px'}} pagination={false} scroll={{ y: 500 }} />
90
 
90
 
91
       </div>
91
       </div>
92
 
92
 

+ 2
- 2
src/pages/indexEcharts/components/UserBehavior.jsx Datei anzeigen

91
           onCancel={() => this.handleCancel()}
91
           onCancel={() => this.handleCancel()}
92
           footer={null}
92
           footer={null}
93
         >
93
         >
94
-         <Table dataSource={this.state.eventList} columns={eventcolumns} pagination={false} rowKey="eventall" scroll={{ y: 400 }} />
94
+         <Table rowKey="UserBehavior" dataSource={this.state.eventList} columns={eventcolumns} pagination={false} rowKey="eventall" scroll={{ y: 400 }} />
95
         </Modal>
95
         </Modal>
96
       </>
96
       </>
97
     )
97
     )
269
         </div>
269
         </div>
270
         <EChart onClick={() => router.push('/indexEcharts/userBehavior')} options={options} style={style} />
270
         <EChart onClick={() => router.push('/indexEcharts/userBehavior')} options={options} style={style} />
271
         {props.tableShow &&
271
         {props.tableShow &&
272
-          <Table dataSource={recordList} columns={columns} pagination={false} rowKey="userbehavior" scroll={{ y: 500 }} />
272
+          <Table rowKey="UserBehaviorTwo" dataSource={recordList} columns={columns} pagination={false} rowKey="userbehavior" scroll={{ y: 500 }} />
273
         }
273
         }
274
       </div>
274
       </div>
275
       <EventcoModal visibleData={visibleData} onSuccess={() => onSuccess()} />
275
       <EventcoModal visibleData={visibleData} onSuccess={() => onSuccess()} />

+ 1
- 1
src/pages/integralMall/GoodsList.jsx Datei anzeigen

193
       <AuthButton name="admin.taGoods.add.post" noRight={null}>
193
       <AuthButton name="admin.taGoods.add.post" noRight={null}>
194
         <Button type="danger" className={styles.addBtn} onClick={toEditGoods()}>新增</Button>
194
         <Button type="danger" className={styles.addBtn} onClick={toEditGoods()}>新增</Button>
195
       </AuthButton>
195
       </AuthButton>
196
-      <Table dataSource={data.records} columns={columns} pagination={false} />
196
+      <Table rowKey="goodsList" dataSource={data.records} columns={columns} pagination={false} />
197
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
197
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
198
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
198
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
199
       </div>
199
       </div>

+ 2
- 2
src/pages/integralMall/achieve.jsx Datei anzeigen

112
     <>
112
     <>
113
       <Tabs onChange={callback} type="card">
113
       <Tabs onChange={callback} type="card">
114
         <TabPane tab="平台积分" key="platform">
114
         <TabPane tab="平台积分" key="platform">
115
-          <Table style={{ marginTop: '40px' }} dataSource={data.records} columns={columns} pagination={false}/>
115
+          <Table rowKey="achieve" style={{ marginTop: '40px' }} dataSource={data.records} columns={columns} pagination={false}/>
116
           <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
116
           <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
117
             <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
117
             <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
118
           </div>
118
           </div>
131
               </Button>
131
               </Button>
132
             </Form.Item>
132
             </Form.Item>
133
           </Form>
133
           </Form>
134
-          <Table style={{ marginTop: '40px' }} dataSource={data.records} columns={columns} pagination={false}/>
134
+          <Table rowKey="achie" style={{ marginTop: '40px' }} dataSource={data.records} columns={columns} pagination={false}/>
135
           <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
135
           <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
136
             <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
136
             <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
137
           </div>
137
           </div>

+ 1
- 1
src/pages/integralMall/exchangeRecords.jsx Datei anzeigen

187
           </Form.Item>
187
           </Form.Item>
188
         </div>
188
         </div>
189
       </Form>
189
       </Form>
190
-      <Table style={{marginTop:'40px'}} dataSource={data.records} columns={columns} pagination={false} />
190
+      <Table rowKey="exchangeRecords" style={{marginTop:'40px'}} dataSource={data.records} columns={columns} pagination={false} />
191
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
191
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
192
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
192
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
193
       </div>
193
       </div>

+ 1
- 1
src/pages/integralMall/verifyList.jsx Datei anzeigen

108
   return (
108
   return (
109
     <>
109
     <>
110
       <Button type="primary" className={styles.addBtn} onClick={toBack}>返回</Button>
110
       <Button type="primary" className={styles.addBtn} onClick={toBack}>返回</Button>
111
-      <Table dataSource={data.records} columns={columns} pagination={false} />
111
+      <Table rowKey="verifyList" dataSource={data.records} columns={columns} pagination={false} />
112
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
112
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
113
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
113
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
114
       </div>
114
       </div>

+ 1
- 1
src/pages/news/type/NewsType.jsx Datei anzeigen

131
       <AuthButton name="admin.taNewsType.post" noRight={null}>
131
       <AuthButton name="admin.taNewsType.post" noRight={null}>
132
         <Button type="primary" className={styles.addBtn} onClick={toEditNews()}>新增</Button>
132
         <Button type="primary" className={styles.addBtn} onClick={toEditNews()}>新增</Button>
133
       </AuthButton>
133
       </AuthButton>
134
-      <Table dataSource={data.records} columns={columns} pagination={false} />
134
+      <Table rowKey="newsType" dataSource={data.records} columns={columns} pagination={false} />
135
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
135
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
136
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
136
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
137
       </div>
137
       </div>

+ 1
- 1
src/pages/staff/list/RoleList.jsx Datei anzeigen

126
       <Button type="danger" className={styles.addBtn} onClick={addRole}>新增</Button>
126
       <Button type="danger" className={styles.addBtn} onClick={addRole}>新增</Button>
127
       <div className={Styles.roletext}>
127
       <div className={Styles.roletext}>
128
 
128
 
129
-        <Table dataSource={data.records} columns={columns} />
129
+        <Table rowKey="roleList" dataSource={data.records} columns={columns} />
130
       </div>
130
       </div>
131
     </>
131
     </>
132
 
132
 

+ 1
- 1
src/pages/system/housingPolicy.jsx Datei anzeigen

184
       <AuthButton name="admin.taPolicy.post" noRight={null}>
184
       <AuthButton name="admin.taPolicy.post" noRight={null}>
185
         <Button type="primary" className={styles.addBtn} onClick={toEditPolicy()}>新增</Button>
185
         <Button type="primary" className={styles.addBtn} onClick={toEditPolicy()}>新增</Button>
186
       </AuthButton>
186
       </AuthButton>
187
-      <Table dataSource={data.records} columns={columns} pagination={false}/>
187
+      <Table rowKey="housingPolicy" dataSource={data.records} columns={columns} pagination={false}/>
188
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
188
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
189
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
189
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
190
       </div>
190
       </div>

+ 1
- 1
src/pages/system/messageList.jsx Datei anzeigen

60
   return (
60
   return (
61
 
61
 
62
     <>
62
     <>
63
-      <Table dataSource={data.records} columns={columns} pagination={false}/>
63
+      <Table rowKey="messageList" dataSource={data.records} columns={columns} pagination={false}/>
64
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
64
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
65
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
65
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} />
66
       </div>
66
       </div>

+ 5
- 0
src/services/apis.js Datei anzeigen

268
       url: `${prefix}/selectUserResource`,
268
       url: `${prefix}/selectUserResource`,
269
       action: 'userStatistics',
269
       action: 'userStatistics',
270
     },
270
     },
271
+    list:{
272
+      method:'Get',
273
+      url: `${prefix}/indexStatistical`,
274
+      action:'select',
275
+    },
271
     userBehavior: {
276
     userBehavior: {
272
       summary: {
277
       summary: {
273
         method: 'GET',
278
         method: 'GET',