xujing 5 年之前
父節點
當前提交
25de5194b0

+ 6
- 0
config/routes.js 查看文件

@@ -994,6 +994,12 @@ export default [
994 994
                 hideInMenu: true,
995 995
                 component: './marketingTools/lottery/data',
996 996
               },
997
+              {
998
+                path: '/marketingTools/lottery/add',
999
+                name: '编辑',
1000
+                hideInMenu: true,
1001
+                component: './marketingTools/lottery/add',
1002
+              },
997 1003
             ],
998 1004
           },
999 1005
           // {

+ 110
- 0
src/pages/marketingTools/components/step1.jsx 查看文件

@@ -0,0 +1,110 @@
1
+import React, { useState, useEffect } from 'react';
2
+import { Form, Icon, Input, Button, DatePicker, InputNumber, Radio } from 'antd';
3
+import Styles from './style.less';
4
+
5
+function CreatActivity(props) {
6
+    const { getFieldDecorator } = props.form;
7
+    const { RangePicker } = DatePicker;
8
+
9
+    const [tab, setTab] = useState('0')
10
+    const formItemLayout = {
11
+        labelCol: {
12
+            xs: { span: 24 },
13
+            sm: { span: 5 },
14
+        },
15
+        wrapperCol: {
16
+            xs: { span: 24 },
17
+            sm: { span: 16 },
18
+        },
19
+    };
20
+
21
+
22
+    function handleSubmit(e) {
23
+        e.preventDefault();
24
+        props.form.validateFieldsAndScroll((err, values) => {
25
+            if (!err) {
26
+                props.onNext()
27
+            }
28
+        });
29
+    }
30
+
31
+    return (
32
+        <>
33
+            <Form {...formItemLayout} onSubmit={handleSubmit}>
34
+                <p className={Styles.title}>基本信息</p>
35
+                <Form.Item label="活动名称" >
36
+                    {getFieldDecorator('activityName', {
37
+                        rules: [{ required: true, message: '请输入活动名称' }],
38
+                    })(<Input />)}
39
+                </Form.Item>
40
+                <Form.Item label="活动时间">
41
+                    {getFieldDecorator('activityTime', {
42
+                        rules: [
43
+                            {
44
+                                required: true,
45
+                                message: '请选择活动时间',
46
+                            },
47
+                        ],
48
+                    })(<RangePicker format="YYYY-MM-DD HH:mm" />)}
49
+                </Form.Item>
50
+
51
+                <Form.Item label="参与身份" >
52
+                    {getFieldDecorator('role', {
53
+                        initialValue: 1,
54
+                    })(
55
+                        <Radio.Group>
56
+                            <Radio value={1}>所有用户</Radio>
57
+                            <Radio value={2}>新用户(未注册过手机号)</Radio>
58
+                        </Radio.Group>,
59
+                    )}
60
+                </Form.Item>
61
+
62
+                <Form.Item label="活动类型" >
63
+                    {getFieldDecorator('activityType', {
64
+                        initialValue: 1,
65
+                    })(
66
+                        <Radio.Group>
67
+                            <Radio value={1}>无线抽奖</Radio>
68
+                            <Radio value={2}>积分抽奖,消耗 {getFieldDecorator('integral')(<InputNumber min={1} />)} 积分</Radio>
69
+                        </Radio.Group>,
70
+                    )}
71
+                </Form.Item>
72
+
73
+                <Form.Item label="参与次数" >
74
+                    {getFieldDecorator('times', {
75
+                        initialValue: 1,
76
+                    })(
77
+                        <Radio.Group>
78
+                            <Radio value={1}>
79
+                                一天N次
80
+                                <div style={{ marginTop: '8px' }}>每人每天抽 {getFieldDecorator('times1')(<InputNumber min={1} />)} 次</div>
81
+                                <div>每天分享额外抽 {getFieldDecorator('times2')(<InputNumber min={1} />)} 次</div>
82
+                            </Radio>
83
+                            <Radio value={2}>
84
+                                一人N次
85
+                                        <div style={{ marginTop: '8px' }}>每人一共可抽 {getFieldDecorator('times3')(<InputNumber min={1} />)} 次</div>
86
+                                <div>每人分享额外抽 {getFieldDecorator('times4')(<InputNumber min={1} />)} 次</div>
87
+                            </Radio>
88
+                        </Radio.Group>,
89
+                    )}
90
+                </Form.Item>
91
+
92
+
93
+
94
+                <Form.Item style={{ width: '500px', margin: 'auto', display: 'flex', justifyContent: 'space-between' }}>
95
+                    <Button onClick={() => router.go(-1)} style={{ margin: '0 20px' }}>
96
+                        取消
97
+                    </Button>
98
+
99
+                    <Button type="primary" htmlType="submit">
100
+                        下一步
101
+                    </Button>
102
+                </Form.Item>
103
+            </Form>
104
+        </>
105
+    )
106
+}
107
+
108
+const WrappedCreatActivityForm = Form.create({ name: 'CreatActivity' })(CreatActivity);
109
+
110
+export default WrappedCreatActivityForm

