ソースを参照

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

许静 5 年 前
コミット
92578e9a05
共有4 個のファイルを変更した105 個の追加2 個の削除を含む
  1. 5
    0
      config/routes.js
  2. 17
    2
      src/pages/integralMall/achieve.jsx
  3. 73
    0
      src/pages/integralMall/editAchieve.jsx
  4. 10
    0
      src/services/apis.js

+ 5
- 0
config/routes.js ファイルの表示

140
                 name: '积分获取',
140
                 name: '积分获取',
141
                 component: './integralMall/achieve',
141
                 component: './integralMall/achieve',
142
               },
142
               },
143
+              {
144
+                path: '/integralMall/editAchieve',
145
+                name: '积分获取',
146
+                component: './integralMall/editAchieve',
147
+              },
143
               {
148
               {
144
                 path: '/integralMall/editGoods',
149
                 path: '/integralMall/editGoods',
145
                 name: '商品编辑',
150
                 name: '商品编辑',

+ 17
- 2
src/pages/integralMall/achieve.jsx ファイルの表示

58
     })
58
     })
59
   }
59
   }
60
 
60
 
61
+  const updateRules = (row) => () => {
62
+    router.push({
63
+      pathname: '/integralMall/editAchieve',
64
+      query: {
65
+        ruleId: row.ruleId
66
+      },
67
+    });
68
+  }
69
+
61
 const columns = [
70
 const columns = [
62
     {
71
     {
63
       title: '类型',
72
       title: '类型',
71
       key: 'pointsAmount',
80
       key: 'pointsAmount',
72
       align: 'center',
81
       align: 'center',
73
     },
82
     },
83
+    {
84
+      title: '说明',
85
+      dataIndex: 'remark',
86
+      key: 'remark',
87
+      align: 'center',
88
+    },
74
     {
89
     {
75
       title: '状态',
90
       title: '状态',
76
       dataIndex: 'status',
91
       dataIndex: 'status',
98
             </span>
113
             </span>
99
           </AuthButton>
114
           </AuthButton>
100
           <AuthButton name="admin.tdPointsRules.put" noRight={null}>
115
           <AuthButton name="admin.tdPointsRules.put" noRight={null}>
101
-            <span style={{ color: '#FF925C',cursor: 'pointer' }}>
102
-              {row.buildingId != null ? '编辑'`${<Icon type="form" className={styles.edit} />}` : ''}
116
+            <span style={{ color: '#FF925C',cursor: 'pointer' }} onClick={updateRules(row)}>
117
+                编辑{<Icon type="form" className={styles.edit} />} 
103
             </span>
118
             </span>
104
           </AuthButton>
119
           </AuthButton>
105
         </>
120
         </>

+ 73
- 0
src/pages/integralMall/editAchieve.jsx ファイルの表示

1
+import React, { useState, useEffect } from 'react';
2
+import { Input, Menu, Dropdown, Button, Icon, message, Table, Divider, Tag, Select, Form, Alert } from 'antd';
3
+import { FormattedMessage } from 'umi-plugin-react/locale';
4
+import channels from '../channel/channelList.less';
5
+import BuildSelect from '../../components/SelectButton/BuildSelect'
6
+import XForm, { FieldTypes } from '../../components/XForm';
7
+import Wangedit from '../../components/Wangedit/Wangedit'
8
+import router from 'umi/router';
9
+import apis from '../../services/apis';
10
+import request from '../../utils/request'
11
+
12
+const { TextArea } = Input;
13
+const { Option } = Select;
14
+
15
+const header = props => {
16
+  const ruleId = props.location.query.ruleId
17
+  const [ ruleData, setRuleData ] = useState({})
18
+  if(ruleId){
19
+    useEffect(() => {
20
+      getRuleData(ruleId);
21
+    },[])
22
+
23
+  // 查询列表
24
+  const getRuleData = (ruleId) => {
25
+    request({ ...apis.integralMall.rulesDetail, urlData: { id: ruleId },}).then((data) => {
26
+        console.log(data)
27
+        setRuleData(data)
28
+    })
29
+  }
30
+  }
31
+
32
+  const fields = [
33
+    {
34
+      label: '获取积分',
35
+      name: 'pointsAmount',
36
+      type: FieldTypes.Text,
37
+      value: ruleData.pointsAmount,
38
+    },
39
+    {
40
+      label: '说明',
41
+      name: 'remark',
42
+      type: FieldTypes.Text,
43
+      value: ruleData.remark,
44
+    }
45
+  ]
46
+
47
+   
48
+  const handleSubmit = (values) => {
49
+    if(ruleId){
50
+      values.ruleId = ruleId
51
+      request({ ...apis.integralMall.rulesUpdate, data: values,}).then((data) => {
52
+        cancelPage()
53
+      }).catch((err) => {
54
+        message.info(err.msg || err.message)
55
+      })
56
+      }else{
57
+       
58
+      }
59
+  }
60
+
61
+  const cancelPage = () => {
62
+    router.push({
63
+      pathname: '/integralMall/achieve',
64
+    });
65
+  }
66
+
67
+  return (
68
+    <XForm onSubmit={handleSubmit} onCancel={cancelPage} fields={fields}></XForm>
69
+  )
70
+}
71
+
72
+const WrappedNormalLoginForm = Form.create({ name: 'header' })(header);
73
+export default WrappedNormalLoginForm

+ 10
- 0
src/services/apis.js ファイルの表示

427
       method: 'GET',
427
       method: 'GET',
428
       action: 'admin.tdPointsRules.get',
428
       action: 'admin.tdPointsRules.get',
429
     },
429
     },
430
+    rulesDetail: {
431
+      url: `${prefix}/tdPointsRules/:id`,
432
+      method: 'GET',
433
+      action: 'admin.tdPointsRules.id.get',
434
+    },
435
+    rulesUpdate: {
436
+      url: `${prefix}/tdPointsRules`,
437
+      method: 'PUT',
438
+      action: 'admin.tdPointsRules.put',
439
+    },
430
     change: {
440
     change: {
431
       url: `${prefix}/tdPointsRules/change`,
441
       url: `${prefix}/tdPointsRules/change`,
432
       method: 'PUT',
442
       method: 'PUT',