Merge remote-tracking branch 'origin/master'

This commit is contained in:
OrangeM21
2020-04-13 19:59:04 +08:00
5 changed files with 25 additions and 40 deletions

View File

@@ -33,7 +33,7 @@ export default {
this.$emit('cancel') this.$emit('cancel')
}, },
onConfirm() { onConfirm() {
this.$emit('comfirm') this.$emit('confirm')
} }
} }
} }

View File

@@ -3,7 +3,7 @@
<TableAction :table-url="tableConfig.url" :search-table="search" v-bind="headerActions" :selected-rows="selectedRows" :reload-table="reloadTable" /> <TableAction :table-url="tableConfig.url" :search-table="search" v-bind="headerActions" :selected-rows="selectedRows" :reload-table="reloadTable" />
<el-card class="table-content" shadow="never"> <el-card class="table-content" shadow="never">
<AutoDataTable ref="dataTable" :config="tableConfig" @selection-change="handleSelectionChange" /> <AutoDataTable ref="dataTable" :config="tableConfig" @selection-change="handleSelectionChange" />
<Dialog :title="$tc('Export')" :visible.sync="showExportDialog" center @comfirm="handleDialogConfirm('export')" @cancel="handleDialogCancel('export')"> <Dialog :title="$tc('Export')" :visible.sync="showExportDialog" center @confirm="handleDialogConfirm('export')" @cancel="handleDialogCancel('export')">
<el-form> <el-form>
<el-form-item :label="this.$t('action.ExportRange')" :label-width="'100px'"> <el-form-item :label="this.$t('action.ExportRange')" :label-width="'100px'">
<el-radio v-model="exportOption" class="export-item" label="1">{{ this.$t('action.ExportAll') }}</el-radio> <el-radio v-model="exportOption" class="export-item" label="1">{{ this.$t('action.ExportAll') }}</el-radio>
@@ -12,7 +12,7 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
</Dialog> </Dialog>
<Dialog :title="importtitle" :visible.sync="showImportDialog" center @comfirm="handleDialogConfirm('import')" @cancel="handleDialogCancel('import')"> <Dialog :title="importtitle" :visible.sync="showImportDialog" center @confirm="handleDialogConfirm('import')" @cancel="handleDialogCancel('import')">
<el-form> <el-form>
<el-form-item :label="importtitle" :label-width="'100px'"> <el-form-item :label="importtitle" :label-width="'100px'">
<el-radio v-model="importOption" class="export-item" label="1">{{ this.$tc('Import') }}</el-radio> <el-radio v-model="importOption" class="export-item" label="1">{{ this.$tc('Import') }}</el-radio>

View File

@@ -3,7 +3,7 @@
<TableAction :table-url="tableConfig.url" :search-table="search" v-bind="headerActions" :selected-rows="selectedRows" :reload-table="reloadTable" /> <TableAction :table-url="tableConfig.url" :search-table="search" v-bind="headerActions" :selected-rows="selectedRows" :reload-table="reloadTable" />
<el-card class="table-content" shadow="never"> <el-card class="table-content" shadow="never">
<TreeAutoDataTable ref="dataTable" :config="tableConfig" @selection-change="handleSelectionChange" /> <TreeAutoDataTable ref="dataTable" :config="tableConfig" @selection-change="handleSelectionChange" />
<Dialog :title="$tc('Export')" :visible.sync="showExportDialog" center @comfirm="handleDialogConfirm('export')" @cancel="handleDialogCancel('export')"> <Dialog :title="$tc('Export')" :visible.sync="showExportDialog" center @confirm="handleDialogConfirm('export')" @cancel="handleDialogCancel('export')">
<el-form> <el-form>
<el-form-item :label="this.$t('action.ExportRange')" :label-width="'100px'"> <el-form-item :label="this.$t('action.ExportRange')" :label-width="'100px'">
<el-radio v-model="exportOption" class="export-item" label="1">{{ this.$t('action.ExportAll') }}</el-radio> <el-radio v-model="exportOption" class="export-item" label="1">{{ this.$t('action.ExportAll') }}</el-radio>
@@ -12,7 +12,7 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
</Dialog> </Dialog>
<Dialog :title="importtitle" :visible.sync="showImportDialog" center @comfirm="handleDialogConfirm('import')" @cancel="handleDialogCancel('import')"> <Dialog :title="importtitle" :visible.sync="showImportDialog" center @confirm="handleDialogConfirm('import')" @cancel="handleDialogCancel('import')">
<el-form> <el-form>
<el-form-item :label="importtitle" :label-width="'100px'"> <el-form-item :label="importtitle" :label-width="'100px'">
<el-radio v-model="importOption" class="export-item" label="1">{{ this.$tc('Import') }}</el-radio> <el-radio v-model="importOption" class="export-item" label="1">{{ this.$tc('Import') }}</el-radio>

View File

@@ -193,6 +193,12 @@ export const constantRoutes = [
component: () => import('@/views/applications/RemoteAppList'), component: () => import('@/views/applications/RemoteAppList'),
meta: { title: 'RemoteApp' } meta: { title: 'RemoteApp' }
}, },
{
path: 'remote-apps/:id',
name: 'RemoteAppDetail',
component: () => import('@/views/applications/RemoteAppList'),
meta: { title: 'RemoteApp' }
},
{ {
path: 'database-apps', path: 'database-apps',
name: 'DatabaseAppList', name: 'DatabaseAppList',

View File

@@ -4,7 +4,6 @@
<script> <script>
import { GenericListPage } from '@/layout/components' import { GenericListPage } from '@/layout/components'
import { DetailFormatter, ActionsFormatter } from '@/components/ListTable/formatters/index'
export default { export default {
components: { components: {
@@ -15,44 +14,24 @@ export default {
tableConfig: { tableConfig: {
url: '/api/v1/applications/remote-apps/', url: '/api/v1/applications/remote-apps/',
columns: [ columns: [
{ 'name', 'type', 'asset', 'comment', 'actions'
prop: 'name', ],
label: this.$t('applications.name'), columnsMeta: {
formatter: DetailFormatter, type: {
sortable: true, displayKey: 'get_type_display'
route: 'RemoteAppDetail'
}, },
{ asset: {
prop: 'get_type_display', formatter: function(row, column, cellValue, index) {
label: this.$t('applications.appType') return <a class='detail el-link el-link--success is-underline' href={ `/assets/assets/${cellValue}` }>{ row.asset_info.hostname }</a>
}
}
}, },
{ detailRoute: 'RemoteAppDetail',
prop: 'asset_info.hostname',
label: this.$t('applications.asset')
},
{
prop: 'comment',
label: this.$t('applications.comment'),
sortable: 'custom'
},
{
prop: 'id',
label: this.$tc('Action'),
align: 'center',
formatter: ActionsFormatter,
width: '200px',
actions: { actions: {
performDelete: ({ row, col }) => { updateRoute: 'RemoteAppUpdate'
const id = row.id
const url = `/api/v1/applications/remote-apps/${id}/`
return this.$axios.delete(url)
} }
}
}
]
}, },
headerActions: { headerActions: {
hasBulkDelete: false,
createRoute: 'RemoteAppCreate' createRoute: 'RemoteAppCreate'
} }
} }
@@ -60,6 +39,6 @@ export default {
} }
</script> </script>
<style> <style lang="less" scoped>
</style> </style>