mirror of
https://github.com/jumpserver/lina.git
synced 2026-01-15 14:24:39 +00:00
perf: 修改支持自定义资产
This commit is contained in:
@@ -205,6 +205,40 @@ export default [
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: 'customs',
|
||||
component: empty,
|
||||
redirect: '',
|
||||
hidden: true,
|
||||
meta: {
|
||||
title: i18n.t('route.CustomAsset'),
|
||||
app: 'assets',
|
||||
resource: 'asset'
|
||||
},
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
name: 'CustomList',
|
||||
component: () => import('@/views/assets/Asset/AssetList/CustomList.vue'),
|
||||
hidden: true,
|
||||
meta: { title: i18n.t('route.HostList'), activeMenu: '/console/assets/assets' }
|
||||
},
|
||||
{
|
||||
path: 'create',
|
||||
name: 'CustomCreate',
|
||||
component: () => import('@/views/assets/Asset/AssetCreateUpdate/CustomCreateUpdate.vue'),
|
||||
hidden: true,
|
||||
meta: { title: i18n.t('assets.CreateWeb'), activeMenu: '/console/assets/assets' }
|
||||
},
|
||||
{
|
||||
path: ':id/update',
|
||||
name: 'CustomUpdate',
|
||||
component: () => import('@/views/assets/Asset/AssetCreateUpdate/CustomCreateUpdate.vue'),
|
||||
hidden: true,
|
||||
meta: { title: i18n.t('route.AssetUpdate'), activeMenu: '/console/assets/assets' }
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: 'domains',
|
||||
component: empty,
|
||||
|
||||
@@ -80,14 +80,17 @@ export default {
|
||||
return this.$axios[submitMethod](url, values)
|
||||
},
|
||||
onPerformSuccess(res, method) {
|
||||
const nextRoute = this.$router.push({ name: 'AssetList', params: { extraQuery: { order: '-date_updated' }}})
|
||||
this.$router.push({
|
||||
name: 'AssetList',
|
||||
params: { extraQuery: { order: '-date_updated' }}
|
||||
})
|
||||
switch (method) {
|
||||
case 'post':
|
||||
this.$message.success(this.$tc('common.createSuccessMsg'))
|
||||
return nextRoute
|
||||
break
|
||||
case 'put':
|
||||
this.$message.success(this.$tc('common.updateSuccessMsg'))
|
||||
return nextRoute
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
<template>
|
||||
<BaseAssetCreateUpdate v-bind="$data" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import BaseAssetCreateUpdate from './BaseAssetCreateUpdate'
|
||||
|
||||
export default {
|
||||
name: 'WebCreateUpdate',
|
||||
components: { BaseAssetCreateUpdate },
|
||||
data() {
|
||||
return {
|
||||
url: '/api/v1/assets/customs/',
|
||||
addFields: [
|
||||
],
|
||||
addFieldsMeta: {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
</style>
|
||||
38
src/views/assets/Asset/AssetList/CustomList.vue
Normal file
38
src/views/assets/Asset/AssetList/CustomList.vue
Normal file
@@ -0,0 +1,38 @@
|
||||
<template>
|
||||
<BaseList v-bind="config" />
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import BaseList from './components/BaseList'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
BaseList
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
config: {
|
||||
category: 'custom',
|
||||
url: '/api/v1/assets/customs/',
|
||||
headerActions: {
|
||||
createRoute: 'CustomCreate'
|
||||
},
|
||||
tableConfig: {
|
||||
columnsExclude: [
|
||||
],
|
||||
columnsMeta: {
|
||||
autofill: {
|
||||
width: '100px'
|
||||
}
|
||||
}
|
||||
},
|
||||
helpMessage: this.$t('assets.CustomHelpMessage')
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
|
||||
</style>
|
||||
@@ -54,6 +54,12 @@ export default {
|
||||
icon: 'fa-globe',
|
||||
name: 'web',
|
||||
component: () => import('@/views/assets/Asset/AssetList/WebList.vue')
|
||||
},
|
||||
{
|
||||
title: 'Custom',
|
||||
icon: 'fa-globe',
|
||||
name: 'custom',
|
||||
component: () => import('@/views/assets/Asset/AssetList/CustomList.vue')
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user