Przeglądaj źródła

fix 权限修复问题

A17404李放 3 lat temu
rodzic
commit
138b40502b

+ 4 - 0
nb-system/src/main/java/com/nb/bus/hospital/config/HospitalFunctionExtraConfigHandler.java

@@ -177,6 +177,9 @@ public class HospitalFunctionExtraConfigHandler  extends  AbstractHospitalConfig
         //仅智能泵存在
         if(DeviceTypeEnum.intelligent.equals(source.getType())){
             if (source.getFlowDownLimit()!=null&&source.getContinueDose().compareTo(source.getFlowDownLimit())<1) {
+                if(log.isDebugEnabled()){
+                    log.debug("设备【{}】,持续量【{}】,下限【{}】,触发【低输注】延迟任务",source.getDeviceId(),source.getContinueDose(),source.getFlowDownLimit());
+                }
                 //输注量超过阈值,进行低输注判定
                 lastLowInfusionWarn= LowInfusionEntity.builder()
                         .deviceId(source.getDeviceId())
@@ -192,6 +195,7 @@ public class HospitalFunctionExtraConfigHandler  extends  AbstractHospitalConfig
         }else {
             //输注量未超过阈值,取消低输注状态
             if(lastLowInfusionWarn!=null){
+                log.info("设备【{}】不满足低输注状态,取消【低输注】延迟任务【{}】",lastLowInfusionWarn.getId());
                 lowInfusionDelay.remove(lastLowInfusionWarn);
             }
             if(FlowStatusEnum.Lowest.equals(source.getWarnFlow())){

+ 1 - 0
nb-system/src/main/java/com/nb/system/controller/SysRoleController.java

@@ -131,6 +131,7 @@ public class SysRoleController {
         if(SecurityUtil.isSuperAdmin()){
             LambdaQueryWrapper<SysMenu> queryWrapper = Wrappers.lambdaQuery();
             queryWrapper.eq(SysMenu::getStatus, StatusEnum.YES.getCode());
+            queryWrapper.eq(!SecurityUtil.isSys(),SysMenu::getTenantMenu, true);
             queryWrapper.in(SysMenu::getMenuType, MenuTypeEnum.DIR.getCode(), MenuTypeEnum.MENU.getCode());
             return R.success(menuService.list(queryWrapper));
         }

+ 3 - 0
nb-system/src/main/java/com/nb/system/service/impl/SysMenuServiceImpl.java

@@ -246,6 +246,7 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
         LambdaQueryWrapper<SysMenu> queryWrapper = Wrappers.lambdaQuery();
         queryWrapper.eq(SysMenu::getMenuType, MenuTypeEnum.BUTTON.getCode());
         queryWrapper.eq(SysMenu::getStatus, StatusEnum.YES.getCode());
+        queryWrapper.eq(!SecurityUtil.isSys(),SysMenu::getTenantMenu, true);
         queryWrapper.in(SysMenu::getId, menuIds);
         List<SysMenu> sysMenuList = this.list(queryWrapper);
         return sysMenuList.stream().map(item -> item.getPermission()).collect(Collectors.toSet());
@@ -270,6 +271,8 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
         queryWrapper.eq(SysMenu::getStatus, StatusEnum.YES.getCode());
         queryWrapper.in(SysMenu::getMenuType, MenuTypeEnum.DIR.getCode(), MenuTypeEnum.MENU.getCode());
         queryWrapper.in(SysMenu::getId, menuIds);
+        //仅查看租户可见的菜单
+        queryWrapper.eq(!SecurityUtil.isSys(),SysMenu::getTenantMenu, true);
         return this.list(queryWrapper);
     }
 

+ 7 - 3
nb-system/src/main/java/com/nb/system/service/impl/SysRoleServiceImpl.java

@@ -1,6 +1,7 @@
 package com.nb.system.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -21,6 +22,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.annotation.Resource;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Objects;
@@ -167,9 +169,11 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
     @Override
     public List<SysMenu> listRoleMenus(String roleId) {
         List<SysRoleMenu> sysRoleMenuList = sysRoleMenuService.list(Wrappers.lambdaQuery(SysRoleMenu.class).eq(SysRoleMenu::getRoleId, roleId));
-        return sysRoleMenuList.stream().map(item ->
-                sysMenuService.getById(item.getMenuId())
-        ).collect(Collectors.toList());
+        if (CollUtil.isNotEmpty(sysRoleMenuList)) {
+            List<Long> menuIds = sysRoleMenuList.stream().map(SysRoleMenu::getMenuId).collect(Collectors.toList());
+            return sysMenuService.listByIds(menuIds);
+        }
+        return new ArrayList<>();
     }
 
     @Override