fix(数据集): 预览样式优化;分页展示fix

This commit is contained in:
junjie 2021-04-28 18:39:01 +08:00
parent 794e4651b0
commit f5b3923681
4 changed files with 62 additions and 59 deletions

View File

@ -188,6 +188,9 @@ public class DataSetTableService {
dataSetPreviewPage.setPage(page);
dataSetPreviewPage.setPageSize(pageSize);
int realSize = Integer.parseInt(dataSetTableRequest.getRow()) < pageSize ? Integer.parseInt(dataSetTableRequest.getRow()) : pageSize;
if (page == Integer.parseInt(dataSetTableRequest.getRow()) / pageSize + 1) {
realSize = Integer.parseInt(dataSetTableRequest.getRow()) % pageSize;
}
if (StringUtils.equalsIgnoreCase(datasetTable.getType(), "db")) {
Datasource ds = datasourceMapper.selectByPrimaryKey(dataSetTableRequest.getDataSourceId());
DatasourceProvider datasourceProvider = ProviderFactory.getProvider(ds.getType());

View File

@ -1,61 +1,59 @@
<template>
<el-col>
<el-row>
<el-row style="height: 26px;">
<span style="line-height: 26px;">
{{ $t('dataset.add_db_table') }}
</span>
<el-row style="float: right">
<el-button size="mini" @click="cancel">
{{ $t('dataset.cancel') }}
</el-button>
<el-button size="mini" type="primary" :disabled="checkTableList.length < 1" @click="save">
{{ $t('dataset.confirm') }}
</el-button>
</el-row>
</el-row>
<el-divider />
<el-row>
<el-form :inline="true">
<el-form-item class="form-item">
<el-select v-model="dataSource" filterable :placeholder="$t('dataset.pls_slc_data_source')" size="mini">
<el-option
v-for="item in options"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
<el-form-item class="form-item">
<el-select v-model="mode" filterable :placeholder="$t('dataset.connect_mode')" size="mini">
<el-option :label="$t('dataset.direct_connect')" value="0" />
<el-option :label="$t('dataset.sync_data')" value="1" />
</el-select>
</el-form-item>
<el-form-item class="form-item" style="float: right;">
<el-input
v-model="searchTable"
size="mini"
:placeholder="$t('dataset.search')"
prefix-icon="el-icon-search"
clearable
/>
</el-form-item>
</el-form>
</el-row>
<el-row style="overflow: auto;height: 60vh;">
<el-checkbox-group v-model="checkTableList" size="small">
<el-checkbox
v-for="t in tableData"
:key="t"
border
:label="t"
/>
</el-checkbox-group>
<el-row style="display: flex;flex-direction: column;height: 100%">
<el-row style="height: 26px;">
<span style="line-height: 26px;">
{{ $t('dataset.add_db_table') }}
</span>
<el-row style="float: right">
<el-button size="mini" @click="cancel">
{{ $t('dataset.cancel') }}
</el-button>
<el-button size="mini" type="primary" :disabled="checkTableList.length < 1" @click="save">
{{ $t('dataset.confirm') }}
</el-button>
</el-row>
</el-row>
</el-col>
<el-divider />
<el-row>
<el-form :inline="true">
<el-form-item class="form-item">
<el-select v-model="dataSource" filterable :placeholder="$t('dataset.pls_slc_data_source')" size="mini">
<el-option
v-for="item in options"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
<el-form-item class="form-item">
<el-select v-model="mode" filterable :placeholder="$t('dataset.connect_mode')" size="mini">
<el-option :label="$t('dataset.direct_connect')" value="0" />
<el-option :label="$t('dataset.sync_data')" value="1" />
</el-select>
</el-form-item>
<el-form-item class="form-item" style="float: right;">
<el-input
v-model="searchTable"
size="mini"
:placeholder="$t('dataset.search')"
prefix-icon="el-icon-search"
clearable
/>
</el-form-item>
</el-form>
</el-row>
<el-col style="overflow-y: auto;">
<el-checkbox-group v-model="checkTableList" size="small">
<el-checkbox
v-for="t in tableData"
:key="t"
border
:label="t"
/>
</el-checkbox-group>
</el-col>
</el-row>
</template>
<script>

View File

@ -128,7 +128,7 @@ export default {
}, 10)
},
reSearch() {
if (this.form.row.length > 8 || isNaN(Number(this.form.row)) || String(this.form.row).includes('.')) {
if (!this.form.row || this.form.row === '' || this.form.row.length > 8 || isNaN(Number(this.form.row)) || String(this.form.row).includes('.')) {
this.$message({
message: this.$t('dataset.pls_input_less_9'),
type: 'error',

View File

@ -40,7 +40,7 @@
</el-tabs>
<el-dialog :title="table.name" :visible.sync="editField" :fullscreen="true" :show-close="false" class="dialog-css">
<el-table :data="tableFields" size="mini" max-height="600px">
<el-table :data="tableFields" size="mini" :max-height="maxHeight">
<el-table-column property="type" :label="$t('dataset.field_type')" width="100">
<template slot-scope="scope">
<span v-if="scope.row.deType === 0">
@ -117,7 +117,8 @@ export default {
tableViewRowForm: {
row: 1000
},
tabStatus: false
tabStatus: false,
maxHeight: 'auto'
}
},
// computed: {
@ -132,6 +133,7 @@ export default {
}
},
mounted() {
this.maxHeight = (document.documentElement.clientHeight - 45 - 78) + 'px'
this.initTable(this.param)
},
methods: {
@ -228,6 +230,6 @@ export default {
padding: 10px 20px;
}
.dialog-css >>> .el-dialog__footer {
padding-top: 30px;
padding-top: 10px;
}
</style>