From 54d9f5d5f1d2d70787d269953bc37f8b054e4398 Mon Sep 17 00:00:00 2001 From: wisonic-s Date: Wed, 21 Dec 2022 17:58:03 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E4=BB=AA=E8=A1=A8=E6=9D=BF):=20=E5=A2=9E?= =?UTF-8?q?=E5=8A=A0=E8=8E=B7=E5=8F=96=E4=BB=AA=E8=A1=A8=E6=9D=BF=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E7=9A=84=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../panel/PanelGroupController.java | 7 ++++ .../io/dataease/ext/ExtPanelGroupMapper.java | 3 ++ .../io/dataease/ext/ExtPanelGroupMapper.xml | 34 +++++++++++++++++++ .../service/panel/PanelGroupService.java | 12 +++++++ 4 files changed, 56 insertions(+) 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 28bb812286..dbe2e68035 100644 --- a/backend/src/main/java/io/dataease/controller/panel/PanelGroupController.java +++ b/backend/src/main/java/io/dataease/controller/panel/PanelGroupController.java @@ -14,6 +14,7 @@ import io.dataease.dto.PermissionProxy; import io.dataease.dto.authModel.VAuthModelDTO; import io.dataease.dto.panel.PanelExport2App; import io.dataease.dto.panel.PanelGroupDTO; +import io.dataease.plugins.common.base.domain.PanelGroup; import io.dataease.service.panel.PanelGroupService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -50,6 +51,12 @@ public class PanelGroupController { return panelGroupService.tree(request); } + @ApiOperation("查询当前用户仪表板") + @GetMapping("/list") + public List list() { + return panelGroupService.list(); + } + @ApiOperation("默认树") @PostMapping("/defaultTree") public List defaultTree(@RequestBody PanelGroupRequest request) { diff --git a/backend/src/main/java/io/dataease/ext/ExtPanelGroupMapper.java b/backend/src/main/java/io/dataease/ext/ExtPanelGroupMapper.java index 68d10de928..30dbcd2c75 100644 --- a/backend/src/main/java/io/dataease/ext/ExtPanelGroupMapper.java +++ b/backend/src/main/java/io/dataease/ext/ExtPanelGroupMapper.java @@ -3,6 +3,7 @@ package io.dataease.ext; import io.dataease.controller.request.panel.PanelGroupRequest; import io.dataease.dto.RelationDTO; import io.dataease.dto.panel.PanelGroupDTO; +import io.dataease.plugins.common.base.domain.PanelGroup; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -30,4 +31,6 @@ public interface ExtPanelGroupMapper { List panelGroupInit(); List queryPanelRelation(@Param("panelId") String panelId, @Param("userId") Long userId); + + List listPanelByUser(@Param("userId") long userId); } diff --git a/backend/src/main/java/io/dataease/ext/ExtPanelGroupMapper.xml b/backend/src/main/java/io/dataease/ext/ExtPanelGroupMapper.xml index d172a7e8f4..4c6343e5e3 100644 --- a/backend/src/main/java/io/dataease/ext/ExtPanelGroupMapper.xml +++ b/backend/src/main/java/io/dataease/ext/ExtPanelGroupMapper.xml @@ -320,4 +320,38 @@ where pg.id=#{panelId,jdbcType=VARCHAR} group by dt.id + + 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 947073c9dd..64f48249e3 100644 --- a/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java +++ b/backend/src/main/java/io/dataease/service/panel/PanelGroupService.java @@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; import io.dataease.auth.annotation.DeCleaner; +import io.dataease.auth.api.dto.CurrentUserDto; import io.dataease.commons.constants.*; import io.dataease.commons.utils.*; import io.dataease.controller.request.authModel.VAuthModelRequest; @@ -151,6 +152,17 @@ public class PanelGroupService { return TreeUtils.mergeTree(panelGroupDTOList, "default_panel"); } + public List list() { + CurrentUserDto user = AuthUtils.getUser(); + if (user.getIsAdmin()) { + PanelGroupExample example = new PanelGroupExample(); + example.setOrderByClause("name"); + example.createCriteria().andNodeTypeEqualTo("panel"); + return panelGroupMapper.selectByExample(example); + } + return extPanelGroupMapper.listPanelByUser(user.getUserId()); + } + @DeCleaner(value = DePermissionType.PANEL, key = "pid") public String save(PanelGroupRequest request) { checkPanelName(request.getName(), request.getPid(), PanelConstants.OPT_TYPE_INSERT, null, request.getNodeType());