+ 177
- 0
src/pages/marketingTools/components/step2.jsx 查看文件

@@ -0,0 +1,177 @@
1
+import React, { useState, useEffect } from 'react';
2
+import { Form, Icon, Input, Button, Table, InputNumber, Radio } from 'antd';
3
+import Styles from './style.less';
4
+
5
+function Award(props) {
6
+    const { getFieldDecorator } = props.form;
7
+
8
+    const formItemLayout = {
9
+        labelCol: {
10
+            xs: { span: 24 },
11
+            sm: { span: 5 },
12
+        },
13
+        wrapperCol: {
14
+            xs: { span: 24 },
15
+            sm: { span: 16 },
16
+        },
17
+    };
18
+    const list = [
19
+        {
20
+            name: '特等奖',
21
+            award: '华为P30pro',
22
+            img: 'http://img1.imgtn.bdimg.com/it/u=3784469630,654971&fm=26&gp=0.jpg',
23
+            num: '2',
24
+            percent: '5%',
25
+            provide: '',
26
+            index: '1'
27
+        },
28
+        {
29
+            name: '一等奖',
30
+            award: '500元苏果卡',
31
+            img: 'https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=637033601,3111670601&fm=26&gp=0.jpg',
32
+            num: '50',
33
+            percent: '20%',
34
+            provide: '',
35
+            index: '2'
36
+        },
37
+        {
38
+            name: '二等奖',
39
+            award: '300元苏果卡',
40
+            img: 'https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=1997215264,2437398566&fm=26&gp=0.jpg',
41
+            num: '20',
42
+            percent: '30%',
43
+            provide: '',
44
+            index: '3'
45
+        },
46
+        {
47
+            name: '三等奖',
48
+            award: '100积分',
49
+            img: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1591957675722&di=ff6e441952a79e88e7a78123bf185bc6&imgtype=0&src=http%3A%2F%2F588ku.izihun.com%2Felement_origin_min_pic%2F18%2F08%2F22%2F59423ed3bcf4af7517454958f989b912.jpg%2521%2Ffw%2F820%2Fquality%2F100%2Funsharp%2Ftrue%2Fcompress%2Ftrue%2Fformat%2Fjpeg',
50
+            num: '50',
51
+            percent: '50%',
52
+            provide: '',
53
+            index: '4'
54
+        },
55
+
56
+    ]
57
+
58
+
59
+    const columns = [
60
+        {
61
+            title: '名称',
62
+            dataIndex: 'name',
63
+            key: 'name',
64
+            align: 'center',
65
+        },
66
+        {
67
+            title: '奖品',
68
+            dataIndex: 'award',
69
+            key: 'award',
70
+            align: 'center',
71
+        },
72
+        {
73
+            title: '图片',
74
+            dataIndex: 'img',
75
+            key: 'img',
76
+            align: 'center',
77
+            render: (img) => <img style={{ width: '40px', height: '40px' }} src={img}></img>
78
+        },
79
+        {
80
+            title: '数量',
81
+            dataIndex: 'num',
82
+            key: 'num',
83
+            align: 'center',
84
+        },
85
+        {
86
+            title: '中奖概率',
87
+            dataIndex: 'percent',
88
+            key: 'percent',
89
+            align: 'center',
90
+        },
91
+        {
92
+            title: '已发放',
93
+            dataIndex: 'provide',
94
+            key: 'provide',
95
+            align: 'center',
96
+        },
97
+        {
98
+            title: '操作',
99
+            dataIndex: 'handle',
100
+            key: 'handle',
101
+            align: 'center',
102
+            render: () => <>
103
+                <span style={{ color: '#FF4A4A', marginRight: '6px' }}>编辑</span>
104
+                <span style={{ color: '#FF4A4A' }}>删除</span>
105
+            </>
106
+        },
107
+    ];
108
+
109
+    function handleSubmit(e) {
110
+        e.preventDefault();
111
+        props.form.validateFieldsAndScroll((err, values) => {
112
+            if (!err) {
113
+                props.onNext()
114
+            }
115
+        });
116
+    }
117
+
118
+
119
+    return (
120
+        <>
121
+            <Form {...formItemLayout} onSubmit={handleSubmit}>
122
+                <p className={Styles.title}>奖品设置</p>
123
+                <p className={Styles.blue}>添加奖品</p>
124
+                <Table className={Styles.table} bordered dataSource={list} columns={columns} pagination={false} rowKey={(x => x.index)} />
125
+                <p className={Styles.title} style={{ marginTop: '20px' }}>未中奖设置</p>
126
+                <Form.Item label="名称" >
127
+                    {getFieldDecorator('name', {
128
+                        rules: [{ required: true, message: '请输入名称' }],
129
+                    })(<Input placeholder='请输入名称' />)}
130
+                </Form.Item>
131
+                <Form.Item label="图片" >
132
+                    <img style={{ width: '120px', height: '120px', marginRight: '10px' }} src="https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=2907552255,1679967258&fm=26&gp=0.jpg" alt="" />
133
+                    <span className={Styles.blue}>修改</span>
134
+                </Form.Item>
135
+                <Form.Item label="提示语" >
136
+                    {getFieldDecorator('tip')(<Input placeholder='请输入提示语' />)}
137
+                </Form.Item>
138
+                <Form.Item label="提示跳转" >
139
+                    {getFieldDecorator('role', {
140
+                        initialValue: 1,
141
+                    })(
142
+                        <Radio.Group>
143
+                            <Radio value={1}>无跳转</Radio>
144
+                            <Radio value={2}>有跳转 <span className={Styles.blue}>选择跳转界面</span> </Radio>
145
+                        </Radio.Group>,
146
+                    )}
147
+                </Form.Item>
148
+                <p className={Styles.title} style={{ marginTop: '20px' }}>参与送积分</p>
149
+
150
+                <Form.Item >
151
+                    参与送 {getFieldDecorator('jifen')(<InputNumber min={1} />)} 积分
152
+                </Form.Item>
153
+                <Form.Item>
154
+                    {getFieldDecorator('noaward')(
155
+                        <Radio.Group>
156
+                            <Radio value={1}>仅送给未中奖用户</Radio>
157
+                        </Radio.Group>,
158
+
159
+                    )}
160
+                </Form.Item>
161
+
162
+                <Form.Item style={{ width: '500px', margin: 'auto', display: 'flex', justifyContent: 'space-between' }}>
163
+                    <Button onClick={() => props.onPre()} style={{ margin: '0 20px' }}>
164
+                        上一步
165
+                    </Button>
166
+                    <Button type="primary" htmlType="submit">
167
+                        下一步
168
+                    </Button>
169
+                </Form.Item>
170
+            </Form>
171
+        </>
172
+    )
173
+}
174
+
175
+const WrappedAwardForm = Form.create({ name: 'Award' })(Award);
176
+
177
+export default WrappedAwardForm

