diff --git a/frontend/src/api/panel/panel.js b/frontend/src/api/panel/panel.js index 5b9be4774f..9d5d7198c6 100644 --- a/frontend/src/api/panel/panel.js +++ b/frontend/src/api/panel/panel.js @@ -3,6 +3,8 @@ import { panelInit } from '@/components/canvas/utils/utils' import { getPanelAllLinkageInfo } from '@/api/panel/linkage' import { queryPanelJumpInfo } from '@/api/panel/linkJump' import store from '@/store' +import { $error } from '@/utils/message' +import i18n from '@/lang' export function deleteSubject(id) { return request({ @@ -157,30 +159,34 @@ export function initPanelData(panelId, useCache = false, callback) { const queryMethod = useCache ? findUserCacheRequest : findOne // 加载视图数据 queryMethod(panelId).then(response => { - // 初始化视图data和style 数据 - panelInit(JSON.parse(response.data.panelData), JSON.parse(response.data.panelStyle)) - // 设置当前仪表板全局信息 - store.dispatch('panel/setPanelInfo', { - id: response.data.id, - name: response.data.name, - privileges: response.data.privileges, - sourcePanelName: response.data.sourcePanelName, - status: response.data.status, - createBy: response.data.createBy, - createTime: response.data.createTime, - creatorName: response.data.creatorName, - updateBy: response.data.updateBy, - updateName: response.data.updateName, - updateTime: response.data.updateTime - }) - // 刷新联动信息 - getPanelAllLinkageInfo(panelId).then(rsp => { - store.commit('setNowPanelTrackInfo', rsp.data) - }) - // 刷新跳转信息 - queryPanelJumpInfo(panelId).then(rsp => { - store.commit('setNowPanelJumpInfo', rsp.data) - }) + if (response.data) { + // 初始化视图data和style 数据 + panelInit(JSON.parse(response.data.panelData), JSON.parse(response.data.panelStyle)) + // 设置当前仪表板全局信息 + store.dispatch('panel/setPanelInfo', { + id: response.data.id, + name: response.data.name, + privileges: response.data.privileges, + sourcePanelName: response.data.sourcePanelName, + status: response.data.status, + createBy: response.data.createBy, + createTime: response.data.createTime, + creatorName: response.data.creatorName, + updateBy: response.data.updateBy, + updateName: response.data.updateName, + updateTime: response.data.updateTime + }) + // 刷新联动信息 + getPanelAllLinkageInfo(panelId).then(rsp => { + store.commit('setNowPanelTrackInfo', rsp.data) + }) + // 刷新跳转信息 + queryPanelJumpInfo(panelId).then(rsp => { + store.commit('setNowPanelJumpInfo', rsp.data) + }) + } else { + $error(i18n.t('panel.panel_get_data_error')) + } callback(response) }) } diff --git a/frontend/src/api/panel/shareProxy.js b/frontend/src/api/panel/shareProxy.js index f171f73429..5b63589da5 100644 --- a/frontend/src/api/panel/shareProxy.js +++ b/frontend/src/api/panel/shareProxy.js @@ -1,32 +1,38 @@ import request from '@/utils/request' import { panelInit } from '@/components/canvas/utils/utils' import store from '@/store' +import { $error } from '@/utils/message' +import i18n from '@/lang' export function proxyInitPanelData(panelId, proxy, callback) { // 加载视图数据 findOne(panelId, proxy).then(response => { - // 初始化视图data和style 数据 - panelInit(JSON.parse(response.data.panelData), JSON.parse(response.data.panelStyle)) - // 设置当前仪表板全局信息 - store.dispatch('panel/setPanelInfo', { - id: response.data.id, - name: response.data.name, - privileges: response.data.privileges, - proxy: proxy.userId, - status: response.data.status, - createBy: response.data.createBy, - createTime: response.data.createTime, - updateBy: response.data.updateBy, - updateTime: response.data.updateTime - }) - // 刷新联动信息 - getPanelAllLinkageInfo(panelId, proxy).then(rsp => { - store.commit('setNowPanelTrackInfo', rsp.data) - }) - // 刷新跳转信息 - queryPanelJumpInfo(panelId, proxy).then(rsp => { - store.commit('setNowPanelJumpInfo', rsp.data) - }) + if (response.data) { + // 初始化视图data和style 数据 + panelInit(JSON.parse(response.data.panelData), JSON.parse(response.data.panelStyle)) + // 设置当前仪表板全局信息 + store.dispatch('panel/setPanelInfo', { + id: response.data.id, + name: response.data.name, + privileges: response.data.privileges, + proxy: proxy.userId, + status: response.data.status, + createBy: response.data.createBy, + createTime: response.data.createTime, + updateBy: response.data.updateBy, + updateTime: response.data.updateTime + }) + // 刷新联动信息 + getPanelAllLinkageInfo(panelId, proxy).then(rsp => { + store.commit('setNowPanelTrackInfo', rsp.data) + }) + // 刷新跳转信息 + queryPanelJumpInfo(panelId, proxy).then(rsp => { + store.commit('setNowPanelJumpInfo', rsp.data) + }) + } else { + $error(i18n.t('panel.panel_get_data_error')) + } callback && callback(response) }) } diff --git a/frontend/src/components/canvas/components/Editor/PreviewEject.vue b/frontend/src/components/canvas/components/Editor/PreviewEject.vue index da63010bb5..3595c0c13d 100644 --- a/frontend/src/components/canvas/components/Editor/PreviewEject.vue +++ b/frontend/src/components/canvas/components/Editor/PreviewEject.vue @@ -6,7 +6,7 @@ > @@ -15,7 +15,7 @@ import { uuid } from 'vue-uuid' import Preview from '@/components/canvas/components/Editor/Preview' import { getPanelAllLinkageInfo } from '@/api/panel/linkage' import { queryPanelJumpInfo, queryTargetPanelJumpInfo } from '@/api/panel/linkJump' -import { panelInit } from '@/components/canvas/utils/utils' +import { getNowCanvasComponentData, panelInit } from '@/components/canvas/utils/utils' import { getOuterParamsInfo } from '@/api/panel/outerParams' import { mapState } from 'vuex' @@ -34,14 +34,17 @@ export default { }, data() { return { + canvasId: 'canvas-main', show: false, panelInfo: {} } }, computed: { + mainCanvasComponentData() { + return getNowCanvasComponentData(this.canvasId) + }, ...mapState([ - 'canvasStyleData', - 'componentData' + 'canvasStyleData' ]) }, created() { diff --git a/frontend/src/views/panel/LinkJumpSet/index.vue b/frontend/src/views/panel/LinkJumpSet/index.vue index 0ecd09a6e5..b8caf5df85 100644 --- a/frontend/src/views/panel/LinkJumpSet/index.vue +++ b/frontend/src/views/panel/LinkJumpSet/index.vue @@ -503,9 +503,15 @@ export default { methods: { init() { const chartDetails = JSON.parse(this.panelViewDetailsInfo[this.viewId]) - const checkAllAxisStr = chartDetails.xaxis + chartDetails.xaxisExt + chartDetails.yaxis + chartDetails.yaxisExt + chartDetails.drillFields + let checkAllAxisStr = chartDetails.xaxis + chartDetails.xaxisExt + chartDetails.yaxis + chartDetails.yaxisExt + chartDetails.drillFields let checkJumpStr - if (chartDetails.type === 'table-pivot') { + // 堆叠图的可选参数分两种情况 1.如果有堆叠项 则指标只有第一个可选 2.如果没有堆叠项泽所有指标都可以选 + if (chartDetails.type.indexOf('stack') > -1 && chartDetails.extStack.length > 2) { + const yaxisArray = JSON.parse(chartDetails.yaxis) + const yaxisNew = yaxisArray.length > 0 ? JSON.stringify(yaxisArray[0]) : '[]' + checkAllAxisStr = chartDetails.xaxis + chartDetails.xaxisExt + yaxisNew + chartDetails.yaxisExt + chartDetails.drillFields + checkJumpStr = checkAllAxisStr + } else if (chartDetails.type === 'table-pivot') { checkJumpStr = chartDetails.yaxis + chartDetails.yaxisExt + chartDetails.drillFields } else if (chartDetails.type === 'table-info') { checkJumpStr = chartDetails.xaxis + chartDetails.drillFields diff --git a/frontend/src/views/panel/ViewSelect/multiplexing.vue b/frontend/src/views/panel/ViewSelect/multiplexing.vue index 23de8ede10..2012a9da11 100644 --- a/frontend/src/views/panel/ViewSelect/multiplexing.vue +++ b/frontend/src/views/panel/ViewSelect/multiplexing.vue @@ -16,7 +16,7 @@ diff --git a/frontend/src/views/system/sysParam/BasicSetting.vue b/frontend/src/views/system/sysParam/BasicSetting.vue index bd1944aaea..29bbd1353f 100644 --- a/frontend/src/views/system/sysParam/BasicSetting.vue +++ b/frontend/src/views/system/sysParam/BasicSetting.vue @@ -424,7 +424,7 @@ export default { return } if (this.formInline.dsCheckIntervalType === 'hour') { - const pattern = '^([1-9]|[1-2][0-3])$' + const pattern = '^([1-9]|[1][1-9]|[1-2][0-3])$' if (!new RegExp(pattern).test(this.formInline.dsCheckInterval)) { this.$message({ message: this.$t('cron.hour_limit'), type: 'warning', showClose: true }) this.formInline.dsCheckInterval = 1