UI: add filter user/all to list user/all volumes (#7075)

This commit is contained in:
Wei Zhou 2023-01-18 14:32:36 +01:00 committed by GitHub
parent 0fd416d074
commit dc1a452913
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 17 additions and 6 deletions

View File

@ -30,6 +30,13 @@ export default {
docHelp: 'adminguide/storage.html#working-with-volumes', docHelp: 'adminguide/storage.html#working-with-volumes',
permission: ['listVolumesMetrics'], permission: ['listVolumesMetrics'],
resourceType: 'Volume', resourceType: 'Volume',
filters: () => {
if (store.getters.userInfo.roletype === 'Admin') {
return ['user', 'all']
} else {
return []
}
},
columns: () => { columns: () => {
const fields = ['name', 'state', 'type', 'vmname', 'sizegb'] const fields = ['name', 'state', 'type', 'vmname', 'sizegb']
const metricsFields = ['diskkbsread', 'diskkbswrite', 'diskiopstotal'] const metricsFields = ['diskkbsread', 'diskkbswrite', 'diskiopstotal']

View File

@ -55,8 +55,10 @@
:placeholder="$t('label.filterby')" :placeholder="$t('label.filterby')"
:value="$route.query.filter || (projectView && $route.name === 'vm' || :value="$route.query.filter || (projectView && $route.name === 'vm' ||
['Admin', 'DomainAdmin'].includes($store.getters.userInfo.roletype) && ['vm', 'iso', 'template'].includes($route.name) ['Admin', 'DomainAdmin'].includes($store.getters.userInfo.roletype) && ['vm', 'iso', 'template'].includes($route.name)
? 'all' : ['publicip'].includes($route.name) ? 'all' : ['publicip'].includes($route.name)
? 'allocated' : ['guestnetwork', 'guestvlans'].includes($route.name) ? 'all' : 'self')" ? 'allocated' : ['guestnetwork', 'guestvlans'].includes($route.name)
? 'all' : ['volume'].includes($route.name)
? 'user' : 'self')"
style="min-width: 120px; margin-left: 10px" style="min-width: 120px; margin-left: 10px"
@change="changeFilter" @change="changeFilter"
showSearch showSearch
@ -847,10 +849,6 @@ export default {
delete params.showunique delete params.showunique
} }
if (['Admin'].includes(this.$store.getters.userInfo.roletype) && ['listVolumesMetrics', 'listVolumes'].includes(this.apiName)) {
params.listsystemvms = true
}
this.loading = true this.loading = true
if (this.$route.params && this.$route.params.id) { if (this.$route.params && this.$route.params.id) {
params.id = this.$route.params.id params.id = this.$route.params.id
@ -1542,6 +1540,12 @@ export default {
query.templatefilter = filter query.templatefilter = filter
} else if (this.$route.name === 'iso') { } else if (this.$route.name === 'iso') {
query.isofilter = filter query.isofilter = filter
} else if (this.$route.name === 'volume') {
if (filter === 'all') {
query.listsystemvms = true
} else {
delete query.listsystemvms
}
} else if (this.$route.name === 'guestnetwork') { } else if (this.$route.name === 'guestnetwork') {
if (filter === 'all') { if (filter === 'all') {
delete query.networkfilter delete query.networkfilter