提交 a680a181 authored 作者: taojinlong's avatar taojinlong

Merge branch 'dev' of github.com:dataease/dataease into dev

......@@ -976,7 +976,16 @@ export default {
right_join: 'RIGHT JOIN',
inner_join: 'INNER JOIN',
full_join: 'FULL JOIN',
can_not_union_diff_datasource: 'Union dataset must have same data source'
can_not_union_diff_datasource: 'Union dataset must have same data source',
operator: 'Operator',
d_q_trans: 'Dimension/Quota Transform',
add_calc_field: 'Create calc field',
input_name: 'Please input name',
field_exp: 'Field Expression',
data_type: 'Data Type',
click_ref_field: 'Click Quote Field',
click_ref_function: 'Click Quote Function',
field_manage: 'Field Manage'
},
datasource: {
datasource: 'Data Source',
......
......@@ -976,7 +976,16 @@ export default {
right_join: '右連接',
inner_join: '內連接',
full_join: '全連接',
can_not_union_diff_datasource: '被關聯數據集必須與當前數據集的數據源一致'
can_not_union_diff_datasource: '被關聯數據集必須與當前數據集的數據源一致',
operator: '操作',
d_q_trans: '維度/指標轉換',
add_calc_field: '新建计算字段',
input_name: '請輸入名稱',
field_exp: '字段表達式',
data_type: '數據類型',
click_ref_field: '點擊引用字段',
click_ref_function: '點擊引用函數',
field_manage: '字段管理'
},
datasource: {
datasource: '數據源',
......
......@@ -976,7 +976,16 @@ export default {
right_join: '右连接',
inner_join: '内连接',
full_join: '全连接',
can_not_union_diff_datasource: '被关联数据集必须与当前数据集的数据源一致'
can_not_union_diff_datasource: '被关联数据集必须与当前数据集的数据源一致',
operator: '操作',
d_q_trans: '维度/指标转换',
add_calc_field: '新建计算字段',
input_name: '请输入名称',
field_exp: '字段表达式',
data_type: '数据类型',
click_ref_field: '点击引用字段',
click_ref_function: '点击引用函数',
field_manage: '字段管理'
},
datasource: {
datasource: '数据源',
......
......@@ -514,7 +514,7 @@
:destroy-on-close="true"
:fullscreen="true"
>
<field-edit :param="{table:table}" @switchComponent="closeEditDsField" />
<field-edit :param="table" @switchComponent="closeEditDsField" />
</el-dialog>
</el-row>
</template>
......
......@@ -34,9 +34,9 @@
<el-button v-if="table.type ==='sql'" size="mini" @click="editSql">
{{ $t('dataset.edit_sql') }}
</el-button>
<el-button size="mini" @click="edit">
{{ $t('dataset.edit_field') }}
</el-button>
<!-- <el-button size="mini" @click="edit">-->
<!-- {{ $t('dataset.edit_field') }}-->
<!-- </el-button>-->
<!-- <el-button size="mini" type="primary" @click="createChart">-->
<!-- {{$t('dataset.create_view')}}-->
<!-- </el-button>-->
......@@ -44,10 +44,13 @@
</el-row>
<el-divider />
<el-tabs v-model="tabActive">
<el-tabs v-model="tabActive" @tab-click="initTable(param.id)">
<el-tab-pane :label="$t('dataset.data_preview')" name="dataPreview">
<tab-data-preview :param="param" :table="table" :fields="fields" :data="data" :page="page" :form="tableViewRowForm" @reSearch="reSearch" />
</el-tab-pane>
<el-tab-pane :label="$t('dataset.field_manage')" name="fieldEdit">
<field-edit :param="param" />
</el-tab-pane>
<el-tab-pane v-if="table.type !== 'custom'" :label="$t('dataset.join_view')" name="joinView">
<union-view :param="param" :table="table" />
</el-tab-pane>
......@@ -64,10 +67,11 @@ import TabDataPreview from './TabDataPreview'
import UpdateInfo from './UpdateInfo'
import DatasetChartDetail from '../common/DatasetChartDetail'
import UnionView from './UnionView'
import FieldEdit from './FieldEdit'
export default {
name: 'ViewTable',
components: { UnionView, DatasetChartDetail, UpdateInfo, TabDataPreview },
components: { FieldEdit, UnionView, DatasetChartDetail, UpdateInfo, TabDataPreview },
props: {
param: {
type: Object,
......@@ -101,6 +105,7 @@ export default {
},
watch: {
'param': function() {
this.tabActive = 'dataPreview'
this.initTable(this.param.id)
}
},
......@@ -112,7 +117,6 @@ export default {
},
methods: {
initTable(id) {
this.tabActive = 'dataPreview'
this.tableViewRowForm.row = 1000
if (id !== null) {
this.fields = []
......
......@@ -543,8 +543,10 @@ export default {
this.$forceUpdate()
},
editDialog() {
if (this.curComponent && this.curComponent.serviceName) {
const serviceName = this.curComponent.serviceName
this.currentWidget = ApplicationContext.getService(serviceName)
}
this.currentFilterCom = this.curComponent
this.openFilterDialog()
},
......
......@@ -3,7 +3,7 @@
<de-container v-loading="$store.getters.loadingMap[$store.getters.currentPath]" class="de-dialog-container">
<de-aside-container :show-drag-bar="false" class="ms-aside-container">
<el-tabs v-model="activeName" class="filter-dialog-tabs">
<el-tab-pane :lazy="true" class="de-tab" :label="$t('panel.select_by_table')" name="dataset">
<el-tab-pane class="de-tab" :label="$t('panel.select_by_table')" name="dataset">
<div class="component-header filter-common">
<el-breadcrumb separator-class="el-icon-arrow-right">
<el-breadcrumb-item v-for="bread in dataSetBreads" :key="bread.label">
......@@ -56,7 +56,7 @@
@start="start1"
>
<transition-group>
<div v-for="item in fieldDatas.filter(item => !keyWord || (item.name && item.name.toLocaleLowerCase().includes(keyWord)))" :key="item.id" class="filter-db-row">
<div v-for="item in fieldDatas.filter(item => !keyWord || (item.name && item.name.toLocaleLowerCase().includes(keyWord)))" :key="item.id" :class="componentInfo && componentInfo.options.attrs.fieldId === item.id ? 'filter-db-row-checked' : 'filter-db-row'" class="filter-db-row">
<i class="el-icon-s-data" />
<span> {{ item.name }}</span>
</div>
......@@ -67,7 +67,7 @@
</el-col>
</div>
</el-tab-pane>
<el-tab-pane :lazy="true" class="de-tab" :label="$t('panel.select_by_module')" name="assembly">
<el-tab-pane class="de-tab" :label="$t('panel.select_by_module')" name="assembly">
<div class="component-header filter-common">
<el-breadcrumb separator-class="el-icon-arrow-right">
<el-breadcrumb-item v-for="bread in componentSetBreads" :key="bread.label">
......@@ -125,7 +125,7 @@
@start="start1"
>
<transition-group>
<div v-for="item in comFieldDatas.filter(item => !viewKeyWord || item.name.toLocaleLowerCase().includes(viewKeyWord))" :key="item.id" class="filter-db-row">
<div v-for="item in comFieldDatas.filter(item => !viewKeyWord || item.name.toLocaleLowerCase().includes(viewKeyWord))" :key="item.id" :class="componentInfo && componentInfo.options.attrs.fieldId === item.id ? 'filter-db-row-checked' : 'filter-db-row'" class="filter-db-row">
<i class="el-icon-s-data" />
<span> {{ item.name }}</span>
</div>
......@@ -318,7 +318,8 @@ export default {
timer: null,
expandedArray: [],
viewKeyWord: '',
titlePopovervisible: false
titlePopovervisible: false,
fieldsParent: null
}
},
computed: {
......@@ -344,15 +345,20 @@ export default {
this.componentInfo.options.attrs.datas = this.widget.optionDatas(res.data)
this.componentInfo.options.attrs.fieldId = fieldId
this.componentInfo.options.attrs.dragItems = values
this.componentInfo.options.attrs.activeName = this.activeName
this.componentInfo.options.attrs.fieldsParent = this.fieldsParent
this.$emit('re-fresh-component', this.componentInfo)
})
} else {
this.componentInfo.options.attrs.fieldId = fieldId
this.componentInfo.options.attrs.dragItems = values
this.componentInfo.options.attrs.activeName = this.activeName
this.componentInfo.options.attrs.fieldsParent = this.fieldsParent
this.$emit('re-fresh-component', this.componentInfo)
}
} else if (this.componentInfo && this.componentInfo.options.attrs.fieldId) {
this.componentInfo.options.attrs.fieldId = null
this.componentInfo.options.attrs.activeName = null
this.$emit('re-fresh-component', this.componentInfo)
}
},
......@@ -377,10 +383,23 @@ export default {
if (this.componentInfo && this.componentInfo.options.attrs.dragItems) {
this.selectField = this.componentInfo.options.attrs.dragItems
}
this.initWithField()
this.loadViews()
},
methods: {
initWithField() {
if (this.componentInfo && this.componentInfo.options.attrs.activeName) {
this.activeName = this.componentInfo.options.attrs.activeName
if (this.componentInfo.options.attrs.fieldsParent) {
this.fieldsParent = this.componentInfo.options.attrs.fieldsParent
this.$nextTick(() => {
this.activeName === 'dataset' && this.showFieldDatas(this.fieldsParent)
this.activeName !== 'dataset' && this.comShowFieldDatas(this.fieldsParent)
})
}
}
},
getTreeData(val) {
if (val) {
this.isTreeSearch = true
......@@ -559,6 +578,7 @@ export default {
this.showDomType = 'field'
this.setTailLink(row)
this.addTail(row)
this.fieldsParent = row
this.loadField(row.id)
},
comShowFieldDatas(row) {
......@@ -566,6 +586,7 @@ export default {
this.comShowDomType = 'field'
this.comSetTailLink(row)
this.comAddTail(row)
this.fieldsParent = row
this.comLoadField(row.tableId)
},
onMove(e, originalEvent) {
......@@ -760,15 +781,33 @@ export default {
color: #409EFF;
}
.filter-db-row {
:hover {
cursor: pointer;
}
i {
color: #409EFF;
color: #3685f2;
}
// background-color: #3685f2;
// color: #fff;
}
.filter-db-row:hover {
background-color: #f5f7fa !important;
cursor: pointer;
}
.filter-db-row-checked:hover {
background-color: #f5f7fa !important;
color: inherit;
cursor: pointer;
i {
background-color: inherit;
color: #3685f2;
}
}
.filter-db-row-checked {
background-color: #3685f2 !important;
color: #fff;
i {
background-color: #3685f2;
color: #fff;
}
}
.draggable-group {
display: inline-block;
width: 100%;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论