+ 72
- 0
src/pages/marketingTools/components/step3.jsx 查看文件

@@ -0,0 +1,72 @@
1
+import React, { useState, useEffect } from 'react';
2
+import { Form, Icon, Input, Button, Table, Radio } from 'antd';
3
+import Styles from './style.less';
4
+import Wangedit from '../../../components/Wangedit/Wangedit'
5
+
6
+function Award(props) {
7
+    const { getFieldDecorator } = props.form;
8
+
9
+
10
+    const formItemLayout = {
11
+        labelCol: {
12
+            xs: { span: 24 },
13
+            sm: { span: 4 },
14
+        },
15
+        wrapperCol: {
16
+            xs: { span: 24 },
17
+            sm: { span: 20 },
18
+        },
19
+    };
20
+
21
+
22
+    function handleSubmit(e) {
23
+        e.preventDefault();
24
+        props.form.validateFieldsAndScroll((err, values) => {
25
+            if (!err) {
26
+                props.onNext()
27
+            }
28
+        });
29
+    }
30
+
31
+
32
+    return (
33
+        <>
34
+            <Form style={{minWidth:'700px'}} {...formItemLayout} onSubmit={handleSubmit}>
35
+
36
+                <p className={Styles.title} style={{ marginTop: '20px' }}>页面装修</p>
37
+
38
+                <Form.Item label="图片" help='建议尺寸1125*1809像素,支持JPG、PNG、JPEG格式'>
39
+                    <img style={{ width: '120px', height: '120px', marginRight: '10px' }} src="https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=2907552255,1679967258&fm=26&gp=0.jpg" alt="" />
40
+                    <span className={Styles.blue}>修改</span>
41
+                </Form.Item>
42
+
43
+                <Form.Item label="中奖名单" >
44
+                    {getFieldDecorator('show', {
45
+                        initialValue: 1,
46
+                    })(
47
+                        <Radio.Group>
48
+                            <Radio value={1}>展示</Radio>
49
+                            <Radio value={2}>不展示</Radio>
50
+                        </Radio.Group>,
51
+                    )}
52
+                </Form.Item>
53
+                <Form.Item label="活动说明">
54
+                    {getFieldDecorator('desc')(<Wangedit />)}
55
+                </Form.Item>
56
+
57
+                <Form.Item style={{ width: '500px', margin: 'auto', display: 'flex', justifyContent: 'space-between' }}>
58
+                    <Button onClick={() => props.onPre()} style={{ margin: '0 20px' }}>
59
+                        上一步
60
+                    </Button>
61
+                    <Button type="primary" htmlType="submit">
62
+                        下一步
63
+                    </Button>
64
+                </Form.Item>
65
+            </Form>
66
+        </>
67
+    )
68
+}
69
+
70
+const WrappedAwardForm = Form.create({ name: 'Award' })(Award);
71
+
72
+export default WrappedAwardForm

