diff --git a/backend/src/main/java/io/dataease/service/chart/ChartViewService.java b/backend/src/main/java/io/dataease/service/chart/ChartViewService.java index b3583a2ebd..6b4d57cd37 100644 --- a/backend/src/main/java/io/dataease/service/chart/ChartViewService.java +++ b/backend/src/main/java/io/dataease/service/chart/ChartViewService.java @@ -240,17 +240,23 @@ public class ChartViewService { else { data = (List) cache; }*/ - try{ - data = cacheViewData(datasourceProvider, datasourceRequest, id); - }catch (Exception e) { - LogUtil.error(e); - }finally { - // 如果当前对象被锁 且 当前线程冲入次数 > 0 则释放锁 - if (lock.isLocked() && lock.getHoldCount() > 0) { - lock.unlock(); + // 仪表板有参数不实用缓存 + if (CollectionUtils.isNotEmpty(requestList.getFilter())) { + data = datasourceProvider.getData(datasourceRequest); + }else { + try{ + data = cacheViewData(datasourceProvider, datasourceRequest, id); + }catch (Exception e) { + LogUtil.error(e); + }finally { + // 如果当前对象被锁 且 当前线程冲入次数 > 0 则释放锁 + if (lock.isLocked() && lock.getHoldCount() > 0) { + lock.unlock(); + } } } + } if (StringUtils.containsIgnoreCase(view.getType(), "pie") && data.size() > 1000) { data = data.subList(0, 1000); diff --git a/frontend/src/views/system/datasource/form.vue b/frontend/src/views/system/datasource/form.vue index 6e3865bb76..d2f97bb8ee 100644 --- a/frontend/src/views/system/datasource/form.vue +++ b/frontend/src/views/system/datasource/form.vue @@ -52,8 +52,8 @@ - - + + import LayoutContent from '@/components/business/LayoutContent' -import {addDs, editDs, getSchema, validateDs} from '@/api/system/datasource' +import { addDs, editDs, getSchema, validateDs } from '@/api/system/datasource' export default { name: 'DsForm', components: { LayoutContent }, @@ -148,7 +148,7 @@ export default { this.$refs.dsForm.resetFields() }, save() { - if(!this.form.configuration.schema){ + if (!this.form.configuration.schema) { this.$message.error(this.$t('datasource.please_choose_schema')) return } @@ -167,7 +167,7 @@ export default { } }) }, - getSchema(){ + getSchema() { this.$refs.dsForm.validate(valid => { if (valid) { const data = JSON.parse(JSON.stringify(this.form))