Kaynağa Gözat

Merge branch 'dev' of http://git.ycjcjy.com/zhiyuxing/estateagents-admin-manager into dev

xujing 5 yıl önce
ebeveyn
işleme
ffae1ef61d
31 değiştirilmiş dosya ile 148 ekleme ve 118 silme
  1. 2
    2
      config/config.js
  2. 5
    5
      package.json
  3. 4
    2
      src/pages/activity/ActivityList.jsx
  4. 2
    2
      src/pages/activity/groupActivity/list.jsx
  5. 1
    1
      src/pages/activity/helpActivity/helpRecord.jsx
  6. 10
    3
      src/pages/activity/helpActivity/list.jsx
  7. 2
    1
      src/pages/activity/liveActivity/add/index.jsx
  8. 2
    1
      src/pages/activity/liveActivity/edit/components/base.jsx
  9. 6
    2
      src/pages/building/list/index.jsx
  10. 2
    3
      src/pages/carouselFigure/LiveGroup.jsx
  11. 2
    3
      src/pages/carouselFigure/SalesBatchGroup.jsx
  12. 2
    3
      src/pages/carouselFigure/SelectActivity.jsx
  13. 2
    3
      src/pages/carouselFigure/SelectGroup.jsx
  14. 2
    3
      src/pages/carouselFigure/SelectH5.jsx
  15. 3
    3
      src/pages/carouselFigure/SelectHelp.jsx
  16. 2
    3
      src/pages/carouselFigure/SelectNews.jsx
  17. 32
    11
      src/pages/customer/customerlist/index.jsx
  18. 4
    3
      src/pages/eContract/businessConfig/components/SelectCompany.jsx
  19. 3
    4
      src/pages/eContract/businessConfig/components/SelectContractTemp.jsx
  20. 3
    4
      src/pages/eContract/businessConfig/components/SelectRaise.jsx
  21. 2
    3
      src/pages/eContract/businessConfig/components/SelectSeal.jsx
  22. 10
    6
      src/pages/eContract/businessConfig/list.jsx
  23. 24
    34
      src/pages/eContract/manage/list.jsx
  24. 2
    1
      src/pages/h5SampleManager/h5Sample/detail.jsx
  25. 2
    1
      src/pages/house/raise/edit/components/RaiseHouse.jsx
  26. 5
    4
      src/pages/record/share/countList.jsx
  27. 2
    1
      src/pages/statistical/activity/detail.jsx
  28. 3
    2
      src/pages/statistical/consultant/homePagePersons.jsx
  29. 2
    1
      src/pages/statistical/consultant/table.jsx
  30. 2
    1
      src/pages/statistical/consultant/visitPersons.jsx
  31. 3
    2
      src/utils/request.js

+ 2
- 2
config/config.js Dosyayı Görüntüle

@@ -83,8 +83,8 @@ export default {
83 83
   targets: {
84 84
     ie: 11,
85 85
   },
86
-  publicPath: './',
87
-  // publicPath: 'https://njcjweb.oss-accelerate.aliyuncs.com/admin/',
86
+  // publicPath: './',
87
+  publicPath: 'https://njcjweb.oss-accelerate.aliyuncs.com/admin/',
88 88
   history: 'hash',
89 89
   devtool: isAntDesignProPreview ? 'source-map' : false,
90 90
   // umi routes: https://umijs.org/zh/guide/router.html

+ 5
- 5
package.json Dosyayı Görüntüle

@@ -67,8 +67,8 @@
67 67
     "redux": "^4.0.1",
68 68
     "swiper": "^5.3.6",
69 69
     "umi": "^2.13.3",
70
-    "umi-plugin-pro-block": "^1.3.2",
71
-    "umi-plugin-react": "^1.9.5",
70
+    "umi-plugin-pro-block": "^1.3.6",
71
+    "umi-plugin-react": "^1.15.3",
72 72
     "umi-request": "^1.0.8",
73 73
     "wangeditor": "^3.1.1"
74 74
   },
@@ -108,10 +108,10 @@
108 108
     "pro-download": "1.0.1",
109 109
     "slash2": "^2.0.0",
110 110
     "stylelint": "^10.1.0",
111
-    "umi-plugin-ga": "^1.1.3",
112
-    "umi-plugin-pro": "^1.0.2",
111
+    "umi-plugin-ga": "^1.1.6",
112
+    "umi-plugin-pro": "^1.0.3",
113 113
     "umi-types": "^0.3.8",
114
-    "webpack-theme-color-replacer": "^1.2.15"
114
+    "webpack-theme-color-replacer": "^1.3.7"
115 115
   },
116 116
   "optionalDependencies": {
117 117
     "puppeteer": "^1.17.0"

+ 4
- 2
src/pages/activity/ActivityList.jsx Dosyayı Görüntüle

@@ -35,9 +35,11 @@ const header = props => {
35 35
   useEffect(() => {
36 36
 
37 37
     if (localStorage.getItem("activePageParams")) {
38
-      props.form.setFieldsValue(JSON.parse(localStorage.getItem("activePageParams")));
39
-      // const { getFieldDecorator } = JSON.parse(localStorage.getItem("pageParams"))
40 38
 
39
+      const localStorageValue = JSON.parse(localStorage.getItem("activePageParams"))
40
+      localStorageValue.time = localStorageValue.time ? moment(localStorageValue.time) : ''
41
+
42
+      props.form.setFieldsValue(localStorageValue);
41 43
       getList(JSON.parse(localStorage.getItem("activePageParams")))
42 44
     } else {
43 45
       localStorage.setItem("activePageParams", JSON.stringify({ pageNum: 1, pageSize: 10 }));

+ 2
- 2
src/pages/activity/groupActivity/list.jsx Dosyayı Görüntüle

@@ -94,7 +94,6 @@ const header = props => {
94 94
       align: 'center',
95 95
       render: (x, row) => <><div style={{ overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', width: '201px', title: 'content' }}>
96 96
         <Navigate onClick={getActivityDetail(row.groupActivityId)}>{row.activityName}</Navigate></div></>,
97
-      // <span style={{color: 'blue',cursor: 'pointer'}} onClick={getActivityDetail(row.groupActivityId)}>{row.activityName}</span></div></>,
98 97
     },
99 98
     {
100 99
       title: '活动时间',
@@ -115,7 +114,8 @@ const header = props => {
115 114
       key: 'participateNum',
116 115
       align: 'center',
117 116
       render: (x, row) => <><div style={{ overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', width: '201px', title: 'content' }}>
118
-        <span style={{ color: 'blue', cursor: 'pointer' }} onClick={getJoinPeople(row.groupActivityId)}>{row.participateNum}</span></div></>,
117
+        <Navigate onClick={getJoinPeople(row.groupActivityId)}>{row.participateNum}</Navigate>
118
+        </div></>,
119 119
     },
120 120
     {
121 121
       title: '成团数',

+ 1
- 1
src/pages/activity/helpActivity/helpRecord.jsx Dosyayı Görüntüle

@@ -267,7 +267,7 @@ function body(props) {
267 267
   const { helpActivityId } = props.location.query
268 268
   useEffect(() => {
269 269
     console.log('customerType', customerType)
270
-    getList({ pageNumber: 1, pageSize: 10, status: customerType, helpActivityId })
270
+    getList({ pageNum: 1, pageSize: 10, status: customerType, helpActivityId })
271 271
   }, [])
272 272
 
273 273
   function getList(params) {

+ 10
- 3
src/pages/activity/helpActivity/list.jsx Dosyayı Görüntüle

@@ -5,6 +5,7 @@ import moment from 'moment';
5 5
 import AuthButton from '@/components/AuthButton';
6 6
 import withActions from '@/components/ActionList';
7 7
 import EditIcon from '@/components/EditIcon';
8
+import Navigate from '@/components/Navigate';
8 9
 import Prompt from 'umi/prompt';
9 10
 import SelectCity from '../../../components/SelectButton/CitySelect'
10 11
 import BuildSelect from '../../../components/SelectButton/BuildSelect'
@@ -20,9 +21,13 @@ const header = props => {
20 21
 
21 22
   useEffect(() => {
22 23
     if (localStorage.getItem("helpActivePageParams")) {
23
-      props.form.setFieldsValue(JSON.parse(localStorage.getItem("helpActivePageParams")));
24
+      // props.form.setFieldsValue(JSON.parse(localStorage.getItem("helpActivePageParams")));
24 25
       // const { getFieldDecorator } = JSON.parse(localStorage.getItem("pageParams"))
26
+      const localStorageValue = JSON.parse(localStorage.getItem("helpActivePageParams"))
27
+      localStorageValue.startTime = localStorageValue.startTime ? moment(localStorageValue.startTime) : ''
28
+      localStorageValue.endTime = localStorageValue.endTime ? moment(localStorageValue.endTime) : ''
25 29
 
30
+      props.form.setFieldsValue(localStorageValue);
26 31
       getList(JSON.parse(localStorage.getItem("helpActivePageParams")))
27 32
     } else {
28 33
       localStorage.setItem("helpActivePageParams", JSON.stringify({ pageNum: 1, pageSize: 10 }));
@@ -82,7 +87,8 @@ const header = props => {
82 87
       key: 'title',
83 88
       align: 'center',
84 89
       render: (x, row) => <><div style={{ overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', width: '201px', title: 'content' }}>
85
-        <span style={{ color: 'blue', cursor: 'pointer' }} onClick={getActivityDetail(row.helpActivityId)}>{row.title}</span></div></>,
90
+        <Navigate onClick={getActivityDetail(row.helpActivityId)}>{row.title}</Navigate>
91
+        </div></>,
86 92
     },
87 93
     {
88 94
       title: '活动时间',
@@ -97,7 +103,8 @@ const header = props => {
97 103
       key: 'enlistNum',
98 104
       align: 'center',
99 105
       render: (x, row) => <><div style={{ overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap', width: '201px', title: 'content' }}>
100
-        <span style={{ color: 'blue', cursor: 'pointer' }} onClick={getJoinPeople(row.helpActivityId)}>{row.enlistNum}</span></div></>,
106
+        <Navigate onClick={getJoinPeople(row.helpActivityId)}>{row.enlistNum}</Navigate>
107
+        </div></>,
101 108
     },
102 109
     {
103 110
       title: '助力成功数',

+ 2
- 1
src/pages/activity/liveActivity/add/index.jsx Dosyayı Görüntüle

@@ -11,6 +11,7 @@ import LivePlatSelect from '../../../../components/SelectButton/LivePlatSelect'
11 11
 import CitySelect3 from '../../../../components/SelectButton/CitySelect3'
12 12
 import ImageUpload from '../../../../components/XForm/ImageUpload'
13 13
 import Wangedit from '../../../../components/Wangedit/Wangedit'
14
+import Navigate from '@/components/Navigate';
14 15
 import apis from '../../../../services/apis';
15 16
 import request from '../../../../utils/request';
16 17
 import AuthButton from '@/components/AuthButton';
@@ -121,7 +122,7 @@ const header = props => {
121 122
         <Form.Item label="房间参数">
122 123
           {getFieldDecorator('liveRoomParam', {
123 124
             rules: [{ required: true, message: '请输入房间参数' }],
124
-          })(<Input maxLength={1000} placeholder="点击右侧按钮查看如何获取房间参数" style={{width:'680px'}}/>)}<a onClick={openIndexImg} style={{ color: 'blue' }}> 不知道怎么填?查看说明</a>
125
+          })(<Input maxLength={1000} placeholder="点击右侧按钮查看如何获取房间参数" style={{width:'680px'}}/>)}<Navigate onClick={openIndexImg}>不知道怎么填?查看说明</Navigate>
125 126
         </Form.Item>
126 127
         <Form.Item label="封面图1" help="建议尺寸:750px*420px,比例16:9,格式:jpg,用于:活动列表">
127 128
               {getFieldDecorator('listImg', {

+ 2
- 1
src/pages/activity/liveActivity/edit/components/base.jsx Dosyayı Görüntüle

@@ -11,6 +11,7 @@ import LivePlatSelect from '../../../../../components/SelectButton/LivePlatSelec
11 11
 import CitySelect3 from '../../../../../components/SelectButton/CitySelect3';
12 12
 import ImageUpload from '../../../../../components/XForm/ImageUpload'
13 13
 import request from '../../../../../utils/request';
14
+import Navigate from '@/components/Navigate';
14 15
 
15 16
 const { Option } = Select;
16 17
 const { MonthPicker, RangePicker, WeekPicker } = DatePicker;
@@ -144,7 +145,7 @@ const header = props => {
144 145
             initialValue: liveActivityData.liveRoomParam,
145 146
             rules: [{ required: true, message: '请输入房间参数' }],
146 147
           })(<Input maxLength={1000} placeholder="点击右侧按钮查看如何获取房间参数" style={{width:'680px'}}/>)}
147
-          <a onClick={openIndexImg} style={{ color: 'blue' }}> 不知道怎么填?查看说明</a>
148
+          <Navigate onClick={openIndexImg}>不知道怎么填?查看说明</Navigate>
148 149
         </Form.Item>
149 150
         <Form.Item label="封面图1" help="建议尺寸:750px*420px,比例16:9,格式:jpg,用于:活动列表">
150 151
               {getFieldDecorator('listImg', {

+ 6
- 2
src/pages/building/list/index.jsx Dosyayı Görüntüle

@@ -181,9 +181,13 @@ function body(props) {
181 181
   // eslint-disable-next-line react-hooks/rules-of-hooks
182 182
   useEffect(() => {
183 183
     if (localStorage.getItem("pageParams")) {
184
-      props.form.setFieldsValue(JSON.parse(localStorage.getItem("pageParams")));
184
+
185 185
       // const { getFieldDecorator } = JSON.parse(localStorage.getItem("pageParams"))
186
-      getList(JSON.parse(localStorage.getItem("pageParams")))
186
+      const localStorageValue = JSON.parse(localStorage.getItem("pageParams"))
187
+      localStorageValue.startDate = localStorageValue.startDate ? moment(localStorageValue.startDate) : ''
188
+      props.form.setFieldsValue(localStorageValue);
189
+
190
+      getList({ pageNum: 1, pageSize: 9, ...JSON.parse(localStorage.getItem("pageParams")) })
187 191
     } else {
188 192
       getList({ pageNum: 1, pageSize: 9 })
189 193
     }

+ 2
- 3
src/pages/carouselFigure/LiveGroup.jsx Dosyayı Görüntüle

@@ -1,6 +1,7 @@
1 1
 import React, { useState, useEffect } from 'react';
2 2
 import { Form, Select, Modal, Button, Table, Divider, Tag, Input } from 'antd';
3 3
 import { apis, fetch } from '../../utils/request';
4
+import Navigate from '@/components/Navigate';
4 5
 
5 6
 const { Search } = Input;
6 7
 
@@ -81,9 +82,7 @@ export default props => {
81 82
       align: 'center',
82 83
       width: '20%',
83 84
       render: (text, record) => (
84
-        <span>
85
-          <a onClick={() => setData(record.liveActivityId)} style={{ color: 'blue' }}>选择</a>
86
-        </span>
85
+        <Navigate onClick={() => setData(record.liveActivityId)}>选择</Navigate>
87 86
       ),
88 87
     },
89 88
   ];

+ 2
- 3
src/pages/carouselFigure/SalesBatchGroup.jsx Dosyayı Görüntüle

@@ -1,6 +1,7 @@
1 1
 import React, { useState, useEffect } from 'react';
2 2
 import { Form, Select, Modal, Button, Table, Divider, Tag, Input } from 'antd';
3 3
 import { apis, fetch } from '../../utils/request';
4
+import Navigate from '@/components/Navigate';
4 5
 
5 6
 const { Search } = Input;
6 7
 
@@ -81,9 +82,7 @@ export default props => {
81 82
       align: 'center',
82 83
       width: '20%',
83 84
       render: (text, record) => (
84
-        <span>
85
-          <a onClick={() => setData(record.salesBatchId)} style={{ color: 'blue' }}>选择</a>
86
-        </span>
85
+        <Navigate onClick={() => setData(record.salesBatchId)}>选择</Navigate>
87 86
       ),
88 87
     },
89 88
   ];

+ 2
- 3
src/pages/carouselFigure/SelectActivity.jsx Dosyayı Görüntüle

@@ -1,6 +1,7 @@
1 1
 import React, { useState, useEffect } from 'react';
2 2
 import { Form, Select, Modal, Button, Table, Divider, Tag, Input } from 'antd';
3 3
 import { apis, fetch } from '../../utils/request';
4
+import Navigate from '@/components/Navigate';
4 5
 
5 6
 const getActivities = fetch(apis.activity.listSelected)
6 7
 const { Search } = Input;
@@ -83,9 +84,7 @@ export default (props) => {
83 84
       align: 'center',
84 85
       width: '20%',
85 86
       render: (text, record) => (
86
-        <span>
87
-          <a onClick={() => setData(record.dynamicId)} style={{ color: 'blue' }}>选择</a>
88
-        </span>
87
+        <Navigate onClick={() => setData(record.dynamicId)}>选择</Navigate>
89 88
       ),
90 89
     },
91 90
   ];

+ 2
- 3
src/pages/carouselFigure/SelectGroup.jsx Dosyayı Görüntüle

@@ -1,6 +1,7 @@
1 1
 import React, { useState, useEffect } from 'react';
2 2
 import { Form, Select, Modal, Button, Table, Divider, Tag, Input } from 'antd';
3 3
 import { apis, fetch } from '../../utils/request';
4
+import Navigate from '@/components/Navigate';
4 5
 
5 6
 const { Search } = Input;
6 7
 
@@ -81,9 +82,7 @@ export default props => {
81 82
       align: 'center',
82 83
       width: '20%',
83 84
       render: (text, record) => (
84
-        <span>
85
-          <a onClick={() => setData(record.groupActivityId)} style={{ color: 'blue' }}>选择</a>
86
-        </span>
85
+         <Navigate onClick={() => setData(record.groupActivityId)}>选择</Navigate>
87 86
       ),
88 87
     },
89 88
   ];

+ 2
- 3
src/pages/carouselFigure/SelectH5.jsx Dosyayı Görüntüle

@@ -1,6 +1,7 @@
1 1
 import React, { useState, useEffect } from 'react';
2 2
 import { Form, Select, Modal, Button, Table, Divider, Tag, Input,Row,Col } from 'antd';
3 3
 import { apis, fetch } from '../../utils/request';
4
+import Navigate from '@/components/Navigate';
4 5
 
5 6
 const { Column, ColumnGroup } = Table;
6 7
 const getH5List = fetch(apis.h5Activity.EffectiveList)
@@ -86,9 +87,7 @@ export default props => {
86 87
       align: 'center',
87 88
       width: '20%',
88 89
       render: (text, record) => (
89
-        <span>
90
-          <a onClick={() => setData(record.drainageId)} style={{ color: 'blue' }}>选择</a>
91
-        </span>
90
+        <Navigate onClick={() => setData(record.drainageId)}>选择</Navigate>
92 91
       ),
93 92
     },
94 93
   ];

+ 3
- 3
src/pages/carouselFigure/SelectHelp.jsx Dosyayı Görüntüle

@@ -2,6 +2,8 @@ import React, { useState, useEffect } from 'react';
2 2
 
3 3
 import { Form, Select, Modal, Button, Table, Divider, Tag, Input } from 'antd';
4 4
 import { apis, fetch } from '../../utils/request';
5
+import Navigate from '@/components/Navigate';
6
+
5 7
 const { Search } = Input;
6 8
 
7 9
 const getHelpList = fetch(apis.helpActivity.effectiveList)
@@ -81,9 +83,7 @@ export default props => {
81 83
       align: 'center',
82 84
       width: '20%',
83 85
       render: (text, record) => (
84
-        <span>
85
-          <a onClick={() => setData(record.helpActivityId)} style={{ color: 'blue' }}>选择</a>
86
-        </span>
86
+        <Navigate onClick={() => setData(record.helpActivityId)}>选择</Navigate>
87 87
       ),
88 88
     },
89 89
   ];

+ 2
- 3
src/pages/carouselFigure/SelectNews.jsx Dosyayı Görüntüle

@@ -1,6 +1,7 @@
1 1
 import React, { useState, useEffect } from 'react';
2 2
 import { Form, Select, Modal, Button, Table, Divider, Tag, Input } from 'antd';
3 3
 import { apis, fetch } from '../../utils/request';
4
+import Navigate from '@/components/Navigate';
4 5
 
5 6
 const getNewsList = fetch(apis.news.getList)
6 7
 const { Search } = Input;
@@ -77,9 +78,7 @@ export default props => {
77 78
       align: 'center',
78 79
       width: '20%',
79 80
       render: (text, record) => (
80
-        <span>
81
-          <a onClick={() => setData(record.newsId)} style={{ color: 'blue' }}>选择</a>
82
-        </span>
81
+        <Navigate onClick={() => setData(record.newsId)}>选择</Navigate>
83 82
       ),
84 83
     },
85 84
   ];

+ 32
- 11
src/pages/customer/customerlist/index.jsx Dosyayı Görüntüle

@@ -14,6 +14,7 @@ import ModalRecommendRecord from './components/recommend'
14 14
 import ChangeStatus from './components/changeStatus'
15 15
 import BuildSelect from '../../../components/SelectButton/BuildSelect'
16 16
 import AuthButton from '@/components/AuthButton';
17
+import Navigate from '@/components/Navigate';
17 18
 import WxDictSelect from '@/components/SelectButton/WxDictSelect';
18 19
 import Prompt from 'umi/prompt';
19 20
 
@@ -76,12 +77,18 @@ function body(props) {
76 77
     if (localStorage.getItem("state")) {
77 78
       console.log(localStorage.getItem("state"), 'state')
78 79
       if (JSON.parse(localStorage.getItem("state")) == 'private') {
79
-        props.form.setFieldsValue(JSON.parse(localStorage.getItem("priPageParams")));
80
-        getList({ ...JSON.parse(localStorage.getItem("priPageParams")) })
80
+        const localStorageValue = JSON.parse(localStorage.getItem("priPageParams"))
81
+        localStorageValue.startCreateDate = localStorageDate(localStorageValue.startCreateDate)
82
+        localStorageValue.endCreateDate = localStorageDate(localStorageValue.endCreateDate)
83
+        props.form.setFieldsValue(localStorageValue);
84
+        getList({ pageNumber: 1, pageSize: 10, ...JSON.parse(localStorage.getItem("priPageParams")) })
81 85
       } else {
82 86
         setCustomerType('public')
83
-        props.form.setFieldsValue(JSON.parse(localStorage.getItem("pubPageParams")));
84
-        getList({ ...JSON.parse(localStorage.getItem("pubPageParams")) })
87
+        const localStorageValue = JSON.parse(localStorage.getItem("pubPageParams"))
88
+        localStorageValue.startCreateDate = localStorageDate(localStorageValue.startCreateDate)
89
+        localStorageValue.endCreateDate = localStorageDate(localStorageValue.endCreateDate)
90
+        props.form.setFieldsValue(localStorageValue);
91
+        getList({ pageNumber: 1, pageSize: 10, ...JSON.parse(localStorage.getItem("pubPageParams")) })
85 92
       }
86 93
 
87 94
     } else {
@@ -92,6 +99,13 @@ function body(props) {
92 99
 
93 100
   function getList(params) {
94 101
     // 网路请求
102
+    console.log(params, '111111111111111')
103
+    if (params.startCreateDate) {
104
+      params.startCreateDate = moment(params.startCreateDate).format('YYYY-MM-DD HH:mm:ss');
105
+    }
106
+    if (params.endCreateDate) {
107
+      params.endCreateDate = moment(params.endCreateDate).format('YYYY-MM-DD HH:mm:ss');
108
+    }
95 109
     request({ ...apis.customer.customerRecommend, params: { ...params } }).then(res => {
96 110
       if (params.customerType === 'private') {
97 111
         setDataSource(res)
@@ -154,6 +168,8 @@ function body(props) {
154 168
     console.log(e)
155 169
   }
156 170
 
171
+  const localStorageDate = (date) => date ? moment(date) : ''
172
+
157 173
   // 分页
158 174
   function onChange(pageNum) {
159 175
     // eslint-disable-next-line react-hooks/rules-of-hooks
@@ -184,8 +200,10 @@ function body(props) {
184 200
     localStorage.setItem("state", JSON.stringify(value))
185 201
     if (value === 'private') {
186 202
       if (localStorage.getItem("priPageParams")) {
187
-        props.form.setFieldsValue(JSON.parse(localStorage.getItem("priPageParams")));
188
-
203
+        const localStorageValue = JSON.parse(localStorage.getItem("priPageParams"))
204
+        localStorageValue.startCreateDate = localStorageDate(localStorageValue.startCreateDate)
205
+        localStorageValue.endCreateDate = localStorageDate(localStorageValue.endCreateDate)
206
+        props.form.setFieldsValue(localStorageValue);
189 207
         getList(JSON.parse(localStorage.getItem("priPageParams")))
190 208
       } else {
191 209
         localStorage.setItem("priPageParams", JSON.stringify({ pageNumber: 1, pageSize: 10, customerType: value }))
@@ -195,9 +213,12 @@ function body(props) {
195 213
     } else {
196 214
 
197 215
       if (localStorage.getItem("pubPageParams")) {
198
-        props.form.setFieldsValue(JSON.parse(localStorage.getItem("pubPageParams")));
199
-        // const { getFieldDecorator } = JSON.parse(localStorage.getItem("pageParams"))
200
-        getList({ customerType, ...JSON.parse(localStorage.getItem("pubPageParams")) })
216
+        const localStorageValue = JSON.parse(localStorage.getItem("pubPageParams"))
217
+        localStorageValue.startCreateDate = localStorageDate(localStorageValue.startCreateDate)
218
+        localStorageValue.endCreateDate = localStorageDate(localStorageValue.endCreateDate)
219
+        props.form.setFieldsValue(localStorageValue);
220
+
221
+        getList( {pageNumber: 1, pageSize: 10, customerType, ...JSON.parse(localStorage.getItem("pubPageParams")) })
201 222
       } else {
202 223
         localStorage.setItem("pubPageParams", JSON.stringify({ pageNumber: 1, pageSize: 10, customerType: 'public' }))
203 224
         getList({ pageNumber: 1, pageSize: 10, customerType: 'public' })
@@ -398,7 +419,7 @@ function body(props) {
398 419
       align: 'center',
399 420
       width: '10%',
400 421
       // eslint-disable-next-line no-nested-ternary
401
-      render: (_, record) => <><span style={{ color: 'blue', cursor: 'pointer' }} onClick={() => publicCustomerDetail(record)} >{record.name || record.nickname}</span></>,
422
+      render: (_, record) => <><Navigate onClick={() => publicCustomerDetail(record)}>{record.name || record.nickname}</Navigate></>,
402 423
     },
403 424
     {
404 425
       title: '电话',
@@ -481,7 +502,7 @@ function body(props) {
481 502
       align: 'center',
482 503
       width: '10%',
483 504
       // eslint-disable-next-line no-nested-ternary
484
-      render: (_, record) => <><span style={{ color: 'blue', cursor: 'pointer' }} onClick={() => toCustomerDateil(record)}>{customerType === 'private' ? record.name : record.nickname}</span></>,
505
+      render: (_, record) => <><Navigate onClick={() => toCustomerDateil(record)}>{customerType === 'private' ? record.name : record.nickname}</Navigate></>,
485 506
     },
486 507
     {
487 508
       title: '电话',

+ 4
- 3
src/pages/eContract/businessConfig/components/SelectCompany.jsx Dosyayı Görüntüle

@@ -3,6 +3,7 @@ import { Form, Select, Modal, Button, Table, Divider, Tag, Input,Row,Col,Icon, P
3 3
 import request from '../../../../utils/request';
4 4
 import apis from '../../../../services/apis';
5 5
 import moment from 'moment';
6
+import Navigate from '@/components/Navigate';
6 7
 
7 8
 const { Column, ColumnGroup } = Table;
8 9
 const { Search } = Input;
@@ -132,7 +133,7 @@ const SelectContractTemp = props => {
132 133
       width: '20%',
133 134
       render: (text, record) => (
134 135
         <span>
135
-          {record.sealNum >0 && record.authorizeStatus === '3000' && <a onClick={() => setData({id:record.companyId, name:record.companyName})} style={{ color: 'blue' }}>选择</a>}
136
+          {record.sealNum >0 && record.authorizeStatus === '3000' && <Navigate onClick={() => setData({id:record.companyId, name:record.companyName})}>选择</Navigate>}
136 137
         </span>
137 138
       ),
138 139
     },
@@ -142,7 +143,7 @@ const SelectContractTemp = props => {
142 143
 
143 144
   return (
144 145
     <div>
145
-      <div>{group.groupName}<a style={{marginLeft:'30px', color: 'blue' }} onClick={() => setVisible(true)}>选择关联企业</a></div>
146
+      <div>{group.groupName}<Navigate onClick={() => setVisible(true)}>选择关联企业</Navigate></div>
146 147
       <Modal
147 148
         title="选择关联企业"
148 149
         visible={visible}
@@ -168,7 +169,7 @@ const SelectContractTemp = props => {
168 169
           )}
169 170
         </Form.Item>
170 171
         <Form.Item>
171
-          <span style={{color:'#999'}}>可选企业必须已认证通过、已上传印章且授权了自动签章。</span><span><a onClick={openIndexImg} style={{ color: 'blue' }}>查看电子合同接入手册</a></span>
172
+          <span style={{color:'#999'}}>可选企业必须已认证通过、已上传印章且授权了自动签章。</span><Navigate onClick={openIndexImg}>查看电子合同接入手册</Navigate>
172 173
         </Form.Item>
173 174
         <Form.Item>
174 175
           <Button type="primary" htmlType="submit" >

+ 3
- 4
src/pages/eContract/businessConfig/components/SelectContractTemp.jsx Dosyayı Görüntüle

@@ -3,6 +3,7 @@ import { Form, Select, Modal, Button, Table, Divider, Tag, Input,Row,Col,Icon ,P
3 3
 import request from '../../../../utils/request';
4 4
 import apis from '../../../../services/apis';
5 5
 import moment from 'moment';
6
+import Navigate from '@/components/Navigate';
6 7
 
7 8
 const { Column, ColumnGroup } = Table;
8 9
 const { Search } = Input;
@@ -109,9 +110,7 @@ const SelectContractTemp = props => {
109 110
       align: 'center',
110 111
       width: '20%',
111 112
       render: (text, record) => (
112
-        <span>
113
-          <a onClick={() => setData({id:record.contractTemplateId, name:record.contractTemplateName})} style={{ color: 'blue' }}>选择</a>
114
-        </span>
113
+        <Navigate onClick={() => setData({id:record.contractTemplateId, name:record.contractTemplateName})}>选择</Navigate>
115 114
       ),
116 115
     },
117 116
   ];
@@ -120,7 +119,7 @@ const SelectContractTemp = props => {
120 119
 
121 120
   return (
122 121
     <div>
123
-      <div>{group.groupName}<a style={{marginLeft:'30px', color: 'blue' }} onClick={() => setVisible(true)}>选择合同模板</a></div>
122
+      <div>{group.groupName}<Navigate onClick={() => setVisible(true)}>选择合同模板</Navigate></div>
124 123
       <Modal
125 124
         title="选择合同模板"
126 125
         visible={visible}

+ 3
- 4
src/pages/eContract/businessConfig/components/SelectRaise.jsx Dosyayı Görüntüle

@@ -4,6 +4,7 @@ import request from '../../../../utils/request';
4 4
 import apis from '../../../../services/apis';
5 5
 import BuildSelect from '../../../../components/SelectButton/BuildSelect'
6 6
 import moment from 'moment';
7
+import Navigate from '@/components/Navigate';
7 8
 
8 9
 const { Column, ColumnGroup } = Table;
9 10
 const { Search } = Input;
@@ -130,9 +131,7 @@ const SelectContractTemp = props => {
130 131
       align: 'center',
131 132
       width: '20%',
132 133
       render: (text, record) => (
133
-        <span>
134
-          <a onClick={() => setData({id:record.raiseId, name:record.salesBatchName})} style={{ color: 'blue' }}>选择</a>
135
-        </span>
134
+        <Navigate onClick={() => setData({id:record.raiseId, name:record.salesBatchName})}>选择</Navigate>
136 135
       ),
137 136
     },
138 137
   ];
@@ -141,7 +140,7 @@ const SelectContractTemp = props => {
141 140
 
142 141
   return (
143 142
     <div>
144
-      <div>{group.groupName}<a style={{marginLeft:'30px', color: 'blue' }} onClick={() => setVisible(true)}>{targetType != undefined && '选择关联业务'}</a></div>
143
+      <div>{group.groupName}<Navigate onClick={() => setVisible(true)}>{targetType != undefined && '选择关联业务'}</Navigate></div>
145 144
       <Modal
146 145
         title="选择关联业务"
147 146
         visible={visible}

+ 2
- 3
src/pages/eContract/businessConfig/components/SelectSeal.jsx Dosyayı Görüntüle

@@ -3,6 +3,7 @@ import { Form, Select, Modal, Button, Table, Divider, Tag, Input,Row,Col,Icon, A
3 3
 import request from '../../../../utils/request';
4 4
 import apis from '../../../../services/apis';
5 5
 import moment from 'moment';
6
+import Navigate from '@/components/Navigate';
6 7
 
7 8
 const { Column, ColumnGroup } = Table;
8 9
 const { Search } = Input;
@@ -117,9 +118,7 @@ const SelectContractTemp = props => {
117 118
       align: 'center',
118 119
       width: '20%',
119 120
       render: (text, record) => (
120
-        <span>
121
-          <a onClick={() => setData({id:record.sealId, name:record.sealName})} style={{ color: 'blue' }}>选择</a>
122
-        </span>
121
+        <Navigate onClick={() => setData({id:record.sealId, name:record.sealName})}>选择</Navigate>
123 122
       ),
124 123
     },
125 124
   ];

+ 10
- 6
src/pages/eContract/businessConfig/list.jsx Dosyayı Görüntüle

@@ -1,14 +1,17 @@
1 1
 import React, { useState, useEffect } from 'react';
2 2
 import { Form, Input, Button, Icon, Select, message, Table, Divider, Tag, Pagination, Modal, DatePicker } from 'antd';
3 3
 import { FormattedMessage } from 'umi-plugin-react/locale';
4
-import styles from '../../style/GoodsList.less';
5 4
 import router from 'umi/router';
6 5
 import moment from 'moment';
6
+import AuthButton from '@/components/AuthButton';
7
+import withActions from '@/components/ActionList';
8
+import EditIcon from '@/components/EditIcon';
9
+import styles from '../../style/GoodsList.less';
7 10
 import SelectCity from '../../../components/SelectButton/CitySelect'
8 11
 import BuildSelect from '../../../components/SelectButton/BuildSelect'
9 12
 import apis from '../../../services/apis';
10 13
 import request from '../../../utils/request';
11
-import AuthButton from '@/components/AuthButton';
14
+
12 15
 
13 16
 const { Option } = Select;
14 17
 const { MonthPicker, RangePicker, WeekPicker } = DatePicker;
@@ -116,11 +119,12 @@ const header = props => {
116 119
       dataIndex: 'handle',
117 120
       key: 'handle',
118 121
       align: 'center',
119
-      render: (text, record) => (
122
+      render: withActions((text, record) => [
120 123
         <AuthButton name="admin.eContractBusiness.detail.get" noRight={null}>
121
-          <a style={{ color: '#66B3FF' }} onClick={toDetail(record)} >查看详情</a>
122
-        </AuthButton>
123
-      ),
124
+           <EditIcon text="查看详情" type="look" onClick={toDetail(record)} />
125
+          {/* <a style={{ color: '#66B3FF' }} onClick={toDetail(record)} >查看详情</a> */}
126
+        </AuthButton>,
127
+      ])
124 128
     },
125 129
   ];
126 130
   

+ 24
- 34
src/pages/eContract/manage/list.jsx Dosyayı Görüntüle

@@ -1,30 +1,22 @@
1 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';
2
+import { Form, Input, Button, Icon, Select, Table, Pagination, DatePicker } from 'antd';
5 3
 import router from 'umi/router';
6 4
 import moment from 'moment';
7
-import SelectCity from '../../../components/SelectButton/CitySelect'
8
-import BuildSelect from '../../../components/SelectButton/BuildSelect'
5
+import withActions from '@/components/ActionList';
6
+import EditIcon from '@/components/EditIcon';
7
+import AuthButton from '@/components/AuthButton';
8
+import styles from '../../style/GoodsList.less';
9 9
 import apis from '../../../services/apis';
10 10
 import request from '../../../utils/request';
11 11
 
12 12
 
13
-import AuthButton from '@/components/AuthButton';
14
-
15
-const { Option } = Select;
16
-const { MonthPicker, RangePicker, WeekPicker } = DatePicker;
13
+const { RangePicker } = DatePicker;
17 14
 
18 15
 const header = props => {
19
-
20 16
   const [data, setData] = useState({})
21 17
 
22
-
23 18
   useEffect(() => {
24
-
25 19
     getList({ pageNum: 1, pageSize: 10 });
26
-
27
-
28 20
   }, [])
29 21
 
30 22
   // 查询列表
@@ -41,10 +33,10 @@ const header = props => {
41 33
       router.push({
42 34
         pathname: '/eContract/manage/edit',
43 35
         query: {
44
-          id: id,
36
+          id,
45 37
         },
46 38
       });
47
-      return
39
+
48 40
     }
49 41
   }
50 42
 
@@ -121,11 +113,11 @@ const header = props => {
121 113
       dataIndex: 'handle',
122 114
       key: 'handle',
123 115
       align: 'center',
124
-      render: (text, row) => (
116
+      render: withActions((text, record) => [
125 117
         <AuthButton name="admin.eContractManager.detail.get" noRight={null}>
126
-          <a style={{ color: '#66B3FF' }} onClick={toDetail(row.contractId)} >查看详情</a>
127
-        </AuthButton>
128
-      ),
118
+          <EditIcon text="查看详情" type="look" onClick={toDetail(record.contractId)} />
119
+        </AuthButton>,
120
+      ]),
129 121
     },
130 122
   ];
131 123
 
@@ -145,26 +137,25 @@ const header = props => {
145 137
     e.preventDefault();
146 138
     props.form.validateFields((err, values) => {
147 139
       if (!err) {
148
-        let {archivesDate, ...submitValue} = values
149
-        if(null != archivesDate && archivesDate.length > 0){
140
+        const { archivesDate, ...submitValue } = values
141
+        if (null != archivesDate && archivesDate.length > 0) {
150 142
           const [archivesStartDate, archivesEndDate] = archivesDate
151 143
           submitValue.archivesStartDate = moment(archivesStartDate).format('YYYY-MM-DD');
152 144
           submitValue.archivesEndDate = moment(archivesEndDate).format('YYYY-MM-DD');
153
-        }   
145
+        }
154 146
         console.log(submitValue)
155 147
         getList({ pageNum: 1, pageSize: 10, ...submitValue })
156 148
       }
157 149
     });
158 150
   }
159 151
 
160
-  //重置搜索
152
+  // 重置搜索
161 153
   function handleReset() {
162 154
     props.form.resetFields();
163 155
     getList({ pageNum: 1, pageSize: 10 })
164 156
   }
165 157
 
166 158
 
167
-
168 159
   const { getFieldDecorator } = props.form
169 160
   return (
170 161
 
@@ -200,8 +191,7 @@ const header = props => {
200 191
               <option value="">全部</option>
201 192
               <option value="1">是</option>
202 193
               <option value="0">否</option>
203
-
204
-            </Select>
194
+            </Select>,
205 195
           )}
206 196
         </Form.Item>
207 197
         <Form.Item>
@@ -210,7 +200,7 @@ const header = props => {
210 200
               <option value="">全部</option>
211 201
               <option value="1">是</option>
212 202
               <option value="0">否</option>
213
-            </Select>
203
+            </Select>,
214 204
           )}
215 205
         </Form.Item>
216 206
         <Form.Item>
@@ -219,14 +209,14 @@ const header = props => {
219 209
               <option value="">全部</option>
220 210
               <option value="1">是</option>
221 211
               <option value="0">否</option>
222
-            </Select>
212
+            </Select>,
223 213
           )}
224 214
         </Form.Item>
225 215
 
226 216
         <Form.Item>
227
-        
217
+
228 218
           {getFieldDecorator('archivesDate')(
229
-            <RangePicker placeholder={['归档开始时间', '归档结束时间']} />
219
+            <RangePicker placeholder={['归档开始时间', '归档结束时间']} />,
230 220
           )}
231 221
         </Form.Item>
232 222
         <Form.Item>
@@ -242,9 +232,9 @@ const header = props => {
242 232
           </AuthButton>
243 233
         </Form.Item>
244 234
       </Form>
245
-  
246
-    
247
-         <Table style={{ marginTop: '30px' }} dataSource={data.records} columns={columns} pagination={false} rowKey="activityList" />
235
+
236
+
237
+      <Table style={{ marginTop: '30px' }} dataSource={data.records} columns={columns} pagination={false} rowKey="activityList" />
248 238
       <div style={{ display: 'flex', justifyContent: 'flex-end', marginTop: '30px' }}>
249 239
         <Pagination showQuickJumper defaultCurrent={1} total={data.total} onChange={changePageNum} current={data.current} />
250 240
       </div>

+ 2
- 1
src/pages/h5SampleManager/h5Sample/detail.jsx Dosyayı Görüntüle

@@ -12,6 +12,7 @@ import DragableUploadImageList from './components/ContactInfo'
12 12
 import TextArea from 'antd/lib/input/TextArea';
13 13
 import copy from 'copy-to-clipboard';
14 14
 import copyImg from '../../../assets/copy.png';
15
+import Navigate from '@/components/Navigate';
15 16
 
16 17
 const { Option } = Select;
17 18
 const { MonthPicker, RangePicker, WeekPicker } = DatePicker;
@@ -104,7 +105,7 @@ const header = props => {
104 105
         </Form.Item>}
105 106
         <Form.Item label="样例内容">
106 107
           {demandData.sampleType === 'link' && <div><span style={{ color: 'rgba(0, 0, 0, 0.45)', fontSize: '14px' }}>点击链接查看内容</span><br/></div>}
107
-          {demandData.sampleType === 'rich' ? getFieldDecorator('sampleContent')(<div dangerouslySetInnerHTML={{ __html: demandData.sampleContent}}></div>) : getFieldDecorator('sampleContentLink')(<a style={{ color: "blue" }} href={demandData.sampleContentLink} target="_blank" >{demandData.sampleContentLink}</a>)}
108
+          {demandData.sampleType === 'rich' ? getFieldDecorator('sampleContent')(<div dangerouslySetInnerHTML={{ __html: demandData.sampleContent}}></div>) : getFieldDecorator('sampleContentLink')(<Navigate to={demandData.sampleContentLink}>{demandData.sampleContentLink}</Navigate>)}
108 109
         </Form.Item>
109 110
         <Form.Item wrapperCol={{ span: 15, offset: 7 }}>
110 111
           <div style={{ margin: '0.16rem 0 0.06rem' }}>

+ 2
- 1
src/pages/house/raise/edit/components/RaiseHouse.jsx Dosyayı Görüntüle

@@ -11,6 +11,7 @@ import FloorSelect from '../../../../../components/HouseSelect/FloorSelect'
11 11
 import RoomSelect from '../../../../../components/HouseSelect/RoomSelect'
12 12
 import ApartmentSelect from '../../../../../components/HouseSelect/ApartmentSelect';
13 13
 import BasicHeat from './BasicHeat';
14
+import Navigate from '@/components/Navigate';
14 15
 /**
15 16
  *图片设置
16 17
  *
@@ -125,7 +126,7 @@ function RaiseHouse(props) {
125 126
         title: '认筹实际热度',
126 127
         dataIndex: 'raiseRealHeat',
127 128
         key: 'raiseRealHeat',
128
-        render:  (x, row) => <><span style={{color: 'blue',cursor: 'pointer'}} onClick={() => showEdi({type: "identifyingChips",houseId: row.houseId})}>{row.raiseRealHeat}</span></>,
129
+        render:  (x, row) => <Navigate onClick={() => showEdi({type: "identifyingChips",houseId: row.houseId})}>{row.raiseRealHeat}</Navigate>,
129 130
     },
130 131
     {
131 132
       title: '锁定状态',

+ 5
- 4
src/pages/record/share/countList.jsx Dosyayı Görüntüle

@@ -7,6 +7,7 @@ import BuildSelect from '../../../components/SelectButton/BuildSelect'
7 7
 import apis from '../../../services/apis';
8 8
 import request from '../../../utils/request'
9 9
 import AuthButton from '@/components/AuthButton';
10
+import Navigate from '@/components/Navigate';
10 11
 
11 12
 /**
12 13
   @param {*} props
@@ -144,14 +145,14 @@ function record(props) {
144 145
       dataIndex: 'shareCount',
145 146
       key: 'shareCount',
146 147
       align: 'center',
147
-      render: (_, record) => <><span style={{color: 'blue',cursor: 'pointer'}} onClick={() => shareCount(record.personId)} >{record.shareCount}</span></>,
148
+      render: (_, record) => <Navigate onClick={() => shareCount(record.personId)}>{record.shareCount}</Navigate>,
148 149
     },
149 150
     {
150 151
       title: '点击人数',
151 152
       dataIndex: 'clickNum',
152 153
       key: 'clickNum',
153 154
       align: 'center',
154
-      render: (_, record) => <><span style={{color: 'blue',cursor: 'pointer'}} onClick={() => clickCount(record.personId)} >{record.clickNum}</span></>,
155
+      render: (_, record) => <Navigate onClick={() => clickCount(record.personId)}>{record.clickNum}</Navigate>,
155 156
     },
156 157
   ];
157 158
 
@@ -167,8 +168,8 @@ function record(props) {
167 168
           </Form.Item>
168 169
           <Form.Item>
169 170
             <span style={{marginRight:'10px'}}>分享时间:</span>
170
-                {getFieldDecorator('shareTime')(
171
-                  <RangePicker placeholder={['开始时间','结束时间']} />
171
+                {getFieldDecorator('shareTime',{initialValue : [moment(),moment()],})(
172
+                  <RangePicker placeholder={['开始时间','结束时间']}/>
172 173
                 )}
173 174
           </Form.Item>
174 175
           <Form.Item style={{position:'absolute',right:'38px'}}>

+ 2
- 1
src/pages/statistical/activity/detail.jsx Dosyayı Görüntüle

@@ -9,6 +9,7 @@ import AuthButton from '../../../components/AuthButton';
9 9
 import echarts from 'echarts/lib/echarts';
10 10
 import EChart from '../../../components/EchartsTest/EChart';
11 11
 import Prompt from 'umi/prompt';
12
+import Navigate from '@/components/Navigate';
12 13
 
13 14
 /**
14 15
   @param {*} props
@@ -102,7 +103,7 @@ function record(props) {
102 103
         if (val == 0) {
103 104
             return <><span>{val}</span></>
104 105
         }
105
-        return <><span style={{ color: 'blue', cursor: 'pointer' }} onClick={() => toDetail(record, type)} >{val}</span></>
106
+        return <Navigate onClick={() => toDetail(record, type)}>{val}</Navigate>
106 107
     }
107 108
 
108 109
     //排序

+ 3
- 2
src/pages/statistical/consultant/homePagePersons.jsx Dosyayı Görüntüle

@@ -6,6 +6,7 @@ import BuildSelect from '../../../components/SelectButton/BuildSelect'
6 6
 import apis from '../../../services/apis';
7 7
 import request from '../../../utils/request'
8 8
 import Prompt from 'umi/prompt';
9
+import Navigate from '@/components/Navigate';
9 10
 
10 11
 /**
11 12
   @param {*} props
@@ -80,7 +81,7 @@ function record(props) {
80 81
             dataIndex: 'name',
81 82
             key: 'name',
82 83
             align: 'center',
83
-            render: (_, record) => <span style={{ color: 'blue', cursor: 'pointer' }} onClick={() => toPersonDetail(record.personId)} >{record.name || record.nickname}</span>,
84
+            render: (_, record) => <Navigate onClick={() => toPersonDetail(record.personId)}>{record.name || record.nickname}</Navigate>,
84 85
         },
85 86
         {
86 87
             title: '电话',
@@ -100,7 +101,7 @@ function record(props) {
100 101
             dataIndex: 'visitTimes',
101 102
             key: 'visitTimes',
102 103
             align: 'center',
103
-            render: (_, record) => <span style={{ color: 'blue', cursor: 'pointer' }} onClick={() => toHomepageNum(record.personId)} >{record.visitTimes}</span>,
104
+            render: (_, record) => <Navigate onClick={() => toHomepageNum(record.personId)}>{record.visitTimes}</Navigate>,
104 105
         },
105 106
         {
106 107
             title: '最后访问时间',

+ 2
- 1
src/pages/statistical/consultant/table.jsx Dosyayı Görüntüle

@@ -6,6 +6,7 @@ import BuildSelect from '../../../components/SelectButton/BuildSelect'
6 6
 import apis from '../../../services/apis';
7 7
 import request from '../../../utils/request'
8 8
 import Prompt from 'umi/prompt';
9
+import Navigate from '@/components/Navigate';
9 10
 
10 11
 /**
11 12
   @param {*} props
@@ -96,7 +97,7 @@ function record(props) {
96 97
             dataIndex: 'name',
97 98
             key: 'name',
98 99
             align: 'center',
99
-            render: (_, record) => <span style={{ color: 'blue', cursor: 'pointer' }} onClick={() => toPersonDetail(record.personId)} >{record.name || record.nickname}</span>,
100
+            render: (_, record) => <Navigate onClick={() => toPersonDetail(record.personId)}>{record.name || record.nickname}</Navigate>,
100 101
         },
101 102
         {
102 103
             title: '电话',

+ 2
- 1
src/pages/statistical/consultant/visitPersons.jsx Dosyayı Görüntüle

@@ -6,6 +6,7 @@ import BuildSelect from '../../../components/SelectButton/BuildSelect'
6 6
 import apis from '../../../services/apis';
7 7
 import request from '../../../utils/request'
8 8
 import Prompt from 'umi/prompt';
9
+import Navigate from '@/components/Navigate';
9 10
 
10 11
 /**
11 12
   @param {*} props
@@ -94,7 +95,7 @@ function record(props) {
94 95
             dataIndex: 'visitTimes',
95 96
             key: 'visitTimes',
96 97
             align: 'center',
97
-            render: (_, record) => <span style={{ color: 'blue', cursor: 'pointer' }} onClick={() => tovisitNum(record.name || record.nickname, record.personId, record.visitTime)} >{record.visitTimes}</span>,
98
+            render: (_, record) => <Navigate onClick={() => tovisitNum(record.name || record.nickname, record.personId, record.visitTime)}>{record.visitTimes}</Navigate>,
98 99
         },
99 100
         {
100 101
             title: '最后访问时间',

+ 3
- 2
src/utils/request.js Dosyayı Görüntüle

@@ -20,7 +20,7 @@ const codeMessage = {
20 20
   410: '请求的资源被永久删除,且不会再得到的。',
21 21
   422: '当创建一个对象时,发生一个验证错误。',
22 22
   500: '服务器发生错误,请检查服务器。',
23
-  502: '网关错误。',
23
+  502: '连接服务超时',
24 24
   503: '服务不可用,服务器暂时过载或维护。',
25 25
   504: '网关超时。',
26 26
 };
@@ -70,7 +70,8 @@ request.interceptors.response.use(async (response, options) => {
70 70
       const errorText = codeMessage[response.status] || response.statusText;
71 71
       const { status, url } = response;
72 72
       notification.error({
73
-        message: `请求错误 ${status}: ${url}`,
73
+        // message: `连接超时,请刷新或重新登录 ${status}: ${url}`,
74
+        message: `连接超时,请刷新或重新登录 ${status}: ${url}`,
74 75
         description: errorText,
75 76
       });
76 77
       throw new Error(response.statusText);