From 0096be64de0133b2e958eae7bf22e1a4873228ab Mon Sep 17 00:00:00 2001 From: wanghx Date: Fri, 20 Oct 2023 15:29:28 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix():=20NVR=E7=AE=A1=E7=90=86=E5=B7=B2?= =?UTF-8?q?=E7=9F=A5=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InRoadMgm/EquipmentMgm/NvrMgm/loadable.jsx | 29 ++++---- src/pages/SystemMgm/OrgnizationMgm/loadable.jsx | 81 +++++++++++++++------- 2 files changed, 73 insertions(+), 37 deletions(-) diff --git a/src/pages/InRoadMgm/EquipmentMgm/NvrMgm/loadable.jsx b/src/pages/InRoadMgm/EquipmentMgm/NvrMgm/loadable.jsx index 18c7b10..4f9a789 100644 --- a/src/pages/InRoadMgm/EquipmentMgm/NvrMgm/loadable.jsx +++ b/src/pages/InRoadMgm/EquipmentMgm/NvrMgm/loadable.jsx @@ -45,6 +45,7 @@ function Fence(props) { road_name: '',//路段名称 operator: -1,//运营商 export: false, + road_id: '',//所属路段 pn: 1, length: Number(pageSizeOptions[0]), // 每页条数 } @@ -60,6 +61,7 @@ function Fence(props) { password: "", port: "", road_name: "", + road_id: "", type: "", user_name: "", video_port: "" @@ -128,6 +130,9 @@ function Fence(props) { } const handleEdit = (item) => { setEditStatus(true) + getRoadById(item.operator_id).then((data) => { + setRoadData(data) + }) form.setFieldsValue({ ...item }) @@ -524,23 +529,23 @@ function Fence(props) { - {/* */} + @@ -619,11 +624,11 @@ function Fence(props) { value={form.network_mode} options={[ { - value: "固网", + value: "1", label: "固网" }, { - value: '无线网络', + value: '2', label: "无线网络" } ]} diff --git a/src/pages/SystemMgm/OrgnizationMgm/loadable.jsx b/src/pages/SystemMgm/OrgnizationMgm/loadable.jsx index d2fe56f..5989890 100644 --- a/src/pages/SystemMgm/OrgnizationMgm/loadable.jsx +++ b/src/pages/SystemMgm/OrgnizationMgm/loadable.jsx @@ -5,6 +5,8 @@ import ajax from "@/services" import "./index.scss"; const isDev = window.location.href.indexOf('localhost') > -1 +let testTemp = [] + function OrgnizationMgm() { const [editStatus, setEditStatus] = useState(false) @@ -52,8 +54,8 @@ function OrgnizationMgm() { }) } - const getRoleTree = () => { - ajax.getOrgRoleNodeList().then((e) => { + const getRoleTree = (id) => { + ajax.getOrgRoleNodeList({id: id}).then((e) => { if (e.status == 20000) { setRoleTree(e.data) } @@ -63,8 +65,10 @@ function OrgnizationMgm() { const getOrgTree = () => { ajax.getOrgTree().then((e) => { if (e.status == 20000) { - setOrgTree(e.data) - handleTreeClick(undefined, {node: e.data[0]}) + testTemp = e.data + recursionTree(testTemp) + setOrgTree(testTemp) + handleTreeClick(undefined, {node: testTemp[0]}) } }) } @@ -166,15 +170,28 @@ function OrgnizationMgm() { } const handleTreeClick = (e, {node}) => { + + // 第三层级不予配置 + if (node.level > 2) { + setActiveOrg({}) + message.error('不允许配置') + return + } + + getRoleTree(node.id) + let ids = node.ids.split("-").filter(item => item != "undefined") + ids.push(node.id) ajaxGetOrgDetail(node.id).then((data) => { setActiveOrg({ id: node.id, + ids: ids, key: node.key, name: node.name, level: node.level, img_url: node.img_url, control_area: node.control_area, - ...data + ...data, + role_auth: data.role_auth ? data.role_auth.map((id) => Number(id)) : [] }) baseForm.setFieldsValue({ platform: data.platform, @@ -183,7 +200,7 @@ function OrgnizationMgm() { img_url: data.img_url }) setImgUrl(data.img_url) - setRoleCheckedKeys(data.role_auth) + setRoleCheckedKeys(data.role_auth ? data.role_auth.map((id) => Number(id)) : []) }).catch(err => { message.error(err) }) @@ -220,12 +237,22 @@ function OrgnizationMgm() { } + const recursionTree = (treeData, pid) => { + treeData.map((item) => { + item.ids += '-' + pid + if (item.children) { + recursionTree(item.children, item.id) + } + return item + }) + } + const handleAreaTreeChange = (checkedKeys) => { baseForm.setFieldValue('control_area', checkedKeys.join(',')) } - const handleRoleTreeChange = (checkedKeys) => { + const handleRoleTreeChange = (checkedKeys, _) => { setRoleCheckedKeys(checkedKeys) } @@ -249,7 +276,8 @@ function OrgnizationMgm() { const handleConfirm = () => { ajaxOrgDetailSave(Object.assign({}, baseForm.getFieldsValue(), { id: activeOrg.id, - role: roleCheckedKeys.join(',') + role: roleCheckedKeys.join(','), + control_area: baseForm.getFieldValue('control_area').join(',') })).then((msg) => { message.success(msg) setEditStatus(false) @@ -345,7 +373,7 @@ function OrgnizationMgm() { { - activeOrg.level > 2 ? <> + activeOrg.level > 1 ? <>