diff --git a/backend/src/main/java/io/dataease/controller/panel/PanelGroupController.java b/backend/src/main/java/io/dataease/controller/panel/PanelGroupController.java index 4150871e9b..241d0fd29f 100644 --- a/backend/src/main/java/io/dataease/controller/panel/PanelGroupController.java +++ b/backend/src/main/java/io/dataease/controller/panel/PanelGroupController.java @@ -62,20 +62,20 @@ public class PanelGroupController { @DePermission(type = DePermissionType.PANEL, value = "pid", level = ResourceAuthLevel.PANNEL_LEVEL_MANAGE) }, logical = Logical.AND) @I18n - public String saveOrUpdate(@RequestBody PanelGroupRequest request) { - return panelGroupService.saveOrUpdate(request); + public PanelGroup save(@RequestBody PanelGroupRequest request) throws Exception{ + String panelId = panelGroupService.save(request); + return findOne(panelId); } - @ApiOperation("保存并返回数据") - @PostMapping("/saveWithData") + @ApiOperation("更新") + @PostMapping("/update") @DePermissions(value = { @DePermission(type = DePermissionType.PANEL, value = "id"), @DePermission(type = DePermissionType.PANEL, value = "pid", level = ResourceAuthLevel.PANNEL_LEVEL_MANAGE) }, logical = Logical.AND) @I18n - public PanelGroup saveOrUpdateWithData(@RequestBody PanelGroupRequest request) throws Exception { - String panelId = panelGroupService.saveOrUpdate(request); - return findOne(panelId); + public String update(@RequestBody PanelGroupRequest request) { + return panelGroupService.update(request); } @ApiOperation("删除") diff --git a/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java b/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java index e02c3cc764..0e08e58ba6 100644 --- a/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java +++ b/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java @@ -121,20 +121,22 @@ public class PanelGroupService { } @DeCleaner(value = DePermissionType.PANEL, key = "pid") - public String saveOrUpdate(PanelGroupRequest request) { + public String save(PanelGroupRequest request) { + checkPanelName(request.getName(), request.getPid(), PanelConstants.OPT_TYPE_INSERT, null, request.getNodeType()); + String panelId = newPanel(request); + panelGroupMapper.insertSelective(request); + // 清理权限缓存 + clearPermissionCache(); + sysAuthService.copyAuth(panelId, SysAuthConstants.AUTH_SOURCE_TYPE_PANEL); + DeLogUtils.save(SysLogConstants.OPERATE_TYPE.CREATE, sourceType, panelId, request.getPid(), null, null); + return panelId; + } + + + public String update(PanelGroupRequest request) { String panelId = request.getId(); - if (StringUtils.isNotEmpty(panelId)) { - panelViewService.syncPanelViews(request); - } - if (StringUtils.isEmpty(panelId)) { // 新建 - checkPanelName(request.getName(), request.getPid(), PanelConstants.OPT_TYPE_INSERT, null, request.getNodeType()); - panelId = newPanel(request); - panelGroupMapper.insertSelective(request); - // 清理权限缓存 - clearPermissionCache(); - sysAuthService.copyAuth(panelId, SysAuthConstants.AUTH_SOURCE_TYPE_PANEL); - DeLogUtils.save(SysLogConstants.OPERATE_TYPE.CREATE, sourceType, panelId, request.getPid(), null, null); - } else if ("toDefaultPanel".equals(request.getOptType())) { // 转存为默认仪表板 + panelViewService.syncPanelViews(request); + if ("toDefaultPanel".equals(request.getOptType())) { // 转存为默认仪表板 panelId = UUID.randomUUID().toString(); PanelGroupWithBLOBs newDefaultPanel = panelGroupMapper.selectByPrimaryKey(request.getId()); newDefaultPanel.setPanelType(PanelConstants.PANEL_TYPE.SYSTEM); diff --git a/frontend/src/api/panel/panel.js b/frontend/src/api/panel/panel.js index 71c3c47d0b..d97c41b615 100644 --- a/frontend/src/api/panel/panel.js +++ b/frontend/src/api/panel/panel.js @@ -72,14 +72,16 @@ export function panelSave(data) { data }) } -export function panelSaveWithData(data) { + +export function panelUpdate(data) { return request({ - url: 'panel/group/saveWithData', + url: 'panel/group/update', method: 'post', loading: true, data }) } + export function findOne(id) { return request({ url: 'panel/group/findOne/' + id, diff --git a/frontend/src/components/canvas/components/Toolbar.vue b/frontend/src/components/canvas/components/Toolbar.vue index 66f8a630f9..7f092800f4 100644 --- a/frontend/src/components/canvas/components/Toolbar.vue +++ b/frontend/src/components/canvas/components/Toolbar.vue @@ -87,7 +87,7 @@ import { mapState } from 'vuex' import { commonStyle, commonAttr } from '@/components/canvas/custom-component/component-list' import eventBus from '@/components/canvas/utils/eventBus' import { deepCopy, mobile2MainCanvas } from '@/components/canvas/utils/utils' -import { panelSave } from '@/api/panel/panel' +import { panelUpdate } from '@/api/panel/panel' import { saveLinkage, getPanelAllLinkageInfo } from '@/api/panel/linkage' import bus from '@/utils/bus' import { @@ -295,7 +295,7 @@ export default { }) // 无需保存条件 requestInfo.panelData = JSON.stringify(components) - panelSave(requestInfo).then(response => { + panelUpdate(requestInfo).then(response => { this.$store.commit('refreshSaveStatus') this.$message({ message: this.$t('commons.save_success'), diff --git a/frontend/src/views/panel/list/EditPanel/index.vue b/frontend/src/views/panel/list/EditPanel/index.vue index 531d43511d..a78ef75ff1 100644 --- a/frontend/src/views/panel/list/EditPanel/index.vue +++ b/frontend/src/views/panel/list/EditPanel/index.vue @@ -32,7 +32,7 @@