Merge branch 'dev' into v1.18
This commit is contained in:
commit
324db9f269
@ -5,7 +5,7 @@
|
|||||||
<a href="https://app.codacy.com/gh/dataease/dataease?utm_source=github.com&utm_medium=referral&utm_content=dataease/dataease&utm_campaign=Badge_Grade_Dashboard"><img src="https://app.codacy.com/project/badge/Grade/da67574fd82b473992781d1386b937ef" alt="Codacy"></a>
|
<a href="https://app.codacy.com/gh/dataease/dataease?utm_source=github.com&utm_medium=referral&utm_content=dataease/dataease&utm_campaign=Badge_Grade_Dashboard"><img src="https://app.codacy.com/project/badge/Grade/da67574fd82b473992781d1386b937ef" alt="Codacy"></a>
|
||||||
<a href="https://github.com/dataease/dataease/releases/latest"><img src="https://img.shields.io/github/v/release/dataease/dataease" alt="Latest release"></a>
|
<a href="https://github.com/dataease/dataease/releases/latest"><img src="https://img.shields.io/github/v/release/dataease/dataease" alt="Latest release"></a>
|
||||||
<a href="https://github.com/dataease/dataease"><img src="https://img.shields.io/github/stars/dataease/dataease?color=%231890FF&style=flat-square" alt="Stars"></a>
|
<a href="https://github.com/dataease/dataease"><img src="https://img.shields.io/github/stars/dataease/dataease?color=%231890FF&style=flat-square" alt="Stars"></a>
|
||||||
|
<a href="https://app.fossa.com/projects/git%2Bgithub.com%2F1dataease%2Fdataease?ref=badge_shield"><img src="https://app.fossa.com/api/projects/git%2Bgithub.com%2Fdataease%2Fdataease.svg?type=shield" alt="FOSSA Status"></a>
|
||||||
</p>
|
</p>
|
||||||
<hr/>
|
<hr/>
|
||||||
|
|
||||||
@ -104,6 +104,11 @@ curl -sSL https://dataease.oss-cn-hangzhou.aliyuncs.com/quick_start.sh | bash
|
|||||||
|
|
||||||
[](https://star-history.com/#dataease/dataease&Date)
|
[](https://star-history.com/#dataease/dataease&Date)
|
||||||
|
|
||||||
|
## FOSSA Status
|
||||||
|
|
||||||
|
[](https://app.fossa.com/projects/git%2Bgithub.com%2Fdataease%2Fdataease?ref=badge_large)
|
||||||
|
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
Copyright (c) 2014-2023 [FIT2CLOUD 飞致云](https://fit2cloud.com/), All rights reserved.
|
Copyright (c) 2014-2023 [FIT2CLOUD 飞致云](https://fit2cloud.com/), All rights reserved.
|
||||||
|
|||||||
@ -56,6 +56,7 @@ public interface ShareApi {
|
|||||||
@PostMapping("/removeShares")
|
@PostMapping("/removeShares")
|
||||||
void removeShares(PanelShareRemoveRequest request);
|
void removeShares(PanelShareRemoveRequest request);
|
||||||
|
|
||||||
|
@DePermission(type = DePermissionType.PANEL)
|
||||||
@ApiOperation("删除仪表板所有分享")
|
@ApiOperation("删除仪表板所有分享")
|
||||||
@PostMapping("/removePanelShares/{panelId}")
|
@PostMapping("/removePanelShares/{panelId}")
|
||||||
void removePanelShares(@PathVariable("panelId") String panelId);
|
void removePanelShares(@PathVariable("panelId") String panelId);
|
||||||
|
|||||||
@ -20,7 +20,7 @@ public class MysqlDDLProvider extends DDLProviderImpl {
|
|||||||
|
|
||||||
private static final String creatTableSql =
|
private static final String creatTableSql =
|
||||||
"CREATE TABLE IF NOT EXISTS `TABLE_NAME`" +
|
"CREATE TABLE IF NOT EXISTS `TABLE_NAME`" +
|
||||||
"Column_Fields;" ;
|
"Column_Fields" + " ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE utf8mb4_general_ci;" ;
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -1278,7 +1278,6 @@ public class DataSetTableService {
|
|||||||
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
QueryProvider qp = ProviderFactory.getQueryProvider(ds.getType());
|
||||||
String sqlAsTable = qp.createSQLPreview(sql, null);
|
String sqlAsTable = qp.createSQLPreview(sql, null);
|
||||||
datasourceRequest.setQuery(sqlAsTable);
|
datasourceRequest.setQuery(sqlAsTable);
|
||||||
System.out.println(sqlAsTable);
|
|
||||||
Map<String, List> result;
|
Map<String, List> result;
|
||||||
try {
|
try {
|
||||||
datasetSqlLog.setStartTime(System.currentTimeMillis());
|
datasetSqlLog.setStartTime(System.currentTimeMillis());
|
||||||
|
|||||||
@ -227,6 +227,9 @@ public class EngineService {
|
|||||||
mysqlConfiguration.setPort(Integer.valueOf(matcher.group(2)));
|
mysqlConfiguration.setPort(Integer.valueOf(matcher.group(2)));
|
||||||
mysqlConfiguration.setDataBase(matcher.group(3).split("\\?")[0]);
|
mysqlConfiguration.setDataBase(matcher.group(3).split("\\?")[0]);
|
||||||
mysqlConfiguration.setExtraParams(matcher.group(3).split("\\?")[1]);
|
mysqlConfiguration.setExtraParams(matcher.group(3).split("\\?")[1]);
|
||||||
|
if(StringUtils.isNotEmpty(mysqlConfiguration.getExtraParams()) && !mysqlConfiguration.getExtraParams().contains("connectionCollation")){
|
||||||
|
mysqlConfiguration.setExtraParams(mysqlConfiguration.getExtraParams() + "&connectionCollation=utf8mb4_general_ci");
|
||||||
|
}
|
||||||
mysqlConfiguration.setUsername(env.getProperty("spring.datasource.username"));
|
mysqlConfiguration.setUsername(env.getProperty("spring.datasource.username"));
|
||||||
mysqlConfiguration.setPassword(env.getProperty("spring.datasource.password"));
|
mysqlConfiguration.setPassword(env.getProperty("spring.datasource.password"));
|
||||||
engine.setConfiguration(new Gson().toJson(mysqlConfiguration));
|
engine.setConfiguration(new Gson().toJson(mysqlConfiguration));
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<el-dropdown trigger="click">
|
<el-dropdown
|
||||||
|
trigger="click">
|
||||||
<input
|
<input
|
||||||
id="input"
|
id="input"
|
||||||
ref="trackButton"
|
ref="trackButton"
|
||||||
@ -64,6 +65,15 @@ export default {
|
|||||||
width: 80px;
|
width: 80px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
::v-deep.el-popper[x-placement^=bottom] .popper__arrow {
|
||||||
|
transform: rotate(180deg) !important;
|
||||||
|
top: 75px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep.el-popper[x-placement^=bottom] {
|
||||||
|
margin-top: -80px !important;
|
||||||
|
}
|
||||||
|
|
||||||
.track-menu {
|
.track-menu {
|
||||||
border: #3a8ee6 1px solid;
|
border: #3a8ee6 1px solid;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -710,7 +710,7 @@ export default {
|
|||||||
clearPanelLinkage(param) {
|
clearPanelLinkage(param) {
|
||||||
if (param.viewId === 'all' || param.viewId === this.element.propValue.viewId) {
|
if (param.viewId === 'all' || param.viewId === this.element.propValue.viewId) {
|
||||||
try {
|
try {
|
||||||
this.$refs[this.element.propValue.id].reDrawView()
|
this.$refs[this.element.propValue.id]?.reDrawView()
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error('reDrawView-error:', this.element.propValue.id)
|
console.error('reDrawView-error:', this.element.propValue.id)
|
||||||
}
|
}
|
||||||
|
|||||||
@ -24,6 +24,7 @@ export function baseMixOption(chart_option, chart) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 处理data
|
// 处理data
|
||||||
|
const yAxisSeriesMaxList = []; const yAxisExtSeriesMaxList = []
|
||||||
if (chart.data) {
|
if (chart.data) {
|
||||||
chart_option.title.text = chart.title
|
chart_option.title.text = chart.title
|
||||||
chart_option.xAxis.data = chart.data.x
|
chart_option.xAxis.data = chart.data.x
|
||||||
@ -69,12 +70,42 @@ export function baseMixOption(chart_option, chart) {
|
|||||||
chart_option.legend.data.push(y.name)
|
chart_option.legend.data.push(y.name)
|
||||||
i >= yAxis.length ? (y.yAxisIndex = 1) : (y.yAxisIndex = 0)
|
i >= yAxis.length ? (y.yAxisIndex = 1) : (y.yAxisIndex = 0)
|
||||||
|
|
||||||
|
// get max
|
||||||
|
if (i >= yAxis.length) {
|
||||||
|
const valueList = []
|
||||||
|
y.data.forEach(ele => {
|
||||||
|
valueList.push(ele.value)
|
||||||
|
})
|
||||||
|
yAxisExtSeriesMaxList.push(Math.max.apply(null, valueList))
|
||||||
|
} else {
|
||||||
|
const valueList = []
|
||||||
|
y.data.forEach(ele => {
|
||||||
|
valueList.push(ele.value)
|
||||||
|
})
|
||||||
|
yAxisSeriesMaxList.push(Math.max.apply(null, valueList))
|
||||||
|
}
|
||||||
|
|
||||||
y.selectedMode = true
|
y.selectedMode = true
|
||||||
y.select = BASE_ECHARTS_SELECT
|
y.select = BASE_ECHARTS_SELECT
|
||||||
chart_option.series.push(y)
|
chart_option.series.push(y)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
componentStyle(chart_option, chart)
|
componentStyle(chart_option, chart)
|
||||||
|
|
||||||
|
// 若轴值中最大值小于data的最大值,则轴值最大值设置失效
|
||||||
|
if (yAxisSeriesMaxList.length > 0 && !isNaN(chart_option.yAxis[0].max)) {
|
||||||
|
const max = Math.max.apply(null, yAxisSeriesMaxList)
|
||||||
|
if (max > chart_option.yAxis[0].max) {
|
||||||
|
delete chart_option.yAxis[0].max
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (yAxisExtSeriesMaxList.length > 0 && !isNaN(chart_option.yAxis[1].max)) {
|
||||||
|
const max = Math.max.apply(null, yAxisExtSeriesMaxList)
|
||||||
|
if (max > chart_option.yAxis[1].max) {
|
||||||
|
delete chart_option.yAxis[1].max
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
seniorCfg(chart_option, chart)
|
seniorCfg(chart_option, chart)
|
||||||
return chart_option
|
return chart_option
|
||||||
}
|
}
|
||||||
|
|||||||
@ -755,7 +755,7 @@ export default {
|
|||||||
type = 'NUM'
|
type = 'NUM'
|
||||||
}
|
}
|
||||||
datasetParams(tableId, type).then(res => {
|
datasetParams(tableId, type).then(res => {
|
||||||
this.datasetParams = res.data
|
this.datasetParams = res.data || []
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
comLoadField(tableId) {
|
comLoadField(tableId) {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user