forked from github/dataease
Merge pull request #11072 from dataease/pr@dev-v2@refactor_app-import
refactor(仪表板): app导入优化
This commit is contained in:
commit
2262b06ed6
@ -305,12 +305,14 @@ public class DataVisualizationServer implements DataVisualizationApi {
|
||||
//表名映射更新
|
||||
Map<String,String> appDsTableNamesMap = dsTableNamesMap.get(key);
|
||||
Map<String,String> systemDsTableNamesMap = dsTableNamesMap.get(value);
|
||||
if(!CollectionUtils.isEmpty(appDsTableNamesMap) && !CollectionUtils.isEmpty(systemDsTableNamesMap) ){
|
||||
appDsTableNamesMap.forEach((keyName,valueName) ->{
|
||||
if(StringUtils.isNotEmpty(systemDsTableNamesMap.get(keyName))){
|
||||
dsGroup.setInfo(dsGroup.getInfo().replaceAll(valueName,systemDsTableNamesMap.get(keyName)));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
appDsTableNamesMap.forEach((keyName,valueName) ->{
|
||||
if(StringUtils.isNotEmpty(systemDsTableNamesMap.get(keyName))){
|
||||
dsGroup.setInfo(dsGroup.getInfo().replaceAll(valueName,systemDsTableNamesMap.get(keyName)));
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
@ -46,11 +46,13 @@ export const findDvType = async dvId =>
|
||||
|
||||
export const save = data => request.post({ url: '/dataVisualization/save', data })
|
||||
|
||||
export const saveCanvas = data => request.post({ url: '/dataVisualization/saveCanvas', data })
|
||||
export const saveCanvas = data =>
|
||||
request.post({ url: '/dataVisualization/saveCanvas', data, loading: true })
|
||||
|
||||
export const updateBase = data => request.post({ url: '/dataVisualization/updateBase', data })
|
||||
|
||||
export const updateCanvas = data => request.post({ url: '/dataVisualization/updateCanvas', data })
|
||||
export const updateCanvas = data =>
|
||||
request.post({ url: '/dataVisualization/updateCanvas', data, loading: true })
|
||||
|
||||
export const moveResource = data => request.post({ url: '/dataVisualization/move', data })
|
||||
|
||||
|
@ -179,25 +179,27 @@ const saveCanvasWithCheck = () => {
|
||||
const saveResource = () => {
|
||||
wsCache.delete('DE-DV-CATCH-' + dvInfo.value.id)
|
||||
if (styleChangeTimes.value > 0) {
|
||||
snapshotStore.resetStyleChangeTimes()
|
||||
dvMainStore.matrixSizeAdaptor()
|
||||
queryList.value.forEach(ele => {
|
||||
useEmitt().emitter.emit(`updateQueryCriteria${ele.id}`)
|
||||
})
|
||||
|
||||
canvasSave(() => {
|
||||
snapshotStore.resetStyleChangeTimes()
|
||||
ElMessage.success('保存成功')
|
||||
window.history.pushState({}, '', `#/dashboard?resourceId=${dvInfo.value.id}`)
|
||||
if (appData.value) {
|
||||
initCanvasData(dvInfo.value.id, 'dashboard', () => {
|
||||
useEmitt().emitter.emit('refresh-dataset-selector')
|
||||
resourceAppOpt.value.close()
|
||||
dvMainStore.setAppDataInfo(null)
|
||||
snapshotStore.resetSnapshot()
|
||||
})
|
||||
}
|
||||
})
|
||||
try {
|
||||
canvasSave(() => {
|
||||
snapshotStore.resetStyleChangeTimes()
|
||||
ElMessage.success('保存成功')
|
||||
window.history.pushState({}, '', `#/dashboard?resourceId=${dvInfo.value.id}`)
|
||||
if (appData.value) {
|
||||
initCanvasData(dvInfo.value.id, 'dashboard', () => {
|
||||
useEmitt().emitter.emit('refresh-dataset-selector')
|
||||
resourceAppOpt.value.close()
|
||||
dvMainStore.setAppDataInfo(null)
|
||||
snapshotStore.resetSnapshot()
|
||||
})
|
||||
}
|
||||
})
|
||||
} catch (e) {
|
||||
console.error(e)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -663,7 +665,7 @@ const initOpenHandler = newWindow => {
|
||||
:dv-info="dvInfo"
|
||||
:canvas-view-info="canvasViewInfo"
|
||||
cur-canvas-type="dashboard"
|
||||
@saveApp="saveCanvasWithCheck"
|
||||
@saveAppCanvas="saveCanvasWithCheck"
|
||||
></de-app-apply>
|
||||
</template>
|
||||
|
||||
|
@ -383,7 +383,7 @@ const fullScreenPreview = () => {
|
||||
:dv-info="dvInfo"
|
||||
:canvas-view-info="canvasViewInfo"
|
||||
cur-canvas-type="dataV"
|
||||
@saveApp="saveCanvasWithCheck"
|
||||
@saveAppCanvas="saveCanvasWithCheck"
|
||||
></de-app-apply>
|
||||
</div>
|
||||
<de-fullscreen ref="fullScreeRef" show-position="dvEdit"></de-fullscreen>
|
||||
|
@ -2,11 +2,11 @@
|
||||
<el-drawer
|
||||
:title="'保存应用'"
|
||||
v-model="state.appApplyDrawer"
|
||||
custom-class="de-user-drawer"
|
||||
custom-class="de-app-drawer"
|
||||
size="500px"
|
||||
direction="rtl"
|
||||
>
|
||||
<div class="app-export">
|
||||
<div class="app-export" v-loading="requestStore.loadingMap[permissionStore.currentPath]">
|
||||
<el-form
|
||||
ref="appSaveForm"
|
||||
:model="state.form"
|
||||
@ -143,12 +143,18 @@ import DatasetSelect from '@/views/chart/components/editor/dataset-select/Datase
|
||||
import { dvMainStoreWithOut } from '@/store/modules/data-visualization/dvMain'
|
||||
import { storeToRefs } from 'pinia'
|
||||
import { deepCopy } from '@/utils/utils'
|
||||
import eventBus from '@/utils/eventBus'
|
||||
import { snapshotStoreWithOut } from '@/store/modules/data-visualization/snapshot'
|
||||
import { useRequestStoreWithOut } from '@/store/modules/request'
|
||||
import { usePermissionStoreWithOut } from '@/store/modules/permission'
|
||||
const { t } = useI18n()
|
||||
const emits = defineEmits(['closeDraw', 'saveApp'])
|
||||
const appSaveForm = ref(null)
|
||||
const dvMainStore = dvMainStoreWithOut()
|
||||
const { dvInfo, appData } = storeToRefs(dvMainStore)
|
||||
|
||||
const snapshotStore = snapshotStoreWithOut()
|
||||
const requestStore = useRequestStoreWithOut()
|
||||
const permissionStore = usePermissionStoreWithOut()
|
||||
const props = defineProps({
|
||||
componentData: {
|
||||
type: Object,
|
||||
@ -309,7 +315,8 @@ const saveApp = () => {
|
||||
dvInfo.value['datasetFolderPid'] = state.form.datasetFolderPid
|
||||
dvInfo.value['datasetFolderName'] = state.form.datasetFolderName
|
||||
dvInfo.value['dataState'] = 'ready'
|
||||
emits('saveApp')
|
||||
eventBus.emit('save')
|
||||
snapshotStore.recordSnapshotCache('renderChart')
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
@ -393,3 +400,9 @@ defineExpose({
|
||||
justify-content: center;
|
||||
}
|
||||
</style>
|
||||
|
||||
<style lang="less">
|
||||
.de-app-drawer {
|
||||
z-index: 1000;
|
||||
}
|
||||
</style>
|
||||
|
@ -238,13 +238,13 @@ onUnmounted(() => {
|
||||
<div
|
||||
class="dv-common-layout dv-teleport-query"
|
||||
:class="isDataEaseBi && !newWindowFromDiv && 'dataease-w-h'"
|
||||
v-loading="requestStore.loadingMap[permissionStore.currentPath]"
|
||||
v-if="loadFinish && !mobileConfig"
|
||||
>
|
||||
<DbToolbar />
|
||||
<el-container
|
||||
class="dv-layout-container"
|
||||
:class="{ 'preview-content': editMode === 'preview' }"
|
||||
v-loading="requestStore.loadingMap[permissionStore.currentPath]"
|
||||
element-loading-background="rgba(0, 0, 0, 0)"
|
||||
>
|
||||
<!-- 中间画布 -->
|
||||
|
Loading…
Reference in New Issue
Block a user