Merge branch 'v1.11' of github.com:dataease/dataease into v1.11
This commit is contained in:
commit
60babbf91d
@ -5,7 +5,7 @@
|
||||
<parent>
|
||||
<artifactId>dataease-server</artifactId>
|
||||
<groupId>io.dataease</groupId>
|
||||
<version>1.11.0</version>
|
||||
<version>1.11.1</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
@ -241,17 +241,17 @@
|
||||
<dependency>
|
||||
<groupId>io.dataease</groupId>
|
||||
<artifactId>dataease-plugin-interface</artifactId>
|
||||
<version>1.11.0</version>
|
||||
<version>1.11.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.dataease</groupId>
|
||||
<artifactId>dataease-plugin-view</artifactId>
|
||||
<version>1.11.0</version>
|
||||
<version>1.11.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.dataease</groupId>
|
||||
<artifactId>dataease-plugin-datasource</artifactId>
|
||||
<version>1.11.0</version>
|
||||
<version>1.11.1</version>
|
||||
</dependency>
|
||||
|
||||
|
||||
|
||||
@ -0,0 +1,11 @@
|
||||
package io.dataease.commons.model;
|
||||
|
||||
import io.dataease.plugins.common.base.domain.Datasource;
|
||||
import io.dataease.plugins.view.entity.PluginViewSet;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class PluginViewSetImpl extends PluginViewSet {
|
||||
|
||||
private Datasource ds;
|
||||
}
|
||||
@ -5,6 +5,7 @@ import com.google.gson.Gson;
|
||||
import com.google.gson.reflect.TypeToken;
|
||||
import io.dataease.auth.entity.SysUserEntity;
|
||||
import io.dataease.auth.service.AuthUserService;
|
||||
import io.dataease.commons.model.PluginViewSetImpl;
|
||||
import io.dataease.ext.*;
|
||||
import io.dataease.commons.constants.CommonConstants;
|
||||
import io.dataease.commons.constants.JdbcConstants;
|
||||
@ -1094,9 +1095,10 @@ public class ChartViewService {
|
||||
|
||||
private PluginViewParam buildPluginParam(Map<String, List<ChartViewFieldDTO>> fieldMap, List<ChartFieldCustomFilterDTO> customFilters, List<ChartExtFilterRequest> extFilters, Datasource ds, DatasetTable table, ChartViewDTO view) {
|
||||
PluginViewParam pluginViewParam = new PluginViewParam();
|
||||
PluginViewSet pluginViewSet = BeanUtils.copyBean(new PluginViewSet(), table);
|
||||
PluginViewSetImpl pluginViewSet = BeanUtils.copyBean(new PluginViewSetImpl(), table);
|
||||
pluginViewSet.setDsType(ds.getType());
|
||||
pluginViewSet.setTabelId(table.getId());
|
||||
pluginViewSet.setDs(ds);
|
||||
PluginViewLimit pluginViewLimit = BeanUtils.copyBean(new PluginViewLimit(), view);
|
||||
|
||||
|
||||
|
||||
@ -2,6 +2,7 @@ package io.dataease.service.chart;
|
||||
|
||||
import cn.hutool.core.util.ReflectUtil;
|
||||
import com.google.gson.Gson;
|
||||
import io.dataease.commons.model.PluginViewSetImpl;
|
||||
import io.dataease.dto.dataset.DataSetTableUnionDTO;
|
||||
import io.dataease.dto.dataset.DataTableInfoDTO;
|
||||
import io.dataease.plugins.common.base.domain.ChartViewWithBLOBs;
|
||||
@ -128,6 +129,19 @@ public class ViewPluginBaseServiceImpl implements ViewPluginBaseService {
|
||||
String tabelName = (tableName.startsWith("(") && tableName.endsWith(")")) ? tableName : String.format(keyword, tableName);
|
||||
String tabelAlias = String.format(TABLE_ALIAS_PREFIX, 0);
|
||||
PluginViewSQL tableObj = PluginViewSQL.builder().tableName(tabelName).tableAlias(tabelAlias).build();
|
||||
|
||||
|
||||
QueryProvider queryProvider = ProviderFactory.getQueryProvider(pluginViewSet.getDsType());
|
||||
|
||||
SQLObj sqlObj = SQLObj.builder().tableName(tabelName).tableAlias(tabelAlias).build();
|
||||
PluginViewSetImpl child = (PluginViewSetImpl)pluginViewSet;
|
||||
queryProvider.setSchema(sqlObj, child.getDs());
|
||||
// String methodName = "setSchema";
|
||||
// execProviderMethod(queryProvider, methodName, sqlObj, child.getDs());
|
||||
tableObj.setTableName(sqlObj.getTableName());
|
||||
tableObj.setTableAlias(sqlObj.getTableAlias());
|
||||
|
||||
|
||||
return tableObj;
|
||||
}
|
||||
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package io.dataease.service.dataset;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.JsonElement;
|
||||
import com.google.gson.JsonObject;
|
||||
import com.google.gson.JsonParser;
|
||||
import io.dataease.auth.annotation.DeCleaner;
|
||||
@ -585,9 +586,9 @@ public class DataSetTableService {
|
||||
} else {
|
||||
// check doris table
|
||||
if (!checkEngineTableIsExists(dataSetTableRequest.getId())) {
|
||||
if(dataSetTableRequest.isPreviewForTask()){
|
||||
if (dataSetTableRequest.isPreviewForTask()) {
|
||||
return map;
|
||||
}else {
|
||||
} else {
|
||||
throw new RuntimeException(Translator.get("i18n_data_not_sync"));
|
||||
}
|
||||
}
|
||||
@ -1346,7 +1347,11 @@ public class DataSetTableService {
|
||||
|
||||
String configuration = ds.getConfiguration();
|
||||
JsonObject jsonObject = JsonParser.parseString(configuration).getAsJsonObject();
|
||||
String schema = jsonObject.get("schema").getAsString();
|
||||
JsonElement schemaJson = jsonObject.get("schema");
|
||||
String schema = null;
|
||||
if (schemaJson != null) {
|
||||
schema = schemaJson.getAsString();
|
||||
}
|
||||
String joinPrefix = "";
|
||||
if (StringUtils.isNotEmpty(schema) && (StringUtils.equalsIgnoreCase(ds.getType(), DatasourceTypes.db2.getType()) ||
|
||||
StringUtils.equalsIgnoreCase(ds.getType(), DatasourceTypes.sqlServer.getType()) ||
|
||||
@ -1907,7 +1912,7 @@ public class DataSetTableService {
|
||||
|
||||
List<String> oldFields = datasetTableFields.stream().map(DatasetTableField::getOriginName).collect(Collectors.toList());
|
||||
|
||||
if(editType == 1){
|
||||
if (editType == 1) {
|
||||
for (ExcelSheetData excelSheetData : excelSheetDataList) {
|
||||
List<TableField> tableFields = excelSheetData.getFields();
|
||||
List<String> newFields = tableFields.stream().map(TableField::getRemarks).collect(Collectors.toList());
|
||||
@ -1918,7 +1923,7 @@ public class DataSetTableService {
|
||||
if (retrunSheetDataList.size() == 0) {
|
||||
DataEaseException.throwException(Translator.get("i18n_excel_column_change"));
|
||||
}
|
||||
}else {
|
||||
} else {
|
||||
List<DatasetTableField> extFields = fields.stream().filter(datasetTableField -> datasetTableField.getExtField() > 0).collect(Collectors.toList());
|
||||
List<String> extFieldsRefIds = new ArrayList<>();
|
||||
for (DatasetTableField extField : extFields) {
|
||||
@ -1928,7 +1933,7 @@ public class DataSetTableService {
|
||||
Matcher matcher = pattern.matcher(originField);
|
||||
while (matcher.find()) {
|
||||
String id = matcher.group(1);
|
||||
if(!extFieldsRefIds.contains(id)){
|
||||
if (!extFieldsRefIds.contains(id)) {
|
||||
extFieldsRefIds.add(id);
|
||||
}
|
||||
}
|
||||
@ -1939,12 +1944,12 @@ public class DataSetTableService {
|
||||
List<String> newFields = tableFields.stream().map(TableField::getRemarks).collect(Collectors.toList());
|
||||
if (oldFields.equals(newFields)) {
|
||||
excelSheetData.setChangeFiled(false);
|
||||
}else {
|
||||
} else {
|
||||
excelSheetData.setChangeFiled(true);
|
||||
}
|
||||
boolean effectExtField = false;
|
||||
for (String extFieldsRefName : extFieldsRefNames) {
|
||||
if(!newFields.contains(extFieldsRefName)){
|
||||
if (!newFields.contains(extFieldsRefName)) {
|
||||
effectExtField = true;
|
||||
}
|
||||
}
|
||||
@ -1956,7 +1961,7 @@ public class DataSetTableService {
|
||||
DataEaseException.throwException(Translator.get("i18n_excel_column_change"));
|
||||
}
|
||||
}
|
||||
}else {
|
||||
} else {
|
||||
retrunSheetDataList = excelSheetDataList;
|
||||
}
|
||||
retrunSheetDataList = retrunSheetDataList.stream()
|
||||
@ -2374,7 +2379,7 @@ public class DataSetTableService {
|
||||
return datasetTable;
|
||||
}
|
||||
|
||||
public int updateByExampleSelective(DatasetTable record, DatasetTableExample example ){
|
||||
public int updateByExampleSelective(DatasetTable record, DatasetTableExample example) {
|
||||
return datasetTableMapper.updateByExampleSelective(record, example);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "dataease",
|
||||
"version": "1.11.0",
|
||||
"version": "1.11.1",
|
||||
"description": "dataease front",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
<parent>
|
||||
<artifactId>dataease-server</artifactId>
|
||||
<groupId>io.dataease</groupId>
|
||||
<version>1.11.0</version>
|
||||
<version>1.11.1</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
@ -28,7 +28,7 @@
|
||||
<span style="float: left">
|
||||
<svg-icon v-if="item.deType === 0" icon-class="field_text" class="field-icon-text" />
|
||||
<svg-icon v-if="item.deType === 1" icon-class="field_time" class="field-icon-time" />
|
||||
<svg-icon v-if="item.deType === 2 || item.value === 3" icon-class="field_value" class="field-icon-value" />
|
||||
<svg-icon v-if="item.deType === 2 || item.deType === 3" icon-class="field_value" class="field-icon-value" />
|
||||
<svg-icon v-if="item.deType === 5" icon-class="field_location" class="field-icon-location" />
|
||||
</span>
|
||||
<span style="float: left; color: #8492a6; font-size: 12px">{{ item.name }}</span>
|
||||
@ -48,7 +48,7 @@
|
||||
<span style="float: left">
|
||||
<svg-icon v-if="item.deType === 0" icon-class="field_text" class="field-icon-text" />
|
||||
<svg-icon v-if="item.deType === 1" icon-class="field_time" class="field-icon-time" />
|
||||
<svg-icon v-if="item.deType === 2 || item.value === 3" icon-class="field_value" class="field-icon-value" />
|
||||
<svg-icon v-if="item.deType === 2 || item.deType === 3" icon-class="field_value" class="field-icon-value" />
|
||||
<svg-icon v-if="item.deType === 5" icon-class="field_location" class="field-icon-location" />
|
||||
</span>
|
||||
<span style="float: left; color: #8492a6; font-size: 12px">{{ item.name }}</span>
|
||||
|
||||
@ -333,13 +333,17 @@ export default {
|
||||
this.styleChange()
|
||||
}
|
||||
})
|
||||
this.otherComponentDialogVisible = false
|
||||
return
|
||||
}
|
||||
this.otherComponentDialogVisible = false
|
||||
this.$warning(this.$t('detabs.please') + this.$t('detabs.selectOthers'))
|
||||
|
||||
},
|
||||
sureViewSelector() {
|
||||
const nodes = this.$refs.viewSelect.getCurrentSelected()
|
||||
if (!nodes || nodes.length === 0) {
|
||||
this.viewDialogVisible = false
|
||||
this.$warning(this.$t('detabs.please') + this.$t('detabs.selectview'))
|
||||
|
||||
return
|
||||
}
|
||||
const node = nodes[0]
|
||||
|
||||
@ -416,7 +416,8 @@ export default {
|
||||
eidttitle: 'Edit Title',
|
||||
selectview: 'Select View',
|
||||
selectOthers: 'Select Others',
|
||||
availableComponents: 'Available Components'
|
||||
availableComponents: 'Available Components',
|
||||
please: 'Please'
|
||||
},
|
||||
example: {
|
||||
warning: 'Creating and editing pages cannot be cached by keep-alive because keep-alive include does not currently support caching based on routes, so it is currently cached based on component name. If you want to achieve a similar caching effect, you can use a browser caching scheme such as localStorage. Or do not use keep-alive include to cache all pages directly. See details'
|
||||
|
||||
@ -416,7 +416,8 @@ export default {
|
||||
eidttitle: '編輯標題',
|
||||
selectview: '選擇視圖',
|
||||
selectOthers: '選擇組件',
|
||||
availableComponents: '可選組件'
|
||||
availableComponents: '可選組件',
|
||||
please: '未'
|
||||
},
|
||||
example: {
|
||||
warning: '創建和編輯頁面是不能被 keep-alive 緩存的,因爲keep-alive 的 include 目前不支持根據路由來緩存,所以目前都是基於 component name 來進行緩存的。如果妳想類似的實現緩存效果,可以使用 localStorage 等瀏覽器緩存方案。或者不要使用 keep-alive 的 include,直接緩存所有頁面。詳情見'
|
||||
|
||||
@ -417,7 +417,8 @@ export default {
|
||||
eidttitle: '编辑标题',
|
||||
selectview: '选择视图',
|
||||
selectOthers: '选择组件',
|
||||
availableComponents: '可选组件'
|
||||
availableComponents: '可选组件',
|
||||
please: '未'
|
||||
},
|
||||
example: {
|
||||
warning: '创建和编辑页面是不能被 keep-alive 缓存的,因为keep-alive 的 include 目前不支持根据路由来缓存,所以目前都是基于 component name 来进行缓存的。如果你想类似的实现缓存效果,可以使用 localStorage 等浏览器缓存方案。或者不要使用 keep-alive 的 include,直接缓存所有页面。详情见'
|
||||
|
||||
@ -61,6 +61,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
]
|
||||
@ -101,6 +102,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
]
|
||||
@ -144,6 +146,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
]
|
||||
@ -176,6 +179,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
]
|
||||
@ -208,6 +212,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
]
|
||||
@ -246,6 +251,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
]
|
||||
@ -352,6 +358,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
],
|
||||
@ -426,6 +433,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
],
|
||||
@ -500,6 +508,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
],
|
||||
@ -573,6 +582,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
],
|
||||
@ -639,6 +649,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
]
|
||||
@ -705,6 +716,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
],
|
||||
@ -778,6 +790,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
],
|
||||
@ -830,6 +843,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
],
|
||||
@ -882,6 +896,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
],
|
||||
@ -935,6 +950,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
],
|
||||
@ -985,6 +1001,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
],
|
||||
@ -1022,6 +1039,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
]
|
||||
@ -1088,6 +1106,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
],
|
||||
@ -1135,6 +1154,7 @@ export const TYPE_CONFIGS = [
|
||||
'title',
|
||||
'fontSize',
|
||||
'color',
|
||||
'hPosition',
|
||||
'isItalic',
|
||||
'isBolder'
|
||||
],
|
||||
|
||||
@ -118,7 +118,7 @@
|
||||
<span style="float: left">
|
||||
<svg-icon v-if="viewField.deType === 0" icon-class="field_text" class="field-icon-text" />
|
||||
<svg-icon v-if="viewField.deType === 1" icon-class="field_time" class="field-icon-time" />
|
||||
<svg-icon v-if="viewField.deType === 2 || viewField.value === 3" icon-class="field_value" class="field-icon-value" />
|
||||
<svg-icon v-if="viewField.deType === 2 || viewField.deType === 3" icon-class="field_value" class="field-icon-value" />
|
||||
<svg-icon v-if="viewField.deType === 5" icon-class="field_location" class="field-icon-location" />
|
||||
</span>
|
||||
<span style="float: left;font-size: 12px">{{ viewField.name }}</span>
|
||||
|
||||
@ -110,7 +110,7 @@
|
||||
<svg-icon v-if="viewField.deType === 0" icon-class="field_text" class="field-icon-text" />
|
||||
<svg-icon v-if="viewField.deType === 1" icon-class="field_time" class="field-icon-time" />
|
||||
<svg-icon
|
||||
v-if="viewField.deType === 2 || viewField.value === 3"
|
||||
v-if="viewField.deType === 2 || viewField.deType === 3"
|
||||
icon-class="field_value"
|
||||
class="field-icon-value"
|
||||
/>
|
||||
|
||||
@ -147,7 +147,7 @@ export default {
|
||||
}
|
||||
this.editPanel.panelInfo['newFrom'] = this.inputType
|
||||
this.loading = true
|
||||
if (this.editPanel.optType === 'new') {
|
||||
if (this.editPanel.optType === 'new' || this.editPanel.optType === 'newFirstFolder') {
|
||||
panelSave(this.editPanel.panelInfo).then(response => {
|
||||
this.$message({
|
||||
message: this.$t('commons.save_success'),
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "dataease-mobile",
|
||||
"version": "0.1.0",
|
||||
"version": "1.11.1",
|
||||
"private": true,
|
||||
"scripts": {
|
||||
"serve": "npm run dev:h5",
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
<parent>
|
||||
<artifactId>dataease-server</artifactId>
|
||||
<groupId>io.dataease</groupId>
|
||||
<version>1.11.0</version>
|
||||
<version>1.11.1</version>
|
||||
</parent>
|
||||
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user