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

Merge branch 'v1.10' of github.com:dataease/dataease into v1.10

package io.dataease.service.dataset; package io.dataease.service.dataset;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.google.gson.Gson; import com.google.gson.Gson;
import io.dataease.auth.annotation.DeCleaner; import io.dataease.auth.annotation.DeCleaner;
import io.dataease.auth.api.dto.CurrentUserDto; import io.dataease.auth.api.dto.CurrentUserDto;
...@@ -960,6 +962,8 @@ public class DataSetTableService { ...@@ -960,6 +962,8 @@ public class DataSetTableService {
res.put("data", jsonArray); res.put("data", jsonArray);
return res; return res;
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace();
logger.error(e.getMessage());
return res; return res;
} }
} }
...@@ -1321,6 +1325,17 @@ public class DataSetTableService { ...@@ -1321,6 +1325,17 @@ public class DataSetTableService {
DatasourceTypes datasourceTypes = DatasourceTypes.valueOf(ds.getType()); DatasourceTypes datasourceTypes = DatasourceTypes.valueOf(ds.getType());
String keyword = datasourceTypes.getKeywordPrefix() + "%s" + datasourceTypes.getKeywordSuffix(); String keyword = datasourceTypes.getKeywordPrefix() + "%s" + datasourceTypes.getKeywordSuffix();
String configuration = ds.getConfiguration();
JSONObject jsonObject = JSON.parseObject(configuration);
String schema = jsonObject.getString("schema");
String joinPrefix = "";
if (StringUtils.isNotEmpty(schema) && (StringUtils.equalsIgnoreCase(ds.getType(), DatasourceTypes.db2.getType()) ||
StringUtils.equalsIgnoreCase(ds.getType(), DatasourceTypes.sqlServer.getType()) ||
StringUtils.equalsIgnoreCase(ds.getType(), DatasourceTypes.oracle.getType()) ||
StringUtils.equalsIgnoreCase(ds.getType(), DatasourceTypes.pg.getType()))) {
joinPrefix = String.format(keyword, schema) + ".";
}
List<UnionDTO> union = dataTableInfoDTO.getUnion(); List<UnionDTO> union = dataTableInfoDTO.getUnion();
// 所有选中的字段,即select后的查询字段 // 所有选中的字段,即select后的查询字段
Map<String, String[]> checkedInfo = new LinkedHashMap<>(); Map<String, String[]> checkedInfo = new LinkedHashMap<>();
...@@ -1386,7 +1401,7 @@ public class DataSetTableService { ...@@ -1386,7 +1401,7 @@ public class DataSetTableService {
String currentTableName = new Gson().fromJson(currentTable.getInfo(), DataTableInfoDTO.class) String currentTableName = new Gson().fromJson(currentTable.getInfo(), DataTableInfoDTO.class)
.getTable(); .getTable();
join.append(" ").append(joinType).append(" ").append(String.format(keyword, currentTableName)) join.append(" ").append(joinType).append(" ").append(joinPrefix).append(String.format(keyword, currentTableName))
.append(" ON "); .append(" ON ");
for (int i = 0; i < unionParamDTO.getUnionFields().size(); i++) { for (int i = 0; i < unionParamDTO.getUnionFields().size(); i++) {
UnionItemDTO unionItemDTO = unionParamDTO.getUnionFields().get(i); UnionItemDTO unionItemDTO = unionParamDTO.getUnionFields().get(i);
...@@ -1409,13 +1424,13 @@ public class DataSetTableService { ...@@ -1409,13 +1424,13 @@ public class DataSetTableService {
if (StringUtils.isEmpty(f)) { if (StringUtils.isEmpty(f)) {
DEException.throwException(Translator.get("i18n_union_ds_no_checked")); DEException.throwException(Translator.get("i18n_union_ds_no_checked"));
} }
sql = MessageFormat.format("SELECT {0} FROM {1}", f, String.format(keyword, tableName)) + join.toString(); sql = MessageFormat.format("SELECT {0} FROM {1}", f, joinPrefix + String.format(keyword, tableName)) + join.toString();
} else { } else {
String f = StringUtils.join(checkedInfo.get(tableName), ","); String f = StringUtils.join(checkedInfo.get(tableName), ",");
if (StringUtils.isEmpty(f)) { if (StringUtils.isEmpty(f)) {
throw new RuntimeException(Translator.get("i18n_union_ds_no_checked")); throw new RuntimeException(Translator.get("i18n_union_ds_no_checked"));
} }
sql = MessageFormat.format("SELECT {0} FROM {1}", f, String.format(keyword, tableName)); sql = MessageFormat.format("SELECT {0} FROM {1}", f, joinPrefix + String.format(keyword, tableName));
} }
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
map.put("sql", sql); map.put("sql", sql);
...@@ -1494,6 +1509,9 @@ public class DataSetTableService { ...@@ -1494,6 +1509,9 @@ public class DataSetTableService {
public void saveTableField(DatasetTable datasetTable) throws Exception { public void saveTableField(DatasetTable datasetTable) throws Exception {
Datasource ds = datasourceMapper.selectByPrimaryKey(datasetTable.getDataSourceId()); Datasource ds = datasourceMapper.selectByPrimaryKey(datasetTable.getDataSourceId());
if (ObjectUtils.isEmpty(ds)) {
throw new RuntimeException(Translator.get("i18n_datasource_delete"));
}
DataSetTableRequest dataSetTableRequest = new DataSetTableRequest(); DataSetTableRequest dataSetTableRequest = new DataSetTableRequest();
BeanUtils.copyBean(dataSetTableRequest, datasetTable); BeanUtils.copyBean(dataSetTableRequest, datasetTable);
......
...@@ -183,7 +183,7 @@ import { pluginLoaded } from '@/api/user' ...@@ -183,7 +183,7 @@ import { pluginLoaded } from '@/api/user'
/* import { ldapStatus, pluginLoaded } from '@/api/user' */ /* import { ldapStatus, pluginLoaded } from '@/api/user' */
import { userLists, addUser, editUser, delUser, editPassword, editStatus, allRoles } from '@/api/system/user' import { userLists, addUser, editUser, delUser, editPassword, editStatus, allRoles } from '@/api/system/user'
import { getDeptTree, treeByDeptId } from '@/api/system/dept' import { getDeptTree, treeByDeptId } from '@/api/system/dept'
import { mapGetters } from 'vuex'
export default { export default {
components: { ComplexTable, LayoutContent, Treeselect }, components: { ComplexTable, LayoutContent, Treeselect },
...@@ -320,6 +320,11 @@ export default { ...@@ -320,6 +320,11 @@ export default {
canLoadDom: false canLoadDom: false
} }
}, },
computed: {
...mapGetters([
'user'
])
},
mounted() { mounted() {
this.allRoles() this.allRoles()
this.search() this.search()
...@@ -420,7 +425,7 @@ export default { ...@@ -420,7 +425,7 @@ export default {
this.$success(this.$t('commons.modify_success')) this.$success(this.$t('commons.modify_success'))
this.editPasswordVisible = false this.editPasswordVisible = false
this.search() this.search()
window.location.reload() this.user && this.user.userId && (this.user.userId === editPasswordForm.userId) && window.location.reload()
}) })
} else { } else {
return false return false
......
...@@ -85,12 +85,17 @@ export default { ...@@ -85,12 +85,17 @@ export default {
} }
updatePersonPwd(param).then(res => { updatePersonPwd(param).then(res => {
this.$success(this.$t('commons.save_success')) this.$success(this.$t('commons.save_success'))
this.$router.push('/panel/index') this.logout()
// this.$router.push('/panel/index')
}) })
} else { } else {
return false return false
} }
}) })
},
async logout() {
await this.$store.dispatch('user/logout')
this.$router.push('/')
} }
} }
} }
......
...@@ -3,7 +3,8 @@ ...@@ -3,7 +3,8 @@
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title> <title>
<%= htmlWebpackPlugin.options.title %> <%= htmlWebpackPlugin.options.title %>
</title> </title>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论