From e2904acff61d72f0b341216469ebe090f3119016 Mon Sep 17 00:00:00 2001 From: ibuler Date: Wed, 15 Jan 2025 10:26:44 +0800 Subject: [PATCH] perf: update execution --- .../AccountBackup/AccountBackupList.vue | 3 ++- .../AccountChangeSecretList.vue | 3 ++- .../AccountDiscoverTaskList.vue | 3 ++- .../accounts/AccountPush/AccountPushList.vue | 3 ++- .../pam/RiskDetect/AccountCheckTaskList.vue | 2 +- .../RiskHandlerFormatter/ReviewDrawer.vue | 24 ++++++++++++------- .../RiskDetect/RiskHandlerFormatter/const.js | 13 ++++++++++ .../RiskDetect/RiskHandlerFormatter/index.vue | 6 +++-- 8 files changed, 41 insertions(+), 16 deletions(-) diff --git a/src/views/accounts/AccountBackup/AccountBackupList.vue b/src/views/accounts/AccountBackup/AccountBackupList.vue index c1b928638..3baa65cfd 100644 --- a/src/views/accounts/AccountBackup/AccountBackupList.vue +++ b/src/views/accounts/AccountBackup/AccountBackupList.vue @@ -86,8 +86,9 @@ export default { extraActions: [ { title: vm.$t('Execute'), + order: 1, name: 'execute', - type: 'info', + type: 'primary', can: this.$hasPerm('accounts.add_accountbackupexecution'), callback: function({ row }) { this.$axios.post( diff --git a/src/views/accounts/AccountChangeSecret/AccountChangeSecretList.vue b/src/views/accounts/AccountChangeSecret/AccountChangeSecretList.vue index 948d851e1..30bfbfc0c 100644 --- a/src/views/accounts/AccountChangeSecret/AccountChangeSecretList.vue +++ b/src/views/accounts/AccountChangeSecret/AccountChangeSecretList.vue @@ -83,10 +83,11 @@ export default { { title: vm.$t('Execute'), name: 'execute', + order: 1, can: ({ row }) => { return row.is_active && vm.$hasPerm('accounts.add_changesecretexecution') }, - type: 'info', + type: 'primary', disabled: ({ row }) => !row.is_active, callback: function({ row }) { this.$axios.post( diff --git a/src/views/accounts/AccountDiscover/AccountDiscoverTaskList.vue b/src/views/accounts/AccountDiscover/AccountDiscoverTaskList.vue index bcea3f5f4..a7de9d57e 100644 --- a/src/views/accounts/AccountDiscover/AccountDiscoverTaskList.vue +++ b/src/views/accounts/AccountDiscover/AccountDiscoverTaskList.vue @@ -91,7 +91,8 @@ export default { { title: vm.$t('Execute'), name: 'execute', - type: 'info', + type: 'primary', + order: 1, can: vm.$hasPerm('accounts.add_gatheraccountsexecution'), callback: function(data) { this.$axios.post( diff --git a/src/views/accounts/AccountPush/AccountPushList.vue b/src/views/accounts/AccountPush/AccountPushList.vue index bae749eff..2686c8fca 100644 --- a/src/views/accounts/AccountPush/AccountPushList.vue +++ b/src/views/accounts/AccountPush/AccountPushList.vue @@ -87,10 +87,11 @@ export default { { title: vm.$t('Execute'), name: 'execute', + order: 1, + type: 'primary', can: ({ row }) => { return row.is_active && vm.$hasPerm('accounts.add_pushaccountexecution') }, - type: 'info', callback: function({ row }) { this.$axios.post( `/api/v1/accounts/push-account-executions/`, diff --git a/src/views/pam/RiskDetect/AccountCheckTaskList.vue b/src/views/pam/RiskDetect/AccountCheckTaskList.vue index 3f9dcf8ad..b25eaff3b 100644 --- a/src/views/pam/RiskDetect/AccountCheckTaskList.vue +++ b/src/views/pam/RiskDetect/AccountCheckTaskList.vue @@ -112,8 +112,8 @@ export default { { title: vm.$t('Execute'), order: 1, - name: 'execute', type: 'primary', + name: 'execute', can: ({ row }) => { return row.is_active && vm.$hasPerm('accounts.add_accountcheckautomation') }, diff --git a/src/views/pam/RiskDetect/RiskHandlerFormatter/ReviewDrawer.vue b/src/views/pam/RiskDetect/RiskHandlerFormatter/ReviewDrawer.vue index 7c2eaf8f4..aea83fe2d 100644 --- a/src/views/pam/RiskDetect/RiskHandlerFormatter/ReviewDrawer.vue +++ b/src/views/pam/RiskDetect/RiskHandlerFormatter/ReviewDrawer.vue @@ -90,7 +90,7 @@ export default { return riskActions.reduce((acc, cur) => { acc[cur.name] = cur return acc - }, { 'ignore': { label: this.$t('Ignore') }}) + }, {}) }, iRows() { if (this.rows.length === 0) { @@ -124,20 +124,26 @@ export default { this.$emit('ignore', { comment: this.comment }) }, getDetailIcon(detail) { - if (detail.status === '1') { - return 'el-icon-check' - } else if (detail.status === '0') { - return 'el-icon-close' + switch (detail.status) { + case '1': + return 'el-icon-check' + case '2': + return 'el-icon-close-notification' + default: + return '' } }, getDetailType(detail) { if (detail.type !== 'process') { return 'warning' } - if (detail.status === '1') { - return 'primary' - } else { - return 'danger' + switch (detail.action) { + case 'ignore': + return 'danger' + case 'reopen': + return 'primary' + default: + return 'success' } }, handleDetail(row, detail) { diff --git a/src/views/pam/RiskDetect/RiskHandlerFormatter/const.js b/src/views/pam/RiskDetect/RiskHandlerFormatter/const.js index 16dcc956f..86184d779 100644 --- a/src/views/pam/RiskDetect/RiskHandlerFormatter/const.js +++ b/src/views/pam/RiskDetect/RiskHandlerFormatter/const.js @@ -49,6 +49,14 @@ export const riskActions = [ return risks.includes(this.row.risk.value) && await checkUserExist.call(this) } }, + { + name: 'view_password', + label: i18n.t('View Password'), + has: async function() { + const risks = ['weak_password', 'leaked_password', 'repeated_password'] + return risks.includes(this.row.risk.value) + } + }, // { // name: 'addPrivilegedAccount', // label: i18n.t('Add Privileged Account'), @@ -63,5 +71,10 @@ export const riskActions = [ name: 'review', label: i18n.t('Review'), has: ['group_changed', 'sudo_changed', 'authorized_key_changed', 'account_deleted', 'others'] + }, + { + name: 'ignore', + label: i18n.t('Ignore'), + has: false } ] diff --git a/src/views/pam/RiskDetect/RiskHandlerFormatter/index.vue b/src/views/pam/RiskDetect/RiskHandlerFormatter/index.vue index f79eeafae..b85ebf8d2 100644 --- a/src/views/pam/RiskDetect/RiskHandlerFormatter/index.vue +++ b/src/views/pam/RiskDetect/RiskHandlerFormatter/index.vue @@ -22,13 +22,12 @@ - + - {{ iLabel }}