From 9e55e1145b3dee556a438132558b1c1911ef944a Mon Sep 17 00:00:00 2001 From: "Jiangjie.Bai" Date: Tue, 15 Mar 2022 15:41:23 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=BD=95=E5=83=8F?= =?UTF-8?q?=E3=80=81=E5=91=BD=E4=BB=A4=E5=AD=98=E5=82=A8=E6=9D=83=E9=99=90?= =?UTF-8?q?=E6=8E=A7=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/settings/Terminal/Storage/CommandStorage.vue | 6 ++++-- src/views/settings/Terminal/Storage/ReplayStorage.vue | 9 +++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/src/views/settings/Terminal/Storage/CommandStorage.vue b/src/views/settings/Terminal/Storage/CommandStorage.vue index f65be70c7..3d8f6a68f 100644 --- a/src/views/settings/Terminal/Storage/CommandStorage.vue +++ b/src/views/settings/Terminal/Storage/CommandStorage.vue @@ -68,13 +68,13 @@ export default { prop: 'id', formatterArgs: { canUpdate: function({ row }) { - return (row.name !== 'default' && row.name !== 'null') + return (row.name !== 'default' && row.name !== 'null' && vm.$hasPerm('terminal.change_commandstorage')) }, onUpdate: function({ row }) { this.$router.push({ name: 'CommandStorageUpdate', params: { id: row.id }}) }, canDelete: function({ row }) { - return (row.name !== 'default' && row.name !== 'null') + return (row.name !== 'default' && row.name !== 'null' && vm.$hasPerm('terminal.delete_commandstorage')) }, hasClone: false, extraActions: [ @@ -82,6 +82,7 @@ export default { name: 'test', title: this.$t('sessions.test'), type: 'primary', + can: vm.$hasPerm('terminal.change_commandstorage'), callback: function({ row, col, cellValue, reload }) { TestCommandStorage(row.id).then(data => { if (!data['is_valid']) { @@ -96,6 +97,7 @@ export default { name: 'set_to_default', title: this.$t('sessions.SetToDefault'), type: 'primary', + can: vm.$hasPerm('terminal.change_commandstorage'), callback: function({ row, col, cellValue, reload }) { SetToDefaultCommandStorage(row.id).then(data => { vm.$refs.ListTable.reloadTable() diff --git a/src/views/settings/Terminal/Storage/ReplayStorage.vue b/src/views/settings/Terminal/Storage/ReplayStorage.vue index b628fe0c4..89b2eef19 100644 --- a/src/views/settings/Terminal/Storage/ReplayStorage.vue +++ b/src/views/settings/Terminal/Storage/ReplayStorage.vue @@ -29,6 +29,7 @@ export default { replayTableConfig: { url: '/api/v1/terminal/replay-storages/', permissions: { + app: 'terminal', resource: 'replaystorage' }, columns: ['name', 'type', 'comment', 'is_default', 'actions'], @@ -60,16 +61,19 @@ export default { this.$router.push({ name: 'ReplayStorageUpdate', params: { id: row.id }, query: { type: row.type }}) }, canUpdate: function({ row }) { - return (row.name !== 'default' && row.name !== 'null') + return ( + row.name !== 'default' && row.name !== 'null' && vm.$hasPerm('terminal.change_replaystorage') + ) }, canDelete: function({ row }) { - return (row.name !== 'default' && row.name !== 'null') + return (row.name !== 'default' && row.name !== 'null' && vm.$hasPerm('terminal.delete_replaystorage')) }, hasClone: false, extraActions: [ { name: 'test', title: this.$t('sessions.test'), + can: vm.$hasPerm('terminal.change_replaystorage'), type: 'primary', callback: function({ row, col, cellValue, reload }) { TestReplayStorage(row.id).then(data => { @@ -84,6 +88,7 @@ export default { { name: 'set_to_default', title: this.$t('sessions.SetToDefault'), + can: this.$hasPerm('terminal.change_replaystorage'), type: 'primary', callback: function({ row, col, cellValue, reload }) { SetToDefaultReplayStorage(row.id).then(data => {