+ 43
- 0
src/pages/marketingTools/components/step4.jsx 查看文件

@@ -0,0 +1,43 @@
1
+import React, { useState } from 'react';
2
+import { Row, Col, Button, Modal } from 'antd';
3
+import router from 'umi/router';
4
+import Styles from './style.less';
5
+
6
+
7
+const Success = props => {
8
+
9
+    const [visible, setVisible] = useState(false)
10
+
11
+    const toLottery = () => {
12
+        router.push({
13
+            pathname: '/marketingTools/lottery/index',
14
+        });
15
+    }
16
+
17
+    return <>
18
+        <Modal
19
+            visible={visible}
20
+            title="推广二维码与推广链接"
21
+            onCancel={() => setVisible(false)}
22
+            footer={null}
23
+        >
24
+            <div style={{ textAlign: 'center' }}>
25
+                <img style={{ width: '200px', height: '200px' }} src='https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=3602624501,870193918&fm=26&gp=0.jpg' ></img>
26
+                <p>https://dev.fangdeal.cn/admin/#/activity/drainage/DrainageList <span style={{ color: '#1D74D9' }}>复制链接</span></p>
27
+            </div>
28
+        </Modal>
29
+        <div style={{ textAlign: 'center', width: '100%', marginTop: '30px' }}>
30
+            <img src='http://123.57.65.31:8081/axure/%E8%90%A5%E9%94%80%E4%BA%91/%e8%90%a5%e9%94%80%e4%ba%91V3.5.30%e6%a9%99%e8%95%89%e6%8e%a8%e5%b9%bf/images/%E5%AE%8C%E6%88%90_v3_5_30_/u5014.png'></img>
31
+            <p style={{ fontSize: '0.12rem', fontWeight: '800', marginTop: '30px' }}>创建成功</p>
32
+            <p>立即推广活动,获取更多客户</p>
33
+            <Button type="primary" onClick={() => setVisible(true)}>立即推广</Button>
34
+            <div style={{ marginTop: '16px', fontSize: '0.09rem' }}>
35
+                <span className={Styles.blue} style={{ marginRight: '16px', cursor: 'pointer' }} onClick={() => props.onRefresh()}>继续新建活动</span>
36
+                <span className={Styles.blue} style={{ cursor: 'pointer' }} onClick={() => toLottery()}>返回活动列表</span>
37
+            </div>
38
+        </div>
39
+
40
+    </>
41
+}
42
+
43
+export default Success

+ 20
- 0
src/pages/marketingTools/components/style.less 查看文件

