From 3142da16ae2f5effc44f6f406cc4e33c82929417 Mon Sep 17 00:00:00 2001 From: jiangweidong Date: Fri, 28 Jul 2023 10:49:11 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=94=AF=E6=8C=81=E6=89=B9=E9=87=8F?= =?UTF-8?q?=E5=AE=A1=E6=89=B9=E5=B7=A5=E5=8D=95=20(#3273)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/i18n/langs/en.json | 2 + src/i18n/langs/ja.json | 2 + src/i18n/langs/zh.json | 2 + src/views/tickets/AssignedTicketList.vue | 155 ++++++++++++++++++++++- src/views/tickets/BaseTicketList.vue | 39 +++--- src/views/tickets/MyTicketList.vue | 15 ++- 6 files changed, 192 insertions(+), 23 deletions(-) diff --git a/src/i18n/langs/en.json b/src/i18n/langs/en.json index 32b995887..60e62677f 100644 --- a/src/i18n/langs/en.json +++ b/src/i18n/langs/en.json @@ -1726,6 +1726,8 @@ "basicTools": "Basic tool" }, "tickets": { + "BatchApproval": "Batch approval", + "BatchReject": "Batch reject", "ApplyAsset": "Apply asset", "LoginConfirm": "User login confirm", "CommandConfirm": "Command confirm", diff --git a/src/i18n/langs/ja.json b/src/i18n/langs/ja.json index 57fcae1a7..f9e37425c 100644 --- a/src/i18n/langs/ja.json +++ b/src/i18n/langs/ja.json @@ -1719,6 +1719,8 @@ "Applets": "リモート アプリケーション" }, "tickets": { + "BatchApproval": "大量承認です", + "BatchReject": "一括拒否です", "ApplyAsset": "リソースの適用", "LoginConfirm": "ユーザーログインの確認", "CommandConfirm": "コマンドの確認", diff --git a/src/i18n/langs/zh.json b/src/i18n/langs/zh.json index 35d3e722a..b36667d14 100644 --- a/src/i18n/langs/zh.json +++ b/src/i18n/langs/zh.json @@ -1711,6 +1711,8 @@ "testHelpText": "请输入目的地址进行测试" }, "tickets": { + "BatchApproval": "批量审批", + "BatchReject": "批量拒绝", "ApplyAsset": "申请资产", "LoginConfirm": "用户登录复核", "CommandConfirm": "命令复核", diff --git a/src/views/tickets/AssignedTicketList.vue b/src/views/tickets/AssignedTicketList.vue index b862879fe..ef85215d4 100644 --- a/src/views/tickets/AssignedTicketList.vue +++ b/src/views/tickets/AssignedTicketList.vue @@ -1,15 +1,59 @@ diff --git a/src/views/tickets/BaseTicketList.vue b/src/views/tickets/BaseTicketList.vue index 0a4508ff5..d3c739e40 100644 --- a/src/views/tickets/BaseTicketList.vue +++ b/src/views/tickets/BaseTicketList.vue @@ -1,7 +1,8 @@ @@ -22,9 +23,9 @@ export default { type: String, default: '/api/v1/tickets/tickets/' }, - hasMoreActions: { - type: Boolean, - default: false + extraTicketAction: { + type: Object, + default: () => ({}) }, extraQuery: { type: Object, @@ -132,9 +133,10 @@ export default { } } }, - ticketActions: { + defaultTicketActions: { hasExport: false, - hasLeftActions: this.hasMoreActions, + hasMoreActions: false, + hasLeftActions: true, canCreate: this.$hasPerm('tickets.view_ticket'), hasBulkDelete: false, searchConfig: { @@ -217,28 +219,25 @@ export default { } ] }, - createTitle: this.$t('common.RequestTickets'), - hasMoreActions: false, - moreCreates: { - dropdown: [ - { - name: 'RequestAssetPerm', - title: this.$t('tickets.RequestAssetPerm'), - callback: () => this.$router.push({ - name: 'RequestAssetPermTicketCreateUpdate' - }) - } - ] - } + createTitle: this.$t('common.RequestTickets') } } }, + computed: { + iTicketAction() { + return Object.assign({}, this.defaultTicketActions, this.extraTicketAction) + } + }, mounted() { setTimeout(() => { this.loading = false }, 500) }, - methods: {} + methods: { + reloadTable() { + this.$refs.ListPage.$refs.ListTable.$refs.ListTable.reloadTable() + } + } } diff --git a/src/views/tickets/MyTicketList.vue b/src/views/tickets/MyTicketList.vue index 0e76d7887..cb6629d74 100644 --- a/src/views/tickets/MyTicketList.vue +++ b/src/views/tickets/MyTicketList.vue @@ -1,5 +1,5 @@