魏熙美 il y a 5 ans
Parent
révision
840fa6ce3c

+ 6
- 1
config/config.js Voir le fichier

@@ -139,6 +139,11 @@ export default {
139 139
               name: '客户管理',
140 140
               component: '../layouts/BlankLayout',
141 141
               routes: [
142
+                {
143
+                  path: '/customer/customerlist/list',
144
+                  name: '客户列表',
145
+                  component: './customer/customerlist/index',
146
+                },
142 147
                 {
143 148
                   path: '/customer/drift/list',
144 149
                   name: '游客列表',
@@ -328,7 +333,7 @@ export default {
328 333
 
329 334
   proxy: {
330 335
     '/api/': {
331
-      target: 'http://192.168.0.84:8080/',
336
+      target: 'http://localhost:8080/',
332 337
       changeOrigin: true,
333 338
       // pathRewrite: { '^/server': '' },
334 339
     },

+ 211
- 0
src/pages/customer/customerlist/index.jsx Voir le fichier

@@ -0,0 +1,211 @@
1
+import React, { useState, useEffect } from 'react';
2
+import { Form, Icon, Input, Button, DatePicker, Select, Card, Row, Col, Pagination, Alert, Table, Avatar, Radio } from 'antd';
3
+import moment from 'moment';
4
+import request from '../../../utils/request';
5
+import apis from '../../../services/apis';
6
+import Styles from './style.less';
7
+
8
+
9
+const { Option } = Select;
10
+// eslint-disable-next-line @typescript-eslint/no-unused-vars
11
+const { Meta } = Card;
12
+
13
+const tempDate = [{ code: 's101' }]
14
+
15
+/**
16
+ *
17
+ *
18
+ * @param {*} props
19
+ * @returns
20
+ */
21
+function body(props) {
22
+  const { getFieldDecorator } = props.form
23
+
24
+  // eslint-disable-next-line react-hooks/rules-of-hooks
25
+  const [dataSource, setDataSource] = useState({ records: [] })
26
+
27
+  // 默认私客
28
+    // eslint-disable-next-line react-hooks/rules-of-hooks
29
+  const [customerType, setCustomerType] = useState('private')
30
+
31
+  // eslint-disable-next-line react-hooks/rules-of-hooks
32
+  useEffect(() => {
33
+    getList({ pageNumber: 1, pageSize: 10, customerType })
34
+  }, [])
35
+
36
+  function getList(params) {
37
+    // 网路请求
38
+    request({ ...apis.customer.customerRecommend, params: { ...params } }).then(res => {
39
+      setDataSource(res)
40
+    }).catch(err => {
41
+      // eslint-disable-next-line no-unused-expressions
42
+      <Alert
43
+        style={{
44
+          marginBottom: 24,
45
+        }}
46
+        message={err}
47
+        type="error"
48
+        showIcon
49
+      />
50
+    })
51
+  }
52
+
53
+  // 提交事件
54
+  function handleSubmit(e) {
55
+    e.preventDefault();
56
+    props.form.validateFields((err, values) => {
57
+      if (!err) {
58
+        getList({ pageNum: 1, pageSize: 10, customerType, ...values })
59
+      }
60
+    });
61
+  }
62
+
63
+  // Change 事件
64
+  function handleSelectChange(e) {
65
+    // eslint-disable-next-line no-console
66
+    console.log(e)
67
+  }
68
+
69
+  // 分页
70
+  function onChange(pageNum) {
71
+    // eslint-disable-next-line react-hooks/rules-of-hooks
72
+      getList({ pageNumber: pageNum, pageSize: 10, customerType })
73
+  }
74
+
75
+  // 私客/公客切换
76
+  function radioButtonHandleSizeChange(e) {
77
+    const { value } = e.target
78
+    setCustomerType(value)
79
+    getList({ pageNumber: 1, pageSize: 10, customerType: value })
80
+  }
81
+
82
+  const columns = [
83
+    {
84
+      title: '头像',
85
+      dataIndex: 'picture',
86
+      key: 'picture',
87
+      render: (_, record) => <Avatar shape="square" src={customerType === 'private' ? record.picture : record.avatarurl } size={64} icon="user" />,
88
+    },
89
+    {
90
+      title: '姓名',
91
+      dataIndex: 'name',
92
+      key: 'name',
93
+      // eslint-disable-next-line no-nested-ternary
94
+      render: (_, record) => <><sapn>{ customerType === 'private' ? record.name : record.nickname }</sapn></>,
95
+    },
96
+    {
97
+      title: '电话',
98
+      dataIndex: 'phone',
99
+      key: 'phone',
100
+    },
101
+    {
102
+      title: '性别',
103
+      dataIndex: 'sex',
104
+      key: 'sex',
105
+      // eslint-disable-next-line no-nested-ternary
106
+      render: (_, record) => <><sapn>{ record.sex === 1 ? '男' : record.sex === 2 ? '女' : '未知' }</sapn></>,
107
+    },
108
+    {
109
+      title: '置业顾问',
110
+      dataIndex: 'consultantName',
111
+      key: 'consultantName',
112
+      // eslint-disable-next-line no-nested-ternary
113
+      render: (_, record) => (
114
+        <>
115
+          <sapn>{ record.consultantName }</sapn>
116
+          <br/>
117
+          <sapn>{ record.consultTel }</sapn>
118
+        </>
119
+      ),
120
+    },
121
+    {
122
+      title: '客户状态',
123
+      dataIndex: 'reportRecommendStatus',
124
+      key: 'reportRecommendStatus',
125
+       // eslint-disable-next-line no-nested-ternary
126
+       render: (_, record) => <><sapn>{ record.reportRecommendStatus === 0 ? '为报备' : record.reportRecommendStatus === 1 ? '报备' : record.reportRecommendStatus === 2 ? '推荐' : '' }</sapn></>,
127
+    },
128
+    {
129
+      title: '操作',
130
+      dataIndex: 'customerId',
131
+      key: 'customerId',
132
+      // eslint-disable-next-line no-nested-ternary
133
+      render: (_, record) => (
134
+        <>
135
+          <sapn className={ customerType === 'private' ? Styles.text : Styles.displayS }>变更状态</sapn>
136
+          &nbsp;&nbsp;
137
+          <sapn className={  customerType === 'private' ? Styles.text : Styles.displayS }>调整归属</sapn>
138
+          <br/>
139
+          <sapn className={ Styles.text }>查看详情</sapn>
140
+          &nbsp;&nbsp;
141
+          <sapn className={ Styles.text }>积分记录</sapn>
142
+        </>
143
+      ),
144
+    },
145
+  ]
146
+
147
+  return (
148
+    <>
149
+      <Form layout="inline" onSubmit={e => handleSubmit(e, props)}>
150
+        <Form.Item>
151
+          {getFieldDecorator('buildingId')(
152
+            <Select style={{ width: '180px' }} placeholder="意向项目" onChange={handleSelectChange}>
153
+              <Option value="male">male</Option>
154
+            </Select>,
155
+          )}
156
+        </Form.Item>
157
+        <Form.Item>
158
+          {getFieldDecorator('reportRecommendStatus')(
159
+            <Select style={{ width: '180px' }} placeholder="状态" onChange={handleSelectChange}>
160
+              <Option value={0}>未报备</Option>
161
+              <Option value={1}>报备</Option>
162
+              <Option value={2}>推荐</Option>
163
+            </Select>,
164
+          )}
165
+        </Form.Item>
166
+        <Form.Item>
167
+          {getFieldDecorator('name')(
168
+            <Input
169
+              prefix={<Icon type="text" style={{ color: 'rgba(0,0,0,.25)' }} />}
170
+              placeholder="姓名"
171
+            />,
172
+          )}
173
+        </Form.Item>
174
+        <Form.Item>
175
+          {getFieldDecorator('tel')(
176
+            <Input
177
+              prefix={<Icon type="text" style={{ color: 'rgba(0,0,0,.25)' }} />}
178
+              placeholder="电话"
179
+            />,
180
+          )}
181
+        </Form.Item>
182
+        <Form.Item>
183
+          {getFieldDecorator('consultName')(
184
+            <Input placeholder="置业顾问" />,
185
+          )}
186
+        </Form.Item>
187
+        <Form.Item>
188
+          {getFieldDecorator('consultTel')(
189
+            <Input placeholder="置业顾问电话" />,
190
+          )}
191
+        </Form.Item>
192
+        <Form.Item>
193
+          <Button type="primary" htmlType="submit" className={Styles.SubmitButton}>
194
+            搜索
195
+          </Button>
196
+        </Form.Item>
197
+      </Form>
198
+
199
+       <div style={{ marginTop: '20px', marginBottom: '20px' }}>
200
+        <Radio.Group value={customerType} onChange={radioButtonHandleSizeChange} buttonStyle="solid">
201
+            <Radio.Button value="private">私客</Radio.Button>
202
+            <Radio.Button value="public">公客</Radio.Button>
203
+        </Radio.Group>
204
+       </div>
205
+      <Table dataSource={dataSource.records} columns={columns} pagination={{ total: dataSource.total, onChange }} />
206
+    </>
207
+  );
208
+}
209
+const WrappedBody = Form.create({ name: 'body' })(body);
210
+
211
+export default WrappedBody

+ 69
- 0
src/pages/customer/customerlist/style.css Voir le fichier

@@ -0,0 +1,69 @@
1
+.SubmitButton {
2
+  background: #ef273a;
3
+  border-radius: 7px;
4
+  border: 0px;
5
+}
6
+.text {
7
+  color: #ef273a;
8
+}
9
+.SelectFrom {
10
+  width: 180px;
11
+  background: #ffffff;
12
+  border-radius: 7px;
13
+  border: 1px solid #dbdbdb;
14
+}
15
+.addButton {
16
+  background: #50be00;
17
+  border-radius: 4px;
18
+  border: 0px;
19
+  margin: 10px 0px;
20
+}
21
+.cardText {
22
+  font-size: 18px;
23
+  color: #333;
24
+  line-height: 24px;
25
+  display: flex;
26
+  align-items: center;
27
+  position: relative;
28
+}
29
+.cardItem {
30
+  font-size: 18px;
31
+  font-weight: 400;
32
+  color: #666;
33
+  line-height: 24px;
34
+  display: flex;
35
+  align-items: center;
36
+}
37
+.ediText {
38
+  font-size: 18px;
39
+  color: #ff925c;
40
+  line-height: 24px;
41
+  position: absolute;
42
+  right: 0;
43
+}
44
+.title {
45
+  display: inline-block;
46
+  width: 84px;
47
+  justify-content: space-between;
48
+  text-align: justify;
49
+  text-align-last: justify;
50
+}
51
+.address {
52
+  width: 400px;
53
+  height: 24px;
54
+  text-overflow: ellipsis;
55
+  white-space: nowrap;
56
+  overflow: hidden;
57
+}
58
+.pitchButton {
59
+  border-color: #ff7e48;
60
+  background-color: #ff7e48;
61
+  color: #ffffff;
62
+}
63
+.noButton {
64
+  border-color: #ff7e48;
65
+  color: #ff7e48;
66
+}
67
+.displayS {
68
+  display: none;
69
+}

+ 72
- 0
src/pages/customer/customerlist/style.less Voir le fichier

@@ -0,0 +1,72 @@
1
+.SubmitButton {
2
+  background: rgba(239,39,58,1);
3
+  border-radius: 7px;
4
+  border: 0px;
5
+}
6
+.text {
7
+  color: rgba(239,39,58,1);
8
+}
9
+.SelectFrom {
10
+  width: 180px;
11
+  background: #ffffff;
12
+  border-radius: 7px;
13
+  border: 1px solid #dbdbdb;
14
+}
15
+.addButton {
16
+  background: #50be00;
17
+  border-radius: 4px;
18
+  border: 0px;
19
+  margin: 10px 0px;
20
+}
21
+.cardText {
22
+  font-size: 18px;
23
+  color: #333;
24
+  line-height: 24px;
25
+  display: flex;
26
+  align-items: center;
27
+  position: relative;
28
+
29
+}
30
+.cardItem{
31
+  font-size: 18px;
32
+  font-weight: 400;
33
+  color: #666;
34
+  line-height: 24px;
35
+  display: flex;
36
+  align-items: center;  
37
+}
38
+.ediText {
39
+  font-size: 18px;
40
+  color: #ff925c;
41
+  line-height: 24px;
42
+  position: absolute;
43
+  right: 0;
44
+}
45
+.title{
46
+  display: inline-block;
47
+  width: 84px;
48
+  justify-content: space-between;
49
+  text-align: justify;
50
+  text-align-last:justify
51
+}
52
+
53
+.address { 
54
+  width: 400px;
55
+  height: 24px; 
56
+  text-overflow: ellipsis; 
57
+  white-space: nowrap;
58
+  overflow: hidden;
59
+}
60
+
61
+.pitchButton { 
62
+  border-color: rgba(255,126,72,1);
63
+  background-color: rgba(255,126,72,1);
64
+  color: rgba(255,255,255,1); 
65
+}
66
+.noButton {
67
+  border-color: rgba(255,126,72,1);
68
+  color: rgba(255,126,72,1);
69
+}
70
+.displayS {
71
+  display: none;
72
+}

+ 69
- 0
src/pages/customer/customerlist/style.wxss Voir le fichier

@@ -0,0 +1,69 @@
1
+.SubmitButton {
2
+  background: #ef273a;
3
+  border-radius: 7px;
4
+  border: 0px;
5
+}
6
+.text {
7
+  color: #ef273a;
8
+}
9
+.SelectFrom {
10
+  width: 180px;
11
+  background: #ffffff;
12
+  border-radius: 7px;
13
+  border: 1px solid #dbdbdb;
14
+}
15
+.addButton {
16
+  background: #50be00;
17
+  border-radius: 4px;
18
+  border: 0px;
19
+  margin: 10px 0px;
20
+}
21
+.cardText {
22
+  font-size: 18px;
23
+  color: #333;
24
+  line-height: 24px;
25
+  display: flex;
26
+  align-items: center;
27
+  position: relative;
28
+}
29
+.cardItem {
30
+  font-size: 18px;
31
+  font-weight: 400;
32
+  color: #666;
33
+  line-height: 24px;
34
+  display: flex;
35
+  align-items: center;
36
+}
37
+.ediText {
38
+  font-size: 18px;
39
+  color: #ff925c;
40
+  line-height: 24px;
41
+  position: absolute;
42
+  right: 0;
43
+}
44
+.title {
45
+  display: inline-block;
46
+  width: 84px;
47
+  justify-content: space-between;
48
+  text-align: justify;
49
+  text-align-last: justify;
50
+}
51
+.address {
52
+  width: 400px;
53
+  height: 24px;
54
+  text-overflow: ellipsis;
55
+  white-space: nowrap;
56
+  overflow: hidden;
57
+}
58
+.pitchButton {
59
+  border-color: #ff7e48;
60
+  background-color: #ff7e48;
61
+  color: #ffffff;
62
+}
63
+.noButton {
64
+  border-color: #ff7e48;
65
+  color: #ff7e48;
66
+}
67
+.displayS {
68
+  display: none;
69
+}

+ 1
- 0
src/pages/customer/drift/index.jsx Voir le fichier

@@ -3,6 +3,7 @@ import { Table, Avatar, Alert } from 'antd';
3 3
 
4 4
 import request from '../../../utils/request';
5 5
 import apis from '../../../services/apis';
6
+import Styles from './style.less'
6 7
 
7 8
 function costomerDrift() {
8 9
   // eslint-disable-next-line react-hooks/rules-of-hooks

+ 57
- 0
src/pages/customer/drift/style.less Voir le fichier

@@ -0,0 +1,57 @@
1
+.SubmitButton {
2
+  background: rgba(239,39,58,1);
3
+  border-radius: 7px;
4
+  border: 0px;
5
+}
6
+.SelectFrom {
7
+  width: 180px;
8
+  background: #ffffff;
9
+  border-radius: 7px;
10
+  border: 1px solid #dbdbdb;
11
+}
12
+.addButton {
13
+  background: #50be00;
14
+  border-radius: 4px;
15
+  border: 0px;
16
+  margin: 10px 0px;
17
+}
18
+.cardText {
19
+  font-size: 18px;
20
+  color: #333;
21
+  line-height: 24px;
22
+  display: flex;
23
+  align-items: center;
24
+  position: relative;
25
+
26
+}
27
+.cardItem{
28
+  font-size: 18px;
29
+  font-weight: 400;
30
+  color: #666;
31
+  line-height: 24px;
32
+  display: flex;
33
+  align-items: center;  
34
+}
35
+.ediText {
36
+  font-size: 18px;
37
+  color: #ff925c;
38
+  line-height: 24px;
39
+  position: absolute;
40
+  right: 0;
41
+}
42
+.title{
43
+  display: inline-block;
44
+  width: 84px;
45
+  justify-content: space-between;
46
+  text-align: justify;
47
+  text-align-last:justify
48
+}
49
+
50
+.address { 
51
+  width: 400px;
52
+  height: 24px; 
53
+  text-overflow: ellipsis; 
54
+  white-space: nowrap;
55
+  overflow: hidden;
56
+}
57
+

+ 11
- 10
src/pages/customer/independentList/index.jsx Voir le fichier

@@ -93,16 +93,6 @@ function body(props) {
93 93
       dataIndex: 'phone',
94 94
       key: 'phone',
95 95
     },
96
-    {
97
-      title: '类型',
98
-      dataIndex: 'personTtype',
99
-      key: 'personType',
100
-    },
101
-    {
102
-      title: '所属渠道',
103
-      dataIndex: 'qudao',
104
-      key: 'qudao',
105
-    },
106 96
     {
107 97
       title: '性别',
108 98
       dataIndex: 'gender',
@@ -110,6 +100,17 @@ function body(props) {
110 100
       // eslint-disable-next-line no-nested-ternary
111 101
       render: (_, record) => <><sapn>{ record.gender === '1' ? '男' : record.gender === '2' ? '女' : '未知' }</sapn></>,
112 102
     },
103
+    {
104
+      title: '类型',
105
+      dataIndex: 'personType',
106
+      key: 'personType',
107
+      render: (_, record) => <><sapn>{ record.channelName !== null ? '渠道经纪人' : '独立经纪人' }</sapn></>,
108
+    },
109
+    {
110
+      title: '所属渠道',
111
+      dataIndex: 'channelName',
112
+      key: 'channelName',
113
+    },
113 114
     {
114 115
       title: '操作',
115 116
       dataIndex: 'customerId',

+ 54
- 0
src/pages/customer/independentList/style.css Voir le fichier

@@ -0,0 +1,54 @@
1
+.SubmitButton {
2
+  background: #ef273a;
3
+  border-radius: 7px;
4
+  border: 0px;
5
+}
6
+.SelectFrom {
7
+  width: 180px;
8
+  background: #ffffff;
9
+  border-radius: 7px;
10
+  border: 1px solid #dbdbdb;
11
+}
12
+.addButton {
13
+  background: #50be00;
14
+  border-radius: 4px;
15
+  border: 0px;
16
+  margin: 10px 0px;
17
+}
18
+.cardText {
19
+  font-size: 18px;
20
+  color: #333;
21
+  line-height: 24px;
22
+  display: flex;
23
+  align-items: center;
24
+  position: relative;
25
+}
26
+.cardItem {
27
+  font-size: 18px;
28
+  font-weight: 400;
29
+  color: #666;
30
+  line-height: 24px;
31
+  display: flex;
32
+  align-items: center;
33
+}
34
+.ediText {
35
+  font-size: 18px;
36
+  color: #ff925c;
37
+  line-height: 24px;
38
+  position: absolute;
39
+  right: 0;
40
+}
41
+.title {
42
+  display: inline-block;
43
+  width: 84px;
44
+  justify-content: space-between;
45
+  text-align: justify;
46
+  text-align-last: justify;
47
+}
48
+.address {
49
+  width: 400px;
50
+  height: 24px;
51
+  text-overflow: ellipsis;
52
+  white-space: nowrap;
53
+  overflow: hidden;
54
+}

+ 1
- 1
src/pages/customer/independentList/style.less Voir le fichier

@@ -1,5 +1,5 @@
1 1
 .SubmitButton {
2
-  background: #3a91d5;
2
+  background: rgba(239,39,58,1);
3 3
   border-radius: 7px;
4 4
   border: 0px;
5 5
 }

+ 54
- 0
src/pages/customer/independentList/style.wxss Voir le fichier

@@ -0,0 +1,54 @@
1
+.SubmitButton {
2
+  background: #ef273a;
3
+  border-radius: 7px;
4
+  border: 0px;
5
+}
6
+.SelectFrom {
7
+  width: 180px;
8
+  background: #ffffff;
9
+  border-radius: 7px;
10
+  border: 1px solid #dbdbdb;
11
+}
12
+.addButton {
13
+  background: #50be00;
14
+  border-radius: 4px;
15
+  border: 0px;
16
+  margin: 10px 0px;
17
+}
18
+.cardText {
19
+  font-size: 18px;
20
+  color: #333;
21
+  line-height: 24px;
22
+  display: flex;
23
+  align-items: center;
24
+  position: relative;
25
+}
26
+.cardItem {
27
+  font-size: 18px;
28
+  font-weight: 400;
29
+  color: #666;
30
+  line-height: 24px;
31
+  display: flex;
32
+  align-items: center;
33
+}
34
+.ediText {
35
+  font-size: 18px;
36
+  color: #ff925c;
37
+  line-height: 24px;
38
+  position: absolute;
39
+  right: 0;
40
+}
41
+.title {
42
+  display: inline-block;
43
+  width: 84px;
44
+  justify-content: space-between;
45
+  text-align: justify;
46
+  text-align-last: justify;
47
+}
48
+.address {
49
+  width: 400px;
50
+  height: 24px;
51
+  text-overflow: ellipsis;
52
+  white-space: nowrap;
53
+  overflow: hidden;
54
+}

+ 2
- 2
src/pages/customer/recommendCustomer/index.jsx Voir le fichier

@@ -119,8 +119,8 @@ function body(props) {
119 119
     },
120 120
     {
121 121
       title: '状态',
122
-      dataIndex: 'createDate',
123
-      key: 'createDate',
122
+      dataIndex: 'verifyStatus',
123
+      key: 'verifyStatus',
124 124
       render: (_, record) => <><sapn>{ record.verifyStatus === 0 ? '未通过': record.verifyStatus === 1 ? '已通过' : record.verifyStatus === 2 ? '已驳回' : '' }</sapn></>,
125 125
     },
126 126
     {

+ 54
- 0
src/pages/customer/recommendCustomer/style.css Voir le fichier

@@ -0,0 +1,54 @@
1
+.SubmitButton {
2
+  background: #ef273a;
3
+  border-radius: 7px;
4
+  border: 0px;
5
+}
6
+.SelectFrom {
7
+  width: 180px;
8
+  background: #ffffff;
9
+  border-radius: 7px;
10
+  border: 1px solid #dbdbdb;
11
+}
12
+.addButton {
13
+  background: #50be00;
14
+  border-radius: 4px;
15
+  border: 0px;
16
+  margin: 10px 0px;
17
+}
18
+.cardText {
19
+  font-size: 18px;
20
+  color: #333;
21
+  line-height: 24px;
22
+  display: flex;
23
+  align-items: center;
24
+  position: relative;
25
+}
26
+.cardItem {
27
+  font-size: 18px;
28
+  font-weight: 400;
29
+  color: #666;
30
+  line-height: 24px;
31
+  display: flex;
32
+  align-items: center;
33
+}
34
+.ediText {
35
+  font-size: 18px;
36
+  color: #ff925c;
37
+  line-height: 24px;
38
+  position: absolute;
39
+  right: 0;
40
+}
41
+.title {
42
+  display: inline-block;
43
+  width: 84px;
44
+  justify-content: space-between;
45
+  text-align: justify;
46
+  text-align-last: justify;
47
+}
48
+.address {
49
+  width: 400px;
50
+  height: 24px;
51
+  text-overflow: ellipsis;
52
+  white-space: nowrap;
53
+  overflow: hidden;
54
+}

+ 1
- 1
src/pages/customer/recommendCustomer/style.less Voir le fichier

@@ -1,5 +1,5 @@
1 1
 .SubmitButton {
2
-  background: #3a91d5;
2
+  background: rgba(239,39,58,1);
3 3
   border-radius: 7px;
4 4
   border: 0px;
5 5
 }

+ 54
- 0
src/pages/customer/recommendCustomer/style.wxss Voir le fichier

@@ -0,0 +1,54 @@
1
+.SubmitButton {
2
+  background: #ef273a;
3
+  border-radius: 7px;
4
+  border: 0px;
5
+}
6
+.SelectFrom {
7
+  width: 180px;
8
+  background: #ffffff;
9
+  border-radius: 7px;
10
+  border: 1px solid #dbdbdb;
11
+}
12
+.addButton {
13
+  background: #50be00;
14
+  border-radius: 4px;
15
+  border: 0px;
16
+  margin: 10px 0px;
17
+}
18
+.cardText {
19
+  font-size: 18px;
20
+  color: #333;
21
+  line-height: 24px;
22
+  display: flex;
23
+  align-items: center;
24
+  position: relative;
25
+}
26
+.cardItem {
27
+  font-size: 18px;
28
+  font-weight: 400;
29
+  color: #666;
30
+  line-height: 24px;
31
+  display: flex;
32
+  align-items: center;
33
+}
34
+.ediText {
35
+  font-size: 18px;
36
+  color: #ff925c;
37
+  line-height: 24px;
38
+  position: absolute;
39
+  right: 0;
40
+}
41
+.title {
42
+  display: inline-block;
43
+  width: 84px;
44
+  justify-content: space-between;
45
+  text-align: justify;
46
+  text-align-last: justify;
47
+}
48
+.address {
49
+  width: 400px;
50
+  height: 24px;
51
+  text-overflow: ellipsis;
52
+  white-space: nowrap;
53
+  overflow: hidden;
54
+}

+ 54
- 0
src/pages/customer/report/style.css Voir le fichier

@@ -0,0 +1,54 @@
1
+.SubmitButton {
2
+  background: #ef273a;
3
+  border-radius: 7px;
4
+  border: 0px;
5
+}
6
+.SelectFrom {
7
+  width: 180px;
8
+  background: #ffffff;
9
+  border-radius: 7px;
10
+  border: 1px solid #dbdbdb;
11
+}
12
+.addButton {
13
+  background: #50be00;
14
+  border-radius: 4px;
15
+  border: 0px;
16
+  margin: 10px 0px;
17
+}
18
+.cardText {
19
+  font-size: 18px;
20
+  color: #333;
21
+  line-height: 24px;
22
+  display: flex;
23
+  align-items: center;
24
+  position: relative;
25
+}
26
+.cardItem {
27
+  font-size: 18px;
28
+  font-weight: 400;
29
+  color: #666;
30
+  line-height: 24px;
31
+  display: flex;
32
+  align-items: center;
33
+}
34
+.ediText {
35
+  font-size: 18px;
36
+  color: #ff925c;
37
+  line-height: 24px;
38
+  position: absolute;
39
+  right: 0;
40
+}
41
+.title {
42
+  display: inline-block;
43
+  width: 84px;
44
+  justify-content: space-between;
45
+  text-align: justify;
46
+  text-align-last: justify;
47
+}
48
+.address {
49
+  width: 400px;
50
+  height: 24px;
51
+  text-overflow: ellipsis;
52
+  white-space: nowrap;
53
+  overflow: hidden;
54
+}

+ 1
- 1
src/pages/customer/report/style.less Voir le fichier

@@ -1,5 +1,5 @@
1 1
 .SubmitButton {
2
-  background: #3a91d5;
2
+  background: rgba(239,39,58,1);
3 3
   border-radius: 7px;
4 4
   border: 0px;
5 5
 }

+ 54
- 0
src/pages/customer/report/style.wxss Voir le fichier

@@ -0,0 +1,54 @@
1
+.SubmitButton {
2
+  background: #ef273a;
3
+  border-radius: 7px;
4
+  border: 0px;
5
+}
6
+.SelectFrom {
7
+  width: 180px;
8
+  background: #ffffff;
9
+  border-radius: 7px;
10
+  border: 1px solid #dbdbdb;
11
+}
12
+.addButton {
13
+  background: #50be00;
14
+  border-radius: 4px;
15
+  border: 0px;
16
+  margin: 10px 0px;
17
+}
18
+.cardText {
19
+  font-size: 18px;
20
+  color: #333;
21
+  line-height: 24px;
22
+  display: flex;
23
+  align-items: center;
24
+  position: relative;
25
+}
26
+.cardItem {
27
+  font-size: 18px;
28
+  font-weight: 400;
29
+  color: #666;
30
+  line-height: 24px;
31
+  display: flex;
32
+  align-items: center;
33
+}
34
+.ediText {
35
+  font-size: 18px;
36
+  color: #ff925c;
37
+  line-height: 24px;
38
+  position: absolute;
39
+  right: 0;
40
+}
41
+.title {
42
+  display: inline-block;
43
+  width: 84px;
44
+  justify-content: space-between;
45
+  text-align: justify;
46
+  text-align-last: justify;
47
+}
48
+.address {
49
+  width: 400px;
50
+  height: 24px;
51
+  text-overflow: ellipsis;
52
+  white-space: nowrap;
53
+  overflow: hidden;
54
+}

+ 4
- 0
src/services/apis.js Voir le fichier

@@ -64,5 +64,9 @@ export default {
64 64
       method: 'GET',
65 65
       url: `${prefix}/customer/agents`,
66 66
     },
67
+    customerRecommend: {
68
+      method: 'GET',
69
+      url: `${prefix}/customer/recommend`,
70
+    },
67 71
   },
68 72
 }