fix: 数据源页面刷新路由参数持久化 数据集保存跳转 bug修复

This commit is contained in:
dataeaseShu 2022-09-21 11:55:39 +08:00
parent b19a20f2e7
commit 21a953eafb
19 changed files with 969 additions and 1108 deletions

View File

@ -148,4 +148,11 @@ export function updateDriver(data) {
})
}
export default { dsGrid, addDs, editDs, delDs, validateDs, listDatasource, getSchema }
export function getDatasourceDetail(id) {
return request({
url: `/datasource/get/${id}`,
loading: true,
method: 'post',
})
}
export default { getDatasourceDetail, dsGrid, addDs, editDs, delDs, validateDs, listDatasource, getSchema }

View File

@ -520,7 +520,7 @@ export default {
left_to_edit: 'Select the data table on the left to edit',
cannot_be_duplicate: 'The dataset name cannot be duplicate',
set_saved_successfully: 'Data set saved successfully',
to_start_using: 'Browse the contents of your database, tables, and columns. Select a database to start using.',
to_start_using: 'Browse the contents of your database, tables and columns. Choose a database to get started.',
to_run_query: 'Click to run query',
the_running_results: 'You can view the running results'
},

View File

@ -32,7 +32,6 @@
clearable
/>
<div class="table-checkbox-list">
<!-- <div class="item" v-for="(ele, index) in tableData"> -->
<el-checkbox-group v-model="checkTableList" size="small">
<el-tooltip
:disabled="t.enableCheck"
@ -58,7 +57,6 @@
</div>
</el-tooltip>
</el-checkbox-group>
<!-- </div> -->
</div>
</div>
<div class="table-detail">

View File

@ -33,7 +33,6 @@
clearable
/>
<div class="table-checkbox-list">
<!-- <div class="item" v-for="(ele, index) in tableData"> -->
<el-checkbox-group v-model="checkTableList" size="small">
<el-tooltip
:disabled="t.enableCheck"
@ -59,7 +58,6 @@
</div>
</el-tooltip>
</el-checkbox-group>
<!-- </div> -->
</div>
</div>
<div class="table-detail">

View File

@ -1,11 +1,5 @@
<template>
<div class="dataset-excel">
<!-- <el-button size="mini" @click="cancel">
{{ $t('dataset.cancel') }}
</el-button>
<el-button size="mini" type="primary" @click="save">
{{ $t('dataset.confirm') }}
</el-button> -->
<p v-if="!showLeft" @click="showLeft = true" class="arrow-right">
<i class="el-icon-d-arrow-right"></i>
</p>
@ -260,15 +254,6 @@ export default {
defaultCheckedKeys: []
}
},
watch: {
defaultCheckedKeys(val) {
const excelNum = this.excelData.map((ele) => ele.id)
this.$emit(
'setTableNum',
val.filter((ele) => !excelNum.includes(ele)).length
)
}
},
mounted() {
window.onresize = () => {
this.calHeight()
@ -297,7 +282,9 @@ export default {
this.defaultCheckedKeys.splice(index, 1)
}
this.validateName()
this.$emit('setTableNum', this.defaultCheckedKeys.length)
const labelList = this.$refs.tree.getCheckedNodes().map(ele => ele.excelLable)
const excelList = this.excelData.map(ele => ele.excelLable);
this.$emit('setTableNum', labelList.filter(ele => !excelList.includes(ele)).length)
},
nameExsitValidator(ele, checkList) {
this.$set(
@ -309,7 +296,9 @@ export default {
)
},
validateName() {
const checkList = this.$refs.tree.getCheckedNodes().map(ele => ele.datasetName)
const checkList = this.$refs.tree
.getCheckedNodes()
.map((ele) => ele.datasetName)
this.excelData
.reduce((pre, next) => pre.concat(next.sheets), [])
.forEach((ele, index) => {
@ -343,7 +332,7 @@ export default {
}
}
}
this.validateName();
this.validateName()
},
calHeight() {
const that = this

View File

@ -1,14 +1,5 @@
<template>
<div class="dataset-sql" @mouseup="mouseupDrag">
<!-- <el-input v-model="name" size="mini" :placeholder="$t('commons.name')"/> -->
<!-- <el-button size="mini" @click="cancel">
{{ $t('dataset.cancel') }}
</el-button>
<el-button size="mini" type="primary" @click="save">
{{ $t('dataset.confirm') }}
</el-button> -->
<div class="sql-editer">
<el-row>
<el-col :span="12">
@ -264,11 +255,6 @@
icon-class="field_value"
class="field-icon-value"
/>
<!-- <svg-icon
v-if="scope.row.deType === 5"
icon-class="field_location"
class="field-icon-location"
/> -->
</span>
</template>
</el-table-column>
@ -641,18 +627,18 @@ export default {
this.openMessageSuccess('dataset.pls_slc_data_source', 'error')
return
}
if (!this.table.name || this.table.name === '') {
if (!this.param.name || this.param.name === '') {
this.openMessageSuccess('dataset.pls_input_name', 'error')
return
}
if (this.table.name.length > 50) {
if (this.param.name.length > 50) {
this.openMessageSuccess('dataset.char_can_not_more_50', 'error')
return
}
this.parseVariable()
const table = {
id: this.param.tableId,
name: this.table.name,
name: this.param.name,
sceneId: this.param.id,
dataSourceId: this.dataSource,
type: 'sql',
@ -688,7 +674,7 @@ export default {
resetComponent() {
this.dataSource = ''
this.table.name = ''
this.param.name = ''
this.sql = ''
this.data = []
this.fields = []

View File

@ -1,15 +1,5 @@
<template>
<div class="dataset-union" @mouseup="mouseupDrag">
<!-- <el-form :inline="true" style="display: flex;align-items: center;justify-content: space-between;">
<el-form-item class="form-item" :label="$t('commons.name')">
<el-input v-model="name" size="mini" :placeholder="$t('commons.name')" clearable />
</el-form-item>
<el-form-item class="form-item">
<el-button :disabled="dataset.length === 0" size="mini" @click="previewData">
{{ $t('dataset.preview_result') }}
</el-button>
</el-form-item>
</el-form> -->
<div :style="{ height: unionHeight + 'px' }" class="unio-editer-container">
<!--添加第一个数据集按钮-->
<div v-if="dataset.length === 0">

View File

@ -1,16 +1,5 @@
<template>
<div :style="{ height: maxHeight, overflow: 'auto' }">
<!-- <el-row style="height: 26px;">-->
<!-- <span style="line-height: 26px;">-->
<!-- {{ $t('dataset.field_edit') }}-->
<!-- <span>{{ param.name }}</span>-->
<!-- </span>-->
<!-- <el-row style="float: right">-->
<!-- <el-button size="mini" @click="closeEdit">{{ $t('dataset.cancel') }}</el-button>-->
<!-- <el-button type="primary" size="mini" @click="saveEdit">{{ $t('dataset.confirm') }}</el-button>-->
<!-- </el-row>-->
<!-- </el-row>-->
<!-- <el-divider />-->
<el-row style="margin: 6px 0 16px 0">
<el-col :span="12">
<deBtn
@ -187,7 +176,6 @@
icon-class="field_text"
class="field-icon-text"
/>
<!-- <span class="field-class">{{ $t("dataset.text") }}</span> -->
</span>
<span v-if="scope.row.deType === 1">
<svg-icon
@ -195,7 +183,6 @@
icon-class="field_time"
class="field-icon-time"
/>
<!-- <span class="field-class">{{ $t("dataset.time") }}</span> -->
</span>
<span v-if="scope.row.deType === 2 || scope.row.deType === 3">
<svg-icon
@ -203,12 +190,6 @@
icon-class="field_value"
class="field-icon-value"
/>
<!-- <span v-if="scope.row.deType === 2" class="field-class">{{
$t("dataset.value")
}}</span>
<span v-if="scope.row.deType === 3" class="field-class">{{
$t("dataset.value") + "(" + $t("dataset.float") + ")"
}}</span> -->
</span>
<span v-if="scope.row.deType === 5">
<svg-icon
@ -216,7 +197,6 @@
icon-class="field_location"
class="field-icon-location"
/>
<!-- <span class="field-class">{{ $t("dataset.location") }}</span> -->
</span>
</span>
</template>
@ -310,14 +290,6 @@
</span>
</template>
</el-table-column>
<!-- <el-table-column property="groupType" :label="$t('dataset.field_group_type')" width="180">-->
<!-- <template slot-scope="scope">-->
<!-- <el-radio-group v-model="scope.row.groupType" size="mini">-->
<!-- <el-radio-button label="d">{{ $t('chart.dimension') }}</el-radio-button>-->
<!-- <el-radio-button label="q">{{ $t('chart.quota') }}</el-radio-button>-->
<!-- </el-radio-group>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column min-width="182" :label="$t('dataset.operator')">
<template slot-scope="scope">
<el-button
@ -522,7 +494,6 @@
icon-class="field_text"
class="field-icon-text"
/>
<!-- <span class="field-class">{{ $t("dataset.text") }}</span> -->
</span>
<span v-if="scope.row.deType === 1">
<svg-icon
@ -530,7 +501,6 @@
icon-class="field_time"
class="field-icon-time"
/>
<!-- <span class="field-class">{{ $t("dataset.time") }}</span> -->
</span>
<span v-if="scope.row.deType === 2 || scope.row.deType === 3">
<svg-icon
@ -538,12 +508,6 @@
icon-class="field_value"
class="field-icon-value"
/>
<!-- <span v-if="scope.row.deType === 2" class="field-class">{{
$t("dataset.value")
}}</span>
<span v-if="scope.row.deType === 3" class="field-class">{{
$t("dataset.value") + "(" + $t("dataset.float") + ")"
}}</span> -->
</span>
<span v-if="scope.row.deType === 5">
<svg-icon
@ -551,7 +515,6 @@
icon-class="field_location"
class="field-icon-location"
/>
<!-- <span class="field-class">{{ $t("dataset.location") }}</span> -->
</span>
</span>
</template>
@ -637,29 +600,6 @@
</span>
</template>
</el-table-column>
<!-- <el-table-column property="groupType" :label="$t('dataset.field_group_type')" width="180">-->
<!-- <template slot-scope="scope">-->
<!-- <el-radio-group v-model="scope.row.groupType" size="mini">-->
<!-- <el-radio-button label="d">{{ $t('chart.dimension') }}</el-radio-button>-->
<!-- <el-radio-button label="q">{{ $t('chart.quota') }}</el-radio-button>-->
<!-- </el-radio-group>-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column
property="groupType"
:label="$t('dataset.d_q_trans')"
width="120"
>
<template slot-scope="scope">
<el-button
icon="el-icon-sort"
size="mini"
circle
:disabled="!hasDataPermission('manage', param.privileges)"
@click="dqTrans(scope.row, 'q')"
/>
</template>
</el-table-column> -->
<el-table-column
min-width="182"
property=""
@ -734,7 +674,7 @@
<el-dialog
:visible.sync="editCalcField"
class="de-dialog-form"
class="de-dialog-form de-center-dialog"
width="980px"
:title="
currEditField.id
@ -841,11 +781,6 @@ export default {
})
},
saveEdit(item) {
// const list = this.tableFields.dimensionListData.concat(this.tableFields.quotaListData)
// batchEdit(list).then(response => {
// // this.closeEdit()
// this.initField()
// })
if (item.name && item.name.length > 50) {
this.$message.error(this.$t('dataset.field_name_less_50'))
return
@ -1153,3 +1088,14 @@ span {
border-bottom: 0 solid #e6ebf5 !important;
}
</style>
<style lang="scss">
.de-center-dialog {
.el-dialog {
margin: 0 !important;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
}
</style>

View File

@ -185,15 +185,6 @@
</grid-table>
</div>
<!-- <el-row>
<el-button v-if="hasDataPermission('manage',param.privileges) && enableUpdate" icon="el-icon-setting" size="mini" @click="showConfig">
{{ $t('dataset.update_setting') }}
</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="refreshLog">
{{ $t('commons.refresh') }}
</el-button>
</el-row> -->
<el-dialog
v-dialogDrag
:title="$t('dataset.detail')"
@ -305,7 +296,7 @@
</el-form-item>
<div class="add-scope-cont" v-if="taskForm.type === 'add_scope'">
<el-form-item
prop="incrementalUpdateType"
prop="type"
:label="$t('dataset.incremental_update_type')"
>
<el-radio-group
@ -451,13 +442,11 @@
</el-form-item>
</div>
</el-form>
<div class="de-foot-layout">
<!-- <div class="cont">
<deBtn secondary @click="closeTask">{{ $t("dataset.cancel") }}</deBtn>
<deBtn type="primary" @click="saveTask(taskForm)">{{
$t("dataset.confirm")
}}</deBtn>
</div> -->
<div class="de-foot">
<deBtn secondary @click="closeTask">{{ $t('dataset.cancel') }}</deBtn>
<deBtn type="primary" @click="saveTask(taskForm)">{{
$t('dataset.confirm')
}}</deBtn>
</div>
</el-drawer>
</el-col>
@ -707,11 +696,7 @@ export default {
showConfig() {
this.userDrawer = true
this.listTaskLog()
// this.getIncrementalConfig()
},
// refreshLog() {
// this.listTaskLog();
// },
showErrorMassage(massage) {
this.show_error_massage = true
this.error_massage = massage
@ -857,47 +842,6 @@ export default {
this.initSearch(false)
})
},
// getIncrementalConfig() {
// post("/dataset/table/incrementalConfig", { tableId: this.table.id }).then(
// (response) => {
// this.incrementalConfig = response.data;
// if (
// this.incrementalConfig.incrementalAdd.length === 0 &&
// this.incrementalConfig.incrementalDelete.length === 0
// ) {
// this.incrementalUpdateType = "incrementalAdd";
// this.sql = "";
// return;
// }
// if (this.incrementalConfig.incrementalAdd.length > 0) {
// this.incrementalUpdateType = "incrementalAdd";
// this.sql = this.incrementalConfig.incrementalAdd;
// } else {
// this.incrementalUpdateType = "incrementalDelete";
// this.sql = this.incrementalConfig.incrementalDelete;
// }
// }
// );
// },
// saveIncrementalConfig() {
// if (this.incrementalUpdateType === "incrementalAdd") {
// this.incrementalConfig.incrementalAdd = this.sql;
// } else {
// this.incrementalConfig.incrementalDelete = this.sql;
// }
// this.incrementalConfig.tableId = this.table.id;
// post(
// "/dataset/table/save/incrementalConfig",
// this.incrementalConfig
// ).then((response) => {
// this.$message({
// message: this.$t("dataset.save_success"),
// type: "success",
// showClose: true,
// });
// this.update_setting = false;
// });
// },
saveTask(task) {
this.$refs.taskForm.validate((valid) => {
if (valid) {
@ -1203,7 +1147,7 @@ export default {
.codemirror-cont {
box-sizing: border-box;
width: 560px;
width: 100%;
height: 200px;
background: #ffffff;
border: 1px solid #bbbfc4;

View File

@ -102,8 +102,7 @@
<el-tab-pane
v-if="
table.mode === 1 &&
(table.type === 'excel' ||
table.type === 'db' ||
(table.type === 'db' ||
table.type === 'sql' ||
table.type === 'api')
"

View File

@ -173,6 +173,13 @@ export default {
trigger: 'change'
},
{ required: true, trigger: 'blur', validator: this.nameValidator }
],
id: [
{
required: true,
message: this.$t('fu.search_bar.please_select'),
trigger: 'blur'
},
]
}
}
@ -204,7 +211,7 @@ export default {
},
methods: {
back() {
this.$router.back()
this.$router.push('/dataset/index')
},
nameBlur() {
this.nameExsitValidator()
@ -340,7 +347,7 @@ export default {
switchComponent(c) {
let type = ''
if (['db', 'excel', 'api'].includes(c)) {
this.datasetFormRules = {}
this.$delete(this.datasetFormRules, 'name')
}
switch (c) {
case 'db':

View File

@ -113,7 +113,6 @@
class="child"
>
<span v-if="data.modelInnerType === 'group'" @click.stop>
<!-- <el-dropdown trigger="click" size="small" @command="clickAdd"> -->
<el-dropdown
size="small"
placement="bottom-start"
@ -528,6 +527,9 @@ export default {
this.$refs.datasetTreeRef.filter(this.filterText)
}
},
activated() {
this.nodeClick(this.$refs.datasetTreeRef.getCurrentNode())
},
created() {
this.kettleState()
engineMode().then((res) => {

View File

@ -5,16 +5,15 @@
<de-aside-container type="dataset">
<group :save-status="saveStatus" @switchComponent="switchComponent" />
</de-aside-container>
<de-main-container>
<component
:is="component"
ref="dynamic_component"
:param="param"
@switchComponent="switchComponent"
@saveSuccess="saveSuccess"
/>
</de-main-container>
<de-main-container>
<component
:is="component"
ref="dynamic_component"
:param="param"
@switchComponent="switchComponent"
@saveSuccess="saveSuccess"
/>
</de-main-container>
</de-container>
</template>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,214 +1,164 @@
<template>
<div class="ds-table de-serach-table">
<el-row class="top-operate">
<el-col :span="10">
<span class="table-name">{{ params.name }}</span>
</el-col>
<el-col :span="14" class="right-user">
<el-input
:placeholder="$t('system_parameter_setting.search_keywords')"
prefix-icon="el-icon-search"
class="name-email-search"
size="small"
clearable
ref="search"
v-model="nikeName"
@blur="initSearch"
@clear="initSearch"
>
</el-input>
</el-col>
</el-row>
<div class="table-container">
<grid-table
v-loading="loading"
:tableData="tableData"
:columns="[]"
:pagination="paginationConfig"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
>
<el-table-column
key="name"
prop="name"
:label="$t('datasource.table_name')"
/>
<el-table-column
slot="__operation"
:label="$t('commons.operating')"
key="__operation"
fixed="right"
width="168"
>
<template slot-scope="scope">
<el-button
@click="createtDataset(scope.row)"
class="text-btn mar3 mar6"
type="text"
>{{ $t("datasource.create_dataset") }}</el-button
>
<el-button
@click="selectDataset(scope.row)"
class="text-btn"
type="text"
>{{ $t("dataset.detail") }}</el-button
>
</template>
</el-table-column>
</grid-table>
<div
class="de-ds-container"
:class="[{ 'is-driver-mgm': currentMgm === 'driverMgm' }]"
v-loading="$store.getters.loadingMap[$store.getters.currentPath]"
>
<div v-if="currentMgm === 'driverMgm'" class="dsr-route-title">
<div>
<i class="el-icon-arrow-left back-button" @click="jump" />
<span>{{ $t('driver.mgm') }}</span>
</div>
<deBtn type="primary" @click="addDriver" icon="el-icon-plus"
>{{ $t("driver.add") }}
</deBtn>
</div>
<el-drawer
:title="$t('dataset.detail')"
:visible.sync="userDrawer"
custom-class="user-drawer-task ds-table-drawer"
size="840px"
v-closePress
direction="rtl"
<de-aside-container
style="padding: 0 0"
type="datasource"
>
<el-row style="margin-top: 12px" :gutter="24">
<el-col :span="12">
<p class="table-name">
{{ $t("datasource.table_name") }}
</p>
<p class="table-value">
{{ dsTableDetail.name }}
</p>
</el-col>
<el-col :span="12">
<p class="table-name">
{{ $t("datasource.table_description") }}
</p>
<p class="table-value">
{{ dsTableDetail.remark || "-" }}
</p>
</el-col>
</el-row>
<el-table
:data="dsTableData"
stripe
style="width: 100%">
<el-table-column
prop="date"
:label="$t('panel.column_name')">
</el-table-column>
<el-table-column
prop="name"
:label="$t('dataset.field_type')">
</el-table-column>
<el-table-column
prop="name"
:label="$t('datasource.field_description')">
</el-table-column>
</el-table>
</el-drawer>
<ds-tree
@switch-mgm="switchMgm"
ref="dsTree"
:datasource="datasource"
@switch-main="switchMain"
/>
</de-aside-container>
<de-main-container
>
<component
:is="component"
v-if="!!component"
:params="param"
:t-data="tData"
:ds-types="dsTypes"
@refresh-type="refreshType"
@switch-component="switchMain"
/>
<el-empty v-else :image-size="125" :description="$t(`datasource.${swTips}`)" :image="image"></el-empty>
</de-main-container>
</div>
</template>
<script>
import keyEnter from "@/components/msgCfm/keyEnter.js";
import GridTable from "@/components/gridTable/index.vue";
import { dsTable } from "@/api/dataset/dataset";
import DeMainContainer from "@/components/dataease/DeMainContainer";
import DeAsideContainer from "@/components/dataease/DeAsideContainer";
import DsTree from "./DsTree";
import DsForm from "./DsForm";
import dsTable from "./dsTable";
import DriverForm from "./DriverFormDetail";
export default {
mixins: [keyEnter],
components: { GridTable },
props: {
params: {
type: Object,
default: () => {},
},
},
name: "DsMain",
components: { DeMainContainer, DeAsideContainer, DsTree },
data() {
return {
userDrawer: false,
dsTableDetail: {},
nikeName: "",
loading: false,
paginationConfig: {
currentPage: 1,
pageSize: 10,
total: 0,
},
dsTableData: [{date: 1}],
tableData: [{ name: 1 }],
image: require('@/assets/None_Select_ds.png'),
component: '',
datasource: {},
param: null,
tData: null,
currentMgm: "dsMgm",
dsTypes: [],
};
},
created() {
// this.initSearch();
computed: {
swTips() {
return this.currentMgm === 'driverMgm' ? 'on_the_left' : 'on_the_left';
}
},
methods: {
createtDataset(row) {},
selectDataset(row) {
this.dsTableDetail = row;
this.userDrawer = true;
jump() {
this.$refs.dsTree.dsMgm();
this.switchMgm('dsMgm');
},
handleSizeChange(pageSize) {
this.paginationConfig.currentPage = 1;
this.paginationConfig.pageSize = pageSize;
this.search();
switchMgm(type) {
this.currentMgm = type;
},
handleCurrentChange(currentPage) {
this.paginationConfig.currentPage = currentPage;
this.search();
addDriver() {
this.$refs.dsTree.addDriver();
},
initSearch() {
this.handleCurrentChange(1);
},
search() {
this.loading = true;
const param = {
conditions: [],
};
if (this.nikeName) {
param.conditions.push({
field: `dataset_table_task.name`,
operator: "like",
value: this.nikeName,
});
}
const { currentPage, pageSize } = this.paginationConfig;
dsTable(currentPage, pageSize, this.params.id).then((response) => {
this.tableData = response.data.listObject;
this.paginationConfig.total = response.data.itemCount;
this.loading = false;
// main
switchMain(param) {
const { component, componentParam, tData, dsTypes } = param;
this.component = '';
this.param = null;
this.$nextTick(() => {
switch (component) {
case "DsForm":
this.component = DsForm;
this.param = componentParam;
this.tData = tData;
this.dsTypes = dsTypes;
break;
case "DriverForm":
this.component = DriverForm;
this.param = componentParam;
this.tData = tData;
this.dsTypes = dsTypes;
break;
case "dsTable":
this.component = dsTable;
this.param = componentParam;
break;
default:
this.component = '';
this.param = null;
break;
}
});
},
refreshType(datasource) {
this.datasource = datasource;
this.$refs.dsTree && this.$refs.dsTree.refreshType(datasource);
},
msg2Current(sourceParam) {
this.$refs.dsTree && this.$refs.dsTree.markInvalid(sourceParam);
},
},
};
</script>
<style lang="scss">
.ds-table-drawer {
.table-value,
.table-name {
font-family: PingFang SC;
font-size: 14px;
font-weight: 400;
margin: 0;
}
.table-name {
color: var(--deTextSecondary, #646a73);
}
.table-value {
margin: 4px 0 24px 0;
color: var(--deTextPrimary, #1f2329);
<style scoped lang="scss">
.de-ds-container {
height: 100%;
// height: calc(100vh - 56px);
width: 100%;
overflow: hidden;
flex-wrap: wrap;
display: flex;
box-sizing: border-box;
.el-empty {
height: 100%;
}
}
.ds-table {
height: 100%;
padding: 10px 14px;
box-sizing: border-box;
.table-name {
font-family: PingFang SC;
font-size: 16px;
font-weight: 500;
line-height: 24px;
color: var(--deTextPrimary, #1f2329);
.ms-aside-container {
height: calc(100vh - 56px);
padding: 0px;
min-width: 260px;
max-width: 460px;
}
.dsr-route-title {
width: 100%;
margin: -2px 0 22px 0;
display: flex;
justify-content: space-between;
align-content: center;
}
.is-driver-mgm {
background-color: var(--MainBG, #f5f6f7);
padding: 24px;
.ms-aside-container,
.ms-main-container {
height: calc(100vh - 170px);
background-color: var(--ContentBG, #ffffff);
.tree-style {
padding-top: 24px;
}
}
.table-container {
height: calc(100% - 50px);
}
.el-table__fixed-right::before {
background: transparent;
.ms-main-container {
flex: 1;
position: relative;
padding: 24px 0 70px 24px;
}
}
</style>

View File

@ -405,7 +405,6 @@ export default {
}
if (!(element.type in types)) {
types[element.type] = [];
// newArr.push(...element, ...{ children: types[element.type] })
newArr.push({
id: element.type,
name: element.typeDesc,
@ -414,7 +413,6 @@ export default {
});
}
types[element.type].push(element);
// newArr.children.push({ id: element.id, label: element.name })
}
return newArr;
},
@ -448,8 +446,8 @@ export default {
},
addDb({ type }) {
this.$router.push({
name: "datasource-form",
params: { type },
path: "/ds-form",
query: { type },
});
},
addFolderWithType(data) {
@ -459,8 +457,8 @@ export default {
this.editDriver = true;
} else {
this.$router.push({
name: "datasource-form",
params: { type: data.id },
path: "/ds-form",
query: { type: data.id },
});
}
},
@ -546,10 +544,13 @@ export default {
},
switchMain(component, componentParam, tData, dsTypes) {
if (component === "DsForm") {
const { id, type, showModel } = componentParam;
this.$router.push({
name: "datasource-form",
params: {
...componentParam,
path: "/ds-form",
query: {
id,
type,
showModel,
msgNodeId: this.msgNodeId,
},
});

View File

@ -200,6 +200,7 @@ export default {
this.selectDatasets = [];
this.datasetCahe = [];
this.selectDatasetsCahe = [];
this.$refs.datasetTreeRef.filter();
this.$emit("search", [], []);
},
clearOneFilter(index) {
@ -211,6 +212,9 @@ export default {
} else {
this[ele] = [];
}
if (ele === 'activeDataset') {
this.$refs.datasetTreeRef.filter();
}
});
},
statusChange(value, type) {

View File

@ -42,7 +42,7 @@
</el-form-item>
<div class="add-scope-cont" v-if="taskForm.type === 'add_scope'">
<el-form-item
prop="incrementalUpdateType"
prop="type"
:label="$t('dataset.incremental_update_type')"
>
<el-radio-group
@ -315,12 +315,6 @@ export default {
trigger: "change",
},
],
incrementalUpdateType: [
{
required: true,
trigger: "change",
},
],
},
cronEdit: false,
sqlOption: {