From 2ceb99a629b70a3d63154656b534dcc603af78e7 Mon Sep 17 00:00:00 2001 From: zhaowei <zhaowei> Date: 星期五, 14 二月 2025 13:55:45 +0800 Subject: [PATCH] 1、调整产品和设备结构树权限配置分配用户时,admin只有在分配后或者有权限时才会被禁用 --- src/views/dnc/base/modules/DeviceStructure/Permission/UserPermissionTransfer.vue | 10 ++++++---- src/views/dnc/base/modules/ProductStructure/Permission/UserPermissionTransfer.vue | 10 ++++++---- src/views/dnc/base/modules/DeviceStructure/Permission/AssignPermissionModal.vue | 19 ++++++++++++------- src/views/dnc/base/modules/ProductStructure/Permission/AssignPermissionModal.vue | 20 ++++++++++++-------- 4 files changed, 36 insertions(+), 23 deletions(-) diff --git a/src/views/dnc/base/modules/DeviceStructure/Permission/AssignPermissionModal.vue b/src/views/dnc/base/modules/DeviceStructure/Permission/AssignPermissionModal.vue index 69b115e..51f8576 100644 --- a/src/views/dnc/base/modules/DeviceStructure/Permission/AssignPermissionModal.vue +++ b/src/views/dnc/base/modules/DeviceStructure/Permission/AssignPermissionModal.vue @@ -13,7 +13,8 @@ <a-tabs v-model="activeTabKey"> <a-tab-pane :key="1" tab="鍒嗛厤鐢ㄦ埛"> <UserPermissionTransfer ref="userPermissionTransferRef" :currentTreeNodeInfo="currentTreeNodeInfo" - :dataSource="allUsersList" :isAssignSonNode="isAssignSonNode"/> + :dataSource="allUsersList" :isAssignSonNode="isAssignSonNode" + @setAdminDisabled="setAdminDisabled"/> </a-tab-pane> </a-tabs> </a-modal> @@ -69,17 +70,21 @@ dncApi.getAllUsersListApi() .then(res => { if (res.success) { - this.allUsersList = res.result.records.map(item => { - return { - ...item, - disabled: item.username === 'admin' - } - }) + this.allUsersList = res.result.records this.$nextTick(() => this.$refs.userPermissionTransferRef.getHasPermissionUserByApi()) } }) }, + setAdminDisabled() { + this.allUsersList = this.allUsersList.map(item => { + return { + ...item, + disabled: item.username === 'admin' + } + }) + }, + // 鎺у埗寮圭獥鍏抽棴 handleModalClose() { this.visible = false diff --git a/src/views/dnc/base/modules/DeviceStructure/Permission/UserPermissionTransfer.vue b/src/views/dnc/base/modules/DeviceStructure/Permission/UserPermissionTransfer.vue index ba5aec7..f4268ae 100644 --- a/src/views/dnc/base/modules/DeviceStructure/Permission/UserPermissionTransfer.vue +++ b/src/views/dnc/base/modules/DeviceStructure/Permission/UserPermissionTransfer.vue @@ -48,7 +48,10 @@ that.targetKeys = [] dncApi.getDeviceTreeHasPermissionUserApi(this.currentTreeNodeInfo) .then(res => { - if (res.success) this.targetKeys = res.list.map(item => item.id) + if (res.success) { + that.targetKeys = res.list.map(item => item.id) + if (that.targetKeys.includes(that.dataSource.find(item => item.username === 'admin').id)) that.$emit('setAdminDisabled') + } }) .finally(() => { that.spinning = false @@ -65,8 +68,6 @@ isAssignSonNode: isAssignSonNode ? 1 : 2, userIdArray: moveKeys } - console.log('params--------------------------', params) - console.log(targetKeys, direction, moveKeys) if (direction === 'right') { method = dncApi.assignDeviceDeviceTreePermissionToUser } else { @@ -80,7 +81,8 @@ message: '娑堟伅', description: res.message }) - this.targetKeys = targetKeys + that.targetKeys = targetKeys + if (targetKeys.includes(that.dataSource.find(item => item.username === 'admin').id)) that.$emit('setAdminDisabled') } else { $notification.error({ message: '娑堟伅', diff --git a/src/views/dnc/base/modules/ProductStructure/Permission/AssignPermissionModal.vue b/src/views/dnc/base/modules/ProductStructure/Permission/AssignPermissionModal.vue index 58c9705..07b8f9e 100644 --- a/src/views/dnc/base/modules/ProductStructure/Permission/AssignPermissionModal.vue +++ b/src/views/dnc/base/modules/ProductStructure/Permission/AssignPermissionModal.vue @@ -19,7 +19,8 @@ <a-tab-pane :key="2" tab="鍒嗛厤鐢ㄦ埛"> <UserPermissionTransfer ref="userPermissionTransferRef" :currentTreeNodeInfo="currentTreeNodeInfo" - :dataSource="allUsersList" :isAssignSonNode="isAssignSonNode"/> + :dataSource="allUsersList" :isAssignSonNode="isAssignSonNode" + @setAdminDisabled="setAdminDisabled"/> </a-tab-pane> </a-tabs> </a-modal> @@ -83,7 +84,6 @@ this.allTreeKeys = [] queryProductionTreeList() .then(res => { - console.log('res-------------------', res) if (res.success) { this.allDepartmentsList = res.result this.generateList(this.allDepartmentsList) @@ -117,17 +117,21 @@ dncApi.getAllUsersListApi() .then(res => { if (res.success) { - this.allUsersList = res.result.records.map(item => { - return { - ...item, - disabled: item.username === 'admin' - } - }) + this.allUsersList = res.result.records this.$nextTick(() => this.$refs.userPermissionTransferRef.getHasPermissionUserByApi()) } }) }, + setAdminDisabled() { + this.allUsersList = this.allUsersList.map(item => { + return { + ...item, + disabled: item.username === 'admin' + } + }) + }, + handleModalClose() { this.visible = false this.hasLoadedDataTabKeyArray = [] diff --git a/src/views/dnc/base/modules/ProductStructure/Permission/UserPermissionTransfer.vue b/src/views/dnc/base/modules/ProductStructure/Permission/UserPermissionTransfer.vue index 886df05..8cde6f1 100644 --- a/src/views/dnc/base/modules/ProductStructure/Permission/UserPermissionTransfer.vue +++ b/src/views/dnc/base/modules/ProductStructure/Permission/UserPermissionTransfer.vue @@ -47,7 +47,10 @@ that.targetKeys = [] dncApi.getHasPermissionUserApi(this.currentTreeNodeInfo) .then(res => { - if (res.success) this.targetKeys = res.list.map(item => item.id) + if (res.success) { + that.targetKeys = res.list.map(item => item.id) + if (that.targetKeys.includes(that.dataSource.find(item => item.username === 'admin').id)) that.$emit('setAdminDisabled') + } }) .finally(() => { that.spinning = false @@ -64,8 +67,6 @@ isAssignSonNode: isAssignSonNode ? 1 : 2, userIdArray: moveKeys } - console.log('params--------------------------', params) - console.log(targetKeys, direction, moveKeys) if (direction === 'right') { method = dncApi.assignPermissionToUser } else { @@ -79,7 +80,8 @@ message: '娑堟伅', description: res.message }) - this.targetKeys = targetKeys + that.targetKeys = targetKeys + if (targetKeys.includes(that.dataSource.find(item => item.username === 'admin').id)) that.$emit('setAdminDisabled') } else { $notification.error({ message: '娑堟伅', -- Gitblit v1.9.3