提交 987fd074 authored 作者: taojinlong's avatar taojinlong

feat: 调整驱动管理页面

上级 722648bb
...@@ -1334,6 +1334,7 @@ export default { ...@@ -1334,6 +1334,7 @@ export default {
driver: 'Driver', driver: 'Driver',
please_choose_driver: 'Please choose driver', please_choose_driver: 'Please choose driver',
mgm: 'Driver', mgm: 'Driver',
exit_mgm: 'Exit Driver',
add: 'ADD Driver', add: 'ADD Driver',
modify: 'Modify', modify: 'Modify',
show_info: 'Driver info', show_info: 'Driver info',
......
...@@ -1334,6 +1334,7 @@ export default { ...@@ -1334,6 +1334,7 @@ export default {
driver: '驅動', driver: '驅動',
please_choose_driver: '青選擇驅動', please_choose_driver: '青選擇驅動',
mgm: '驅動管理', mgm: '驅動管理',
exit_mgm: '退出驅動管理',
add: '添加驅動', add: '添加驅動',
modify: '修改', modify: '修改',
show_info: '驅動信息', show_info: '驅動信息',
......
...@@ -1336,6 +1336,7 @@ export default { ...@@ -1336,6 +1336,7 @@ export default {
driver: '驱动', driver: '驱动',
please_choose_driver: '请选择驱动', please_choose_driver: '请选择驱动',
mgm: '驱动管理', mgm: '驱动管理',
exit_mgm: '退出驱动管理',
add: '添加驱动', add: '添加驱动',
modify: '修改', modify: '修改',
show_info: '驱动信息', show_info: '驱动信息',
......
<template xmlns:el-col="http://www.w3.org/1999/html"> <template xmlns:el-col="http://www.w3.org/1999/html">
<el-col class="tree-style"> <el-col class="tree-style">
<el-col> <el-col>
<el-row> <el-row class="title-css" v-show="showView === 'Datasource'">
<el-tabs v-model="showView" type="card" @tab-click="changeTab"> <span class="title-text">
<el-tab-pane v-for="(item, index) in editableTabs" :key="item.name" :label="item.title" :name="item.name" /> {{ $t('commons.datasource') }}
</el-tabs> </span>
</el-row> </el-row>
<el-row> <el-row v-show="showView === 'Datasource'">
<el-button icon="el-icon-plus" type="text" size="mini" style="float: left;" @click="addFolder" /> <el-button icon="el-icon-plus" type="text" size="mini" style="float: left;" @click="addFolder"> {{ $t('datasource.create') }}</el-button>
<el-button icon="el-icon-setting" type="text" size="mini" style="float: right;" @click="driverMgm"> {{ $t('driver.mgm') }}</el-button>
</el-button>
</el-row>
<el-row class="title-css" v-show="showView === 'Driver'">
<template>
<el-icon name="back" class="back-button" size="mini" @click.native="dsMgm" />
{{$t('driver.exit_mgm')}}
</template>
</el-row>
<el-row v-show="showView === 'Driver'">
<el-button icon="el-icon-plus" type="text" size="mini" style="float: left;" @click="addFolder"> {{ $t('driver.add') }}</el-button>
</el-row> </el-row>
<el-row> <el-row>
<el-form> <el-form>
<el-form-item class="form-item"> <el-form-item class="form-item">
...@@ -38,16 +51,16 @@ ...@@ -38,16 +51,16 @@
<span slot-scope="{ node, data }" class="custom-tree-node-list father"> <span slot-scope="{ node, data }" class="custom-tree-node-list father">
<span style="display: flex;flex: 1;width: 0;"> <span style="display: flex;flex: 1;width: 0;">
<span v-if="data.type !== 'folder' && data.status !== 'Error' && data.status !== 'Warning'"> <span v-if="data.type !== 'folder' && data.status !== 'Error' && data.status !== 'Warning'">
<svg-icon icon-class="datasource" class="ds-icon-scene" /> <svg-icon icon-class="datasource" class="ds-icon-scene"/>
</span> </span>
<span v-if="data.status === 'Error'"> <span v-if="data.status === 'Error'">
<svg-icon icon-class="exclamationmark" class="ds-icon-scene" /> <svg-icon icon-class="exclamationmark" class="ds-icon-scene"/>
</span> </span>
<span v-if="data.status === 'Warning'"> <span v-if="data.status === 'Warning'">
<svg-icon icon-class="exclamationmark2" class="ds-icon-scene" /> <svg-icon icon-class="exclamationmark2" class="ds-icon-scene"/>
</span> </span>
<span v-if="data.type === 'folder'"> <span v-if="data.type === 'folder'">
<i class="el-icon-folder" /> <i class="el-icon-folder"/>
</span> </span>
<span <span
v-if=" data.status === 'Error'" v-if=" data.status === 'Error'"
...@@ -108,10 +121,10 @@ ...@@ -108,10 +121,10 @@
<el-dialog v-dialogDrag :title="dialogTitle" :visible="editDriver" :show-close="false" width="50%" append-to-body> <el-dialog v-dialogDrag :title="dialogTitle" :visible="editDriver" :show-close="false" width="50%" append-to-body>
<el-form ref="driverForm" :model="driverForm" label-position="right" label-width="100px" :rules="rule"> <el-form ref="driverForm" :model="driverForm" label-position="right" label-width="100px" :rules="rule">
<el-form-item :label="$t('commons.name')" prop="name"> <el-form-item :label="$t('commons.name')" prop="name">
<el-input v-model="driverForm.name" /> <el-input v-model="driverForm.name"/>
</el-form-item> </el-form-item>
<el-form-item :label="$t('commons.description')"> <el-form-item :label="$t('commons.description')">
<el-input v-model="driverForm.desc" /> <el-input v-model="driverForm.desc"/>
</el-form-item> </el-form-item>
<el-form-item :label="$t('datasource.type')" prop="type"> <el-form-item :label="$t('datasource.type')" prop="type">
<el-select <el-select
...@@ -142,7 +155,7 @@ ...@@ -142,7 +155,7 @@
</template> </template>
<script> <script>
import { mapGetters } from 'vuex' import {mapGetters} from 'vuex'
import i18n from '@/lang' import i18n from '@/lang'
import { import {
listDatasource, listDatasource,
...@@ -154,7 +167,7 @@ import { ...@@ -154,7 +167,7 @@ import {
delDriver, delDriver,
listDriverByType listDriverByType
} from '@/api/system/datasource' } from '@/api/system/datasource'
import { ApplicationContext } from '@/utils/ApplicationContext' import {ApplicationContext} from '@/utils/ApplicationContext'
export default { export default {
name: 'DsTree', name: 'DsTree',
...@@ -182,11 +195,11 @@ export default { ...@@ -182,11 +195,11 @@ export default {
}, },
disabledModifyType: false, disabledModifyType: false,
rule: { rule: {
name: [{ required: true, message: i18n.t('datasource.input_name'), trigger: 'blur' }, name: [{required: true, message: i18n.t('datasource.input_name'), trigger: 'blur'},
{ min: 2, max: 50, message: i18n.t('datasource.input_limit_2_25', [2, 25]), trigger: 'blur' }], {min: 2, max: 50, message: i18n.t('datasource.input_limit_2_25', [2, 25]), trigger: 'blur'}],
desc: [{ required: true, message: i18n.t('datasource.input_name'), trigger: 'blur' }, desc: [{required: true, message: i18n.t('datasource.input_name'), trigger: 'blur'},
{ min: 2, max: 200, message: i18n.t('datasource.input_limit_2_25', [2, 25]), trigger: 'blur' }], {min: 2, max: 200, message: i18n.t('datasource.input_limit_2_25', [2, 25]), trigger: 'blur'}],
type: [{ required: true, message: i18n.t('datasource.please_choose_type'), trigger: 'blur' }] type: [{required: true, message: i18n.t('datasource.please_choose_type'), trigger: 'blur'}]
}, },
editableTabs: [{ editableTabs: [{
title: i18n.t('commons.datasource'), title: i18n.t('commons.datasource'),
...@@ -310,12 +323,18 @@ export default { ...@@ -310,12 +323,18 @@ export default {
} }
}, },
changeTab() { driverMgm() {
this.showView = 'Driver'
this.expandedArray = []
this.tData = []
this.queryTreeDatas()
},
dsMgm() {
this.showView = 'Datasource'
this.expandedArray = [] this.expandedArray = []
this.tData = [] this.tData = []
this.queryTreeDatas() this.queryTreeDatas()
}, },
addFolderWithType(data) { addFolderWithType(data) {
if (this.showView === 'Driver') { if (this.showView === 'Driver') {
this.driverForm.type = data.id this.driverForm.type = data.id
...@@ -324,7 +343,7 @@ export default { ...@@ -324,7 +343,7 @@ export default {
this.editDriver = true this.editDriver = true
// this.switchMain(switchMain'DriverForm', {}, this.tData, this.dsTypes) // this.switchMain(switchMain'DriverForm', {}, this.tData, this.dsTypes)
} else { } else {
this.switchMain('DsForm', { type: data.id }, this.tData, this.dsTypes) this.switchMain('DsForm', {type: data.id}, this.tData, this.dsTypes)
} }
}, },
nodeClick(node, data) { nodeClick(node, data) {
...@@ -333,7 +352,7 @@ export default { ...@@ -333,7 +352,7 @@ export default {
}, },
clickFileMore(param) { clickFileMore(param) {
const { optType, data } = param const {optType, data} = param
switch (optType) { switch (optType) {
case 'edit': case 'edit':
this.edit(data) this.edit(data)
...@@ -346,13 +365,13 @@ export default { ...@@ -346,13 +365,13 @@ export default {
} }
}, },
beforeClickFile(optType, data, node) { beforeClickFile(optType, data, node) {
return { optType, data, node } return {optType, data, node}
}, },
edit(row) { edit(row) {
this.switchMain('DsForm', row, this.tData, this.dsTypes) this.switchMain('DsForm', row, this.tData, this.dsTypes)
}, },
showInfo(row) { showInfo(row) {
const param = { ...row.data, ...{ showModel: 'show' }} const param = {...row.data, ...{showModel: 'show'}}
if (this.showView === 'Datasource') { if (this.showView === 'Datasource') {
this.switchMain('DsForm', param, this.tData, this.dsTypes) this.switchMain('DsForm', param, this.tData, this.dsTypes)
} else { } else {
...@@ -366,7 +385,7 @@ export default { ...@@ -366,7 +385,7 @@ export default {
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
let method = delDriver let method = delDriver
let parma = { type: datasource.type, id: datasource.id } let parma = {type: datasource.type, id: datasource.id}
if (this.showView === 'Datasource') { if (this.showView === 'Datasource') {
method = delDs method = delDs
parma = datasource.id parma = datasource.id
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论