From c07462bd55d8703d865313716320a4f03853b25c Mon Sep 17 00:00:00 2001 From: wangjiahao <1522128093@qq.com> Date: Wed, 23 Jun 2021 17:40:21 +0800 Subject: [PATCH 1/8] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=9B=B4=E6=96=B0?= =?UTF-8?q?xpack=E8=8F=9C=E5=8D=95=20=E4=BA=8B=E5=8A=A1=E5=A4=B1=E6=95=88?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../auth/service/impl/AuthUserServiceImpl.java | 12 ++---------- .../service/impl/DynamicMenuServiceImpl.java | 16 ++++++++++++++++ .../src/views/panel/SubjectSetting/index.vue | 10 +++++----- 3 files changed, 23 insertions(+), 15 deletions(-) diff --git a/backend/src/main/java/io/dataease/auth/service/impl/AuthUserServiceImpl.java b/backend/src/main/java/io/dataease/auth/service/impl/AuthUserServiceImpl.java index ab34315d8f..804e87126d 100644 --- a/backend/src/main/java/io/dataease/auth/service/impl/AuthUserServiceImpl.java +++ b/backend/src/main/java/io/dataease/auth/service/impl/AuthUserServiceImpl.java @@ -33,7 +33,7 @@ public class AuthUserServiceImpl implements AuthUserService { @Resource private SysUserMapper sysUserMapper; @Resource - private ExtPluginSysMenuMapper extPluginSysMenuMapper; + private DynamicMenuServiceImpl dynamicMenuService; /** * 此处需被F2CRealm登录认证调用 也就是说每次请求都会被调用 所以最好加上缓存 @@ -65,7 +65,7 @@ public class AuthUserServiceImpl implements AuthUserService { @Override public List permissions(Long userId){ // 用户登录获取菜单权限时同时更新插件菜单表 - this.syncPluginMenu(); + dynamicMenuService.syncPluginMenu(); List permissions; SysUser sysUser = sysUserMapper.selectByPrimaryKey(userId); if(sysUser.getIsAdmin()!=null&&sysUser.getIsAdmin()){ @@ -102,12 +102,4 @@ public class AuthUserServiceImpl implements AuthUserService { LogUtil.info("正在清除用户缓存【{}】",userId); } - @Transactional - public void syncPluginMenu() { - List pluginSysMenuList = PluginUtils.pluginMenus(); - extPluginSysMenuMapper.deletePluginMenu(); - if(CollectionUtils.isNotEmpty(pluginSysMenuList)){ - extPluginSysMenuMapper.savePluginMenu(pluginSysMenuList); - } - } } diff --git a/backend/src/main/java/io/dataease/auth/service/impl/DynamicMenuServiceImpl.java b/backend/src/main/java/io/dataease/auth/service/impl/DynamicMenuServiceImpl.java index fde40b65c2..58369dedcf 100644 --- a/backend/src/main/java/io/dataease/auth/service/impl/DynamicMenuServiceImpl.java +++ b/backend/src/main/java/io/dataease/auth/service/impl/DynamicMenuServiceImpl.java @@ -6,11 +6,15 @@ import io.dataease.auth.service.DynamicMenuService; import io.dataease.base.domain.SysMenu; import io.dataease.base.domain.SysMenuExample; import io.dataease.base.mapper.SysMenuMapper; +import io.dataease.base.mapper.ext.ExtPluginSysMenuMapper; import io.dataease.plugins.common.dto.PluginSysMenu; import io.dataease.plugins.util.PluginUtils; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; @@ -22,6 +26,9 @@ public class DynamicMenuServiceImpl implements DynamicMenuService { @Autowired(required = false) private SysMenuMapper sysMenuMapper; + @Resource + private ExtPluginSysMenuMapper extPluginSysMenuMapper; + @Override public List load(String userId) { SysMenuExample sysMenuExample = new SysMenuExample(); @@ -109,4 +116,13 @@ public class DynamicMenuServiceImpl implements DynamicMenuService { private Boolean isParent(Long pid){ return null == pid || pid==0L; } + + @Transactional + public void syncPluginMenu() { + List pluginSysMenuList = PluginUtils.pluginMenus(); + extPluginSysMenuMapper.deletePluginMenu(); + if(CollectionUtils.isNotEmpty(pluginSysMenuList)){ + extPluginSysMenuMapper.savePluginMenu(pluginSysMenuList); + } + } } diff --git a/frontend/src/views/panel/SubjectSetting/index.vue b/frontend/src/views/panel/SubjectSetting/index.vue index 30661989fc..d52a82afbc 100644 --- a/frontend/src/views/panel/SubjectSetting/index.vue +++ b/frontend/src/views/panel/SubjectSetting/index.vue @@ -14,10 +14,9 @@ - + - - + @@ -25,9 +24,10 @@ - + - + + From 1663560f90c1cbf50ac57d04ef9c91fc612b7474 Mon Sep 17 00:00:00 2001 From: junjie Date: Wed, 23 Jun 2021 17:44:47 +0800 Subject: [PATCH 2/8] =?UTF-8?q?fix:=E8=A7=86=E5=9B=BE=E7=BB=93=E6=9E=9C?= =?UTF-8?q?=E8=BF=87=E6=BB=A4=E5=99=A8=E6=9D=A1=E4=BB=B6=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=AE=B9=E9=94=99=EF=BC=9B=E6=95=B0=E6=8D=AE=E9=9B=86tree?= =?UTF-8?q?=E9=87=8D=E5=91=BD=E5=90=8D=E3=80=81=E5=88=A0=E9=99=A4=E5=90=8E?= =?UTF-8?q?=EF=BC=8C=E5=8F=B3=E4=BE=A7=E7=95=8C=E9=9D=A2=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dataease/provider/doris/DorisQueryProvider.java | 4 ++++ frontend/src/api/dataset/dataset.js | 5 +++-- frontend/src/views/dataset/data/ViewTable.vue | 11 ++++++++++- frontend/src/views/dataset/group/Group.vue | 8 ++++---- 4 files changed, 21 insertions(+), 7 deletions(-) diff --git a/backend/src/main/java/io/dataease/provider/doris/DorisQueryProvider.java b/backend/src/main/java/io/dataease/provider/doris/DorisQueryProvider.java index eb2b7be871..61078a9da0 100644 --- a/backend/src/main/java/io/dataease/provider/doris/DorisQueryProvider.java +++ b/backend/src/main/java/io/dataease/provider/doris/DorisQueryProvider.java @@ -6,6 +6,7 @@ import io.dataease.dto.chart.ChartCustomFilterDTO; import io.dataease.dto.chart.ChartViewFieldDTO; import io.dataease.provider.QueryProvider; import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.lang3.ObjectUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; @@ -366,6 +367,9 @@ public class DorisQueryProvider extends QueryProvider { for (ChartCustomFilterDTO request : requestList) { String value = request.getValue(); DatasetTableField field = request.getField(); + if (ObjectUtils.isEmpty(field)) { + continue; + } if (field.getDeType() == 1 && field.getDeExtractType() != 1) { filter.append(" AND FROM_UNIXTIME(cast(") .append(field.getDataeaseName()) diff --git a/frontend/src/api/dataset/dataset.js b/frontend/src/api/dataset/dataset.js index 610b9981f2..7045b0b9da 100644 --- a/frontend/src/api/dataset/dataset.js +++ b/frontend/src/api/dataset/dataset.js @@ -68,11 +68,12 @@ export function listDatasource() { }) } -export function getTable(id) { +export function getTable(id, hideMsg = false) { return request({ url: '/dataset/table/get/' + id, loading: true, - method: 'post' + method: 'post', + hideMsg: hideMsg }) } diff --git a/frontend/src/views/dataset/data/ViewTable.vue b/frontend/src/views/dataset/data/ViewTable.vue index 4f24f2e784..ee41a2b5af 100644 --- a/frontend/src/views/dataset/data/ViewTable.vue +++ b/frontend/src/views/dataset/data/ViewTable.vue @@ -1,5 +1,6 @@