dingxin 5 år sedan
förälder
incheckning
878c04f042
1 ändrade filer med 10 tillägg och 7 borttagningar
  1. 10
    7
      src/pages/staff/list/addRole.jsx

+ 10
- 7
src/pages/staff/list/addRole.jsx Visa fil

1
 import React, { useState, useEffect } from 'react';
1
 import React, { useState, useEffect } from 'react';
2
-import { Checkbox, Input, Card, Form, Button,Row,Col } from 'antd';
2
+import { Checkbox, Input, Card, Form, Button, Row, Col, Spin } from 'antd';
3
 import { connect } from 'dva';
3
 import { connect } from 'dva';
4
 import XForm, { FieldTypes } from '../../../components/XForm';
4
 import XForm, { FieldTypes } from '../../../components/XForm';
5
 import request from '../../../utils/request';
5
 import request from '../../../utils/request';
29
   const [dataMenuId, setDataMenuId] = useState([])
29
   const [dataMenuId, setDataMenuId] = useState([])
30
   const [dataButtonId, setDataButtonId] = useState([])
30
   const [dataButtonId, setDataButtonId] = useState([])
31
 
31
 
32
+  const [loading, setLoading] = useState(true);
33
+
32
   useEffect(() => {
34
   useEffect(() => {
33
     // 新增和编辑用一个页面
35
     // 新增和编辑用一个页面
34
     if (props.location.query) {
36
     if (props.location.query) {
63
   // 根据角色id查询当前的菜单及其按钮
65
   // 根据角色id查询当前的菜单及其按钮
64
   function buttonAndMenuList(params, ids) {
66
   function buttonAndMenuList(params, ids) {
65
     request({ ...apis.role.buttonAndMenuList, urlData: { id: ids }, params: { ...params } }).then(data => {
67
     request({ ...apis.role.buttonAndMenuList, urlData: { id: ids }, params: { ...params } }).then(data => {
68
+      setLoading(false)
66
       props.form.setFieldsValue({ roleName: data.roleName })
69
       props.form.setFieldsValue({ roleName: data.roleName })
67
       console.log(data)
70
       console.log(data)
68
       setData(data)
71
       setData(data)
69
 
72
 
70
       // 获取所有的权限Id
73
       // 获取所有的权限Id
71
       if (data.sysMenuList) {
74
       if (data.sysMenuList) {
72
-        setDataMenuId(data.sysMenuList.map(item => item.menuId))
73
-        setDataButtonId((data.sysMenuList.map(item => item.sysButtonInMenu && item.sysButtonInMenu.map(btn => btn.btnId).join(',')).filter(f => f !== '').join(',').split(',')).map(a => parseInt(a)))
75
+        setDataMenuId(data.sysMenuList.map(item => item && item.menuId))
76
+        // setDataButtonId((data.sysMenuList.map(item => item.sysButtonInMenu && item.sysButtonInMenu.map(btn => btn.btnId).join(',')).filter(f => f !== '').join(',').split(',')).map(a => parseInt(a) ) )
77
+        setDataButtonId(data.sysButtonInMenu.map(item => item && item.btnId))
74
       }
78
       }
75
   }).catch((err) => {
79
   }).catch((err) => {
76
       console.log(err)
80
       console.log(err)
143
       
147
       
144
         const sumitMenu = userMenus.filter(item => dataMenuId.includes(item.menuId))
148
         const sumitMenu = userMenus.filter(item => dataMenuId.includes(item.menuId))
145
         const sumitBtn = buutonDate.filter(item => dataButtonId.includes(item.btnId))
149
         const sumitBtn = buutonDate.filter(item => dataButtonId.includes(item.btnId))
146
-        // console.log('sumitMenu', sumitMenu)
147
-        // console.log('sumitBtn', sumitBtn)
148
-        // console.log('sumitMenu', sumitMenu)
149
-        // const sumitBut = data.sysMenuList[0].sysButtonInMenu.concat(but)
150
         updateAuthMenu({ sysMenu: sumitMenu, name: values.roleName, id: props.location.query.id, sysButton: sumitBtn })
150
         updateAuthMenu({ sysMenu: sumitMenu, name: values.roleName, id: props.location.query.id, sysButton: sumitBtn })
151
       } else {
151
       } else {
152
         updateAuthMenu({ sysMenu: menus, name: values.roleName, id: props.location.query.id, sysButton: but })
152
         updateAuthMenu({ sysMenu: menus, name: values.roleName, id: props.location.query.id, sysButton: but })
154
     });
154
     });
155
   }
155
   }
156
   const { getFieldDecorator } = props.form;
156
   const { getFieldDecorator } = props.form;
157
+  
157
   return (
158
   return (
158
     <>
159
     <>
159
       <div>
160
       <div>
161
+      <Spin spinning={ loading } size="large">
160
         <Form labelCol={{ span: 6 }} wrapperCol={{ span: 12 }} onSubmit={handleSubmit}>
162
         <Form labelCol={{ span: 6 }} wrapperCol={{ span: 12 }} onSubmit={handleSubmit}>
161
           <Form.Item label="角色名称">
163
           <Form.Item label="角色名称">
162
             {getFieldDecorator('roleName', {
164
             {getFieldDecorator('roleName', {
207
           </Button>
209
           </Button>
208
           </Form.Item>
210
           </Form.Item>
209
         </Form>
211
         </Form>
212
+        </Spin>
210
       </div>
213
       </div>
211
     </>
214
     </>
212
   )
215
   )