@@ -0,0 +1,20 @@
1
+.title{
2
+    font-weight: 600;
3
+    border-bottom: 1px solid #eee;
4
+    font-size: 15px;
5
+    padding-bottom: 6px;
6
+    margin-bottom: 20px;
7
+}
8
+.blue{
9
+    color: #1D74D9;
10
+}
11
+
12
+.table  {
13
+    tr{
14
+        td{
15
+            padding: 6px 8px;
16
+            overflow-wrap: break-word;
17
+        }
18
+    }
19
+  
20
+}

+ 4
- 4
src/pages/marketingTools/index.jsx 查看文件

@@ -4,7 +4,7 @@ import router from 'umi/router';
4 4
 import Styles from './style.less';
5 5
 
6 6
 
7
-const market = props => {
7
+const Market = props => {
8 8
 
9 9
     const list = [
10 10
         {
@@ -42,8 +42,8 @@ const market = props => {
42 42
 
43 43
         <div className={Styles.flex}>
44 44
             {
45
-                list.map((item, _) => (
46
-                    <div className={Styles.itemBox} onClick={() => handleItem(item.url)}>
45
+                list.map((item, index) => (
46
+                    <div key={index} className={Styles.itemBox} onClick={() => handleItem(item.url)}>
47 47
                         <img className={Styles.img} src={item.img} ></img>
48 48
                         <div>
49 49
                             <p style={{ fontSize: '18px' }}>{item.title}</p>
@@ -57,4 +57,4 @@ const market = props => {
57 57
     </>
58 58
 }
59 59
 
60
-export default market
60
+export default Market

+ 59
- 0
src/pages/marketingTools/lottery/add.jsx 查看文件

@@ -0,0 +1,59 @@
1
+import React, { useState, useEffect } from 'react';
2
+import { Form, Icon, Input, Button, Table, DatePicker, InputNumber, Radio } from 'antd';
3
+import Styles from './style.less';
4
+import Step1 from '../components/step1'
5
+import Step2 from '../components/step2'
6
+import Step3 from '../components/step3'
7
+import Step4 from '../components/step4'
8
+
9
+function AddActivity(props) {
10
+    const { getFieldDecorator } = props.form;
11
+    const { RangePicker } = DatePicker;
12
+
13
+    const [tab, setTab] = useState('0')
14
+
15
+
16
+    const tabTitle = [
17
+        { title: '1.创建活动', value: '0' },
18
+        { title: '2.奖项设置', value: '1' },
19
+        { title: '3.页面装修', value: '2' },
20
+        { title: '4.完成', value: '3' },
21
+    ]
22
+
23
+
24
+    const img = 'http://123.57.65.31:8081/axure/%E8%90%A5%E9%94%80%E4%BA%91/%e8%90%a5%e9%94%80%e4%ba%91V3.5.30%e6%a9%99%e8%95%89%e6%8e%a8%e5%b9%bf/images/%E6%96%B0%E5%A2%9E%E5%B9%B8%E8%BF%90%E5%A4%A7%E6%8A%BD%E5%A5%96_v3_5_30_/u4584.png'
25
+    return (
26
+        <>
27
+            <div className={Styles.tabBox}>
28
+                {
29
+                    tabTitle.map((item, index) => (
30
+                        <span key={index} className={tab == index ? Styles.active : Styles.tabItem}>{item.title}</span>
31
+                    ))
32
+                }
33
+            </div>
34
+            <div className={Styles.content}>
35
+                {tab != '3' && <>
36
+                    <div className={Styles.img}>
37
+                        <img src={img}></img>
38
+                    </div>
39
+                </>}
40
+
41
+                {tab == '0' && <><Step1 onNext={() => setTab('1')} /></>}
42
+                {tab == '1' && <>
43
+                    <Step2 onPre={() => setTab('0')} onNext={() => setTab('2')} />
44
+                </>}
45
+                {tab == '2' && <>
46
+                    <Step3 onPre={() => setTab('1')} onNext={() => setTab('3')} />
47
+                </>}
48
+                {tab == '3' && <>
49
+                    <Step4 onRefresh={() => setTab('0')} />
50
+                </>}
51
+
52
+            </div>
53
+        </>
54
+    )
55
+}
56
+
57
+const WrappedAddActivityForm = Form.create({ name: 'AddActivity' })(AddActivity);
58
+
59
+export default WrappedAddActivityForm

+ 3
- 3
src/pages/marketingTools/lottery/data.jsx 查看文件

@@ -1,7 +1,7 @@
1 1
 import React, { useState, useEffect } from 'react';
2 2
 import { Form, Icon, Input, Button, Pagination, Tabs, Radio, Table } from 'antd';
3 3
 
4
-function Data(props) {
4
+function Datalist(props) {
5 5
 
6 6
     const [tab, setTab] = useState('base')
7 7
 
@@ -185,6 +185,6 @@ function Data(props) {
185 185
     )
186 186
 }
187 187
 
188
-const WrappedDataForm = Form.create({ name: 'Data' })(Data);
188
+const WrappedDatalistForm = Form.create({ name: 'Datalist' })(Datalist);
189 189
 
190
-export default WrappedDataForm
190
+export default WrappedDatalistForm

+ 11
- 10
src/pages/marketingTools/lottery/index.jsx 查看文件

@@ -4,7 +4,7 @@ import router from 'umi/router';
4 4
 
5 5
 const { Option } = Select;
6 6
 
7
-const lottery = (props) => {
7
+const Lottery = (props) => {
8 8
 
9 9
     const [visible, setVisible] = useState(false)
10 10
 
@@ -38,9 +38,14 @@ const lottery = (props) => {
38 38
         },
39 39
 
40 40
     ]
41
-    const toData = ()=>{
42
-          router.push({
43
-            pathname: '/marketingTools/lottery/data',
41
+    const toData = () => {
42
+        router.push({
43
+            pathname: '/marketingTools/Lottery/data',
44
+        });
45
+    }
46
+    const toEdit = () => {
47
+        router.push({
48
+            pathname: '/marketingTools/Lottery/add',
44 49
         });
45 50
     }
46 51
 
@@ -92,7 +97,7 @@ const lottery = (props) => {
92 97
             render: () => <>
93 98
                 <span style={{ color: '#FF4A4A', marginRight: '6px', cursor: 'pointer' }} onClick={() => toData()}>数据</span>
94 99
                 <span style={{ color: '#FF4A4A', marginRight: '6px', cursor: 'pointer' }} onClick={() => setVisible(true)}>推广</span>
95
-                <span style={{ color: '#FF4A4A', marginRight: '6px' }}>编辑</span>
100
+                <span style={{ color: '#FF4A4A', marginRight: '6px' }} onClick={() => toEdit()}>编辑</span>
96 101
                 <span style={{ color: '#FF4A4A' }}>删除</span>
97 102
             </>
98 103
         },
@@ -108,10 +113,6 @@ const lottery = (props) => {
108 113
 
109 114
     }
110 115
 
111
-    const toEdit = () => {
112
-
113
-    }
114
-
115 116
     //重置搜索
116 117
     function handleReset() {
117 118
 
@@ -174,6 +175,6 @@ const lottery = (props) => {
174 175
         </>
175 176
     )
176 177
 }
177
-const WrappedHeader = Form.create({ name: 'lottery' })(lottery);
178
+const WrappedHeader = Form.create({ name: 'Lottery' })(Lottery);
178 179
 
179 180
 export default WrappedHeader

+ 39
- 0
src/pages/marketingTools/lottery/style.less 查看文件

@@ -0,0 +1,39 @@
1
+.tabBox{
2
+    width: 800px;
3
+    border-top: 1px solid  #FF7E48;
4
+    border-bottom: 1px solid  #FF7E48;
5
+    border-left: 1px solid  #FF7E48;
6
+    border-radius: 6px;
7
+    line-height: 40px;
8
+    display: flex;
9
+    align-items: center;
10
+    .tabItem{
11
+        width: 200px;
12
+        border-right: 1px solid #FF7E48;
13
+        color: #FF7E48;
14
+        text-align: center;
15
+    }
16
+    .active{
17
+        width: 200px;
18
+        border-right: 1px solid #FF7E48;
19
+        color: #fff;
20
+        background-color: #FF7E48;
21
+        text-align: center;
22
+    }
23
+}
24
+.content{
25
+    display: flex;
26
+    // align-items: center;
27
+    margin-top: 30px;
28
+  
29
+}
30
+.title{
31
+    font-weight: 600;
32
+    border-bottom: 1px solid #eee;
33
+    font-size: 15px;
34
+    padding-bottom: 6px;
35
+    margin-bottom: 20px;
36
+}
37
+.img{
38
+    margin-right: 50px;
39
+}