From cc6a5dcac86b83b8b665770039d30e2c466b9925 Mon Sep 17 00:00:00 2001
From: 董国庆 <364620639@qq.com>
Date: 星期四, 27 二月 2025 15:10:00 +0800
Subject: [PATCH] 人员管理

---
 management/src/pages/setting/user/components/addAndEdit.jsx |  115 ++++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 85 insertions(+), 30 deletions(-)

diff --git a/management/src/pages/setting/user/components/addAndEdit.jsx b/management/src/pages/setting/user/components/addAndEdit.jsx
index d5e7f2e..d29f033 100644
--- a/management/src/pages/setting/user/components/addAndEdit.jsx
+++ b/management/src/pages/setting/user/components/addAndEdit.jsx
@@ -1,7 +1,7 @@
 import { Form, Input, Modal, Tree, Button, Spin, Row, Col, Select, Radio } from 'antd';
 import { forwardRef, useImperativeHandle, useState } from 'react';
 import { useEffect } from 'react';
-import { getDepartmentList } from '../service';
+import { getDepartmentList, systemPostList, systemRoleList, getSystemUserInfo, getCityList, addSystemUserInfo, editSystemUserInfo } from '../service';
 import { Color } from 'antd/es/color-picker';
 const formItemLayout = {
     labelCol: { span: 8 },
@@ -30,42 +30,54 @@
     const [levelList, setLevelList] = useState([{ name: '市级账号', value: 1 }, { name: '区县账号', value: 2 }, { name: '街道账号', value: 3 }, { name: '社区账号', value: 4 }, { name: '党员账号', value: 5 }])
     //所属区县
     const [countyList, setCountyList] = useState([])
+    const [activeCounty, setActiveCounty] = useState('')
     //所属街道
     const [streetList, setStreetList] = useState([])
+    const [activeStreet, setActiveStreet] = useState('')
     //所属社区
     const [communityList, setCommunityList] = useState([])
+    // const [activeCommunity, setActiveCommunity] = useState({})
 
 
 
 
     useEffect(() => {
         // 获取单位
-        getDepartmentList(1).then(res => {
-            setOneCompanyList(() => res.data)
-        })
-        getDepartmentList(2).then(res => {
-            setTwoCompanyList(() => res.data)
-        })
-        getDepartmentList(3).then(res => {
-            setThreeCompanyList(() => res.data)
-        })
-        getDepartmentList(4).then(res => {
-            setThreeCompanyList(() => res.data)
-        })
+        setTimeout(() => {
+            getDepartmentList(1).then(res => {
+                setOneCompanyList(() => res.data)
+            })
+            getDepartmentList(2).then(res => {
+                setTwoCompanyList(() => res.data)
+            })
+        }, 2000);
+        setTimeout(() => {
+            getDepartmentList(3).then(res => {
+                setThreeCompanyList(() => res.data)
+            })
+            getDepartmentList(4).then(res => {
+                setThreeCompanyList(() => res.data)
+            })
+        }, 4000);
     }, [])
 
     useImperativeHandle(ref, () => {
         return {
             refreshData: (data, type) => {
                 setDetailType(type || false)
+
+                getCountyList()
+                systemPostList({ pageNum: 1, pageSize: 10000 }).then(res => {
+                    setPositionList(() => res.data.records)
+                })
+                systemRoleList({ pageNum: 1, pageSize: 10000 }).then(res => {
+                    setRoleList(() => res.data.records)
+                })
+
                 if (data.id) {
-                    // 获取角色的权限树
-                    getTree(data.id).then(res => {
-                        setTreeSeletKeys(res.data.systemMenuIds || []);
-                    })
+                    getInfo(data.id)
                 }
                 setData(data)
-                form.setFieldsValue(data);
             },
             clean: () => {
                 setSpinning(false)
@@ -76,9 +88,7 @@
     // 保存
     const okHandle = () => {
         form.validateFields().then((values) => {
-            setSpinning(true)
-            values.menuIds = treeSeletKeys
-            delete values.tree
+            console.log('value',values)
             if (data.id) {
                 values.id = data.id
                 onUpdate(values)
@@ -87,7 +97,41 @@
             }
         });
     };
+    const getCountyList = (id) => {
+        getCityList({ id: '510400', tier: 2 }).then(res => {
+            setCountyList(() => res.data)
+        })
+    }
+    const getStreetList = (id) => {
+        getCityList({ id: id, tier: 3 }).then(res => {
+            setStreetList(() => res.data)
+        })
+    }
+    const getcommunityList = (id) => {
+        getCityList({ id: id, tier: 4 }).then(res => {
+            setCommunityList(() => res.data)
+        })
+    }
+    const changeCountry = (value, label) => {
+        console.log('区县', value,'11111111',label);
+        setActiveCounty(value)
+        getStreetList(value)
 
+    }
+    const changeStreet = (value) => {
+        console.log('街道', value);
+        setActiveStreet(value)
+        getcommunityList(value)
+    }
+    const changeCommunity = (value) => {
+        console.log('社区', value);
+        // setActiveCommunity(value)
+    }
+    const getInfo = (id) => {
+        getSystemUserInfo(id).then(res => {
+
+        })
+    }
 
     return (
         <Modal
@@ -277,51 +321,62 @@
                 <Row>
                     <Col span={8}>
                         <Form.Item
-                            name="districts"
+                            name="districtsCode"
                             label="所属区县"
                             rules={[{ required: true, message: '请选择所属区县' }]}
                         >
+                            {/* <Select
+                                // onChange={changeCountry}
+                                // value={activeCounty}
+                                placeholder="请选择"
+                                options={levelList}
+                                fieldNames={{ label: 'name', value: 'id' }}
+                            >
+                            </Select > */}
                             <Select
                                 key="searchSelect"
                                 allowClear
+                                onChange={changeCountry}
+                                value={activeCounty}
                                 placeholder="请选择"
-                                options={oneCompanyList}
+                                options={countyList}
                                 fieldNames={{ label: 'name', value: 'id' }}
-                                filterOption={false}
+                            // filterOption={false}
                             >
                             </Select >
                         </Form.Item>
                     </Col>
                     <Col span={8}>
                         <Form.Item
-                            name="street"
+                            name="streetId"
                             label="所属街道"
                             rules={[{ required: true, message: '请选择所属街道' }]}
                         >
                             <Select
+                                onChange={changeStreet}
+                                disabled={!activeCounty}
                                 key="searchSelect"
                                 allowClear
                                 placeholder="请选择"
-                                options={twoCompanyList}
+                                options={streetList}
                                 fieldNames={{ label: 'name', value: 'id' }}
-                                filterOption={false}
                             >
                             </Select >
                         </Form.Item>
                     </Col>
                     <Col span={8}>
                         <Form.Item
-                            name="community"
+                            name="communityId"
                             label="所属社区"
                             rules={[{ required: true, message: '请选择所属社区' }]}
                         >
                             <Select
+                                disabled={!activeStreet}
                                 key="searchSelect"
                                 allowClear
                                 placeholder="请选择"
-                                options={threeCompanyList}
+                                options={communityList}
                                 fieldNames={{ label: 'name', value: 'id' }}
-                                filterOption={false}
                             >
                             </Select >
                         </Form.Item>

--
Gitblit v1.7.1