mirror of
https://github.com/jumpserver/lina.git
synced 2026-01-15 14:24:39 +00:00
perf:Universal Drawer action assembly
This commit is contained in:
@@ -10,8 +10,8 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import ActionsGroup from '@/components/ActionsGroup/index.vue'
|
||||
import BaseFormatter from './base.vue'
|
||||
import ActionsGroup from '@/components/ActionsGroup/index.vue'
|
||||
|
||||
const defaultPerformDelete = function({ row, col }) {
|
||||
const id = row.id
|
||||
@@ -23,7 +23,9 @@ const defaultPerformDelete = function({ row, col }) {
|
||||
|
||||
const defaultUpdateCallback = function({ row, col }) {
|
||||
const id = row.id
|
||||
|
||||
let route = { params: { id: id }}
|
||||
|
||||
const updateRoute = this.colActions.updateRoute
|
||||
|
||||
if (typeof updateRoute === 'object') {
|
||||
@@ -33,6 +35,7 @@ const defaultUpdateCallback = function({ row, col }) {
|
||||
} else {
|
||||
route.name = updateRoute
|
||||
}
|
||||
|
||||
this.$router.push(route)
|
||||
}
|
||||
|
||||
@@ -106,7 +109,7 @@ export default {
|
||||
onUpdate: defaultUpdateCallback,
|
||||
onDelete: defaultDeleteCallback,
|
||||
onClone: defaultCloneCallback,
|
||||
extraActions: [] // format see defaultActions
|
||||
extraActions: []
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -145,8 +148,7 @@ export default {
|
||||
return {
|
||||
colActions: colActions,
|
||||
defaultActions: defaultActions,
|
||||
extraActions: colActions.extraActions,
|
||||
moreActionsTitle: ''
|
||||
extraActions: colActions.extraActions
|
||||
// moreActionsTitle: colActions.moreActionsTitle || null
|
||||
}
|
||||
},
|
||||
|
||||
@@ -20,10 +20,9 @@
|
||||
import { GenericListPage } from '@/layout/components'
|
||||
import { ActionsFormatter } from '@/components/Table/TableFormatters'
|
||||
|
||||
import Drawer from '@/components/Drawer/index.vue'
|
||||
import ViewSecret from '@/components/Apps/AccountListTable/ViewSecret'
|
||||
import AccountTemplateDetail from '@/views/accounts/AccountTemplate/AccountTemplateDetail/index.vue'
|
||||
import AccountTemplateUpdate from '@/views/accounts/AccountTemplate/AccountTemplateCreateUpdate.vue'
|
||||
import Drawer from '@/components/Drawer/index.vue'
|
||||
// import AccountTemplateDetail from '@/views/accounts/AccountTemplate/AccountTemplateDetail/index.vue'
|
||||
|
||||
export default {
|
||||
name: 'AccountTemplateList',
|
||||
@@ -31,8 +30,7 @@ export default {
|
||||
Drawer,
|
||||
ViewSecret,
|
||||
GenericListPage,
|
||||
AccountTemplateUpdate,
|
||||
AccountTemplateDetail
|
||||
AccountTemplateUpdate: () => import('@/views/accounts/AccountTemplate/AccountTemplateCreateUpdate.vue')
|
||||
},
|
||||
data() {
|
||||
const vm = this
|
||||
@@ -78,10 +76,9 @@ export default {
|
||||
actions: {
|
||||
formatter: ActionsFormatter,
|
||||
formatterArgs: {
|
||||
hasUpdate: true,
|
||||
hasDelete: true,
|
||||
hasClone: this.hasClone,
|
||||
isPam: true,
|
||||
moreActionsTitle: this.$t('More'),
|
||||
updateRoute: 'AccountTemplateUpdate',
|
||||
extraActions: [
|
||||
{
|
||||
name: 'View',
|
||||
@@ -101,8 +98,9 @@ export default {
|
||||
onUpdate: ({ row }) => {
|
||||
this.$route.params.id = row.id
|
||||
|
||||
this.$route.query.type = 'pam'
|
||||
|
||||
this.currentTemplate = 'AccountTemplateUpdate'
|
||||
this.drawerTitle = this.$t('UpdateAccountTemplate')
|
||||
this.showTableUpdateDrawer = true
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,24 +9,21 @@
|
||||
|
||||
<script>
|
||||
import Drawer from '@/components/Drawer/index.vue'
|
||||
import AssetDetail from '@/views/assets/Asset/AssetDetail'
|
||||
import BaseList from '@/views/assets/Asset/AssetList/components/BaseList'
|
||||
|
||||
import HostUpdate from '@/views/assets/Asset/AssetCreateUpdate/HostCreateUpdate.vue'
|
||||
import { ActionsFormatter, DetailFormatter } from '@/components/Table/TableFormatters'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
Drawer,
|
||||
BaseList,
|
||||
HostUpdate,
|
||||
AssetDetail
|
||||
HostUpdate: () => import('@/views/assets/Asset/AssetCreateUpdate/HostCreateUpdate.vue')
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
drawerTitle: '',
|
||||
currentTemplate: null,
|
||||
showTableUpdateDrawer: false,
|
||||
currentTemplate: null,
|
||||
config: {
|
||||
url: '/api/v1/assets/assets/',
|
||||
category: 'all'
|
||||
@@ -61,6 +58,8 @@ export default {
|
||||
actions: {
|
||||
formatter: ActionsFormatter,
|
||||
formatterArgs: {
|
||||
isPam: true,
|
||||
updateRoute: 'HostUpdate',
|
||||
onUpdate: ({ row }) => {
|
||||
this.$route.params.id = row.id
|
||||
|
||||
|
||||
Reference in New Issue
Block a user