|
@@ -2,6 +2,7 @@ package com.bizmatics.service.system.impl;
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
|
+import com.bizmatics.common.core.exception.BusinessException;
|
|
import com.bizmatics.common.core.util.StringUtils;
|
|
import com.bizmatics.common.core.util.StringUtils;
|
|
import com.bizmatics.common.mvc.utils.ServletUtils;
|
|
import com.bizmatics.common.mvc.utils.ServletUtils;
|
|
import com.bizmatics.model.PlatformArea;
|
|
import com.bizmatics.model.PlatformArea;
|
|
@@ -15,6 +16,7 @@ import com.bizmatics.model.vo.*;
|
|
import com.bizmatics.persistence.mapper.system.SysMenuMapper;
|
|
import com.bizmatics.persistence.mapper.system.SysMenuMapper;
|
|
import com.bizmatics.persistence.mapper.system.SysRoleMapper;
|
|
import com.bizmatics.persistence.mapper.system.SysRoleMapper;
|
|
import com.bizmatics.persistence.mapper.system.SysRoleMenuMapper;
|
|
import com.bizmatics.persistence.mapper.system.SysRoleMenuMapper;
|
|
|
|
+import com.bizmatics.persistence.mapper.system.SysUserMapper;
|
|
import com.bizmatics.service.config.security.LoginUser;
|
|
import com.bizmatics.service.config.security.LoginUser;
|
|
import com.bizmatics.service.impl.DeviceServiceImpl;
|
|
import com.bizmatics.service.impl.DeviceServiceImpl;
|
|
import com.bizmatics.service.system.ISysMenuService;
|
|
import com.bizmatics.service.system.ISysMenuService;
|
|
@@ -50,6 +52,9 @@ public class SysMenuServiceImpl implements ISysMenuService {
|
|
@Autowired
|
|
@Autowired
|
|
private TokenService tokenService;
|
|
private TokenService tokenService;
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
+ private SysUserMapper userMapper;
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 根据用户查询系统菜单列表
|
|
* 根据用户查询系统菜单列表
|
|
*
|
|
*
|
|
@@ -633,4 +638,105 @@ public class SysMenuServiceImpl implements ISysMenuService {
|
|
return getChildList(list, t).size() > 0 ? true : false;
|
|
return getChildList(list, t).size() > 0 ? true : false;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 权限管理-列表查询(租户)
|
|
|
|
+ * @param roleId
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ @Override
|
|
|
|
+ public List<Object> getAuthority1(Long roleId) {
|
|
|
|
+ LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest());
|
|
|
|
+ List<SysUser> tenantDaya = userMapper.getTenantId(loginUser.getUser().getUserId());
|
|
|
|
+ if (tenantDaya.size()<0) {
|
|
|
|
+ throw new BusinessException("无此租户,请联系管理员");
|
|
|
|
+ }
|
|
|
|
+ List<SysMenu> menuList = null;
|
|
|
|
+ //全部目录查询
|
|
|
|
+ List<SysMenu> sysMenuListTwo = sysMenuListTwo = menuMapper.getMenuListTwo(loginUser.getUser().getUserId(), "M",tenantDaya.get(0).getTenantId());
|
|
|
|
+ //全部菜单查询
|
|
|
|
+ List<SysMenu> sysMenuListOne = sysMenuListOne = menuMapper.getMenuListTwo(loginUser.getUser().getUserId(), "C",tenantDaya.get(0).getTenantId());
|
|
|
|
+ //全部按钮列表
|
|
|
|
+ List<SysMenu> sysMenuListThree = sysMenuListThree = menuMapper.getMenuListTwo(loginUser.getUser().getUserId(), "F",tenantDaya.get(0).getTenantId());
|
|
|
|
+ //已选中按钮列表
|
|
|
|
+ List<SysMenu> sysMenuListFour = sysMenuListFour = menuMapper.getButtonlistTwo(0L, null, roleId);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ List<SysMenuTwoVo> sysMenuVoListOne = new ArrayList<>();
|
|
|
|
+ List<SysMenuOneVo> SysMenuVoList = new ArrayList<>();
|
|
|
|
+ List<SysMenuVo> SysMenuVoListOne = new ArrayList<>();
|
|
|
|
+ List<Object> list = new ArrayList<>();
|
|
|
|
+// if (sysMenuListFour.size()>0){
|
|
|
|
+ for (int i = 0; i < sysMenuListThree.size(); i++) {
|
|
|
|
+ SysMenuTwoVo sysMenuTwoVo = new SysMenuTwoVo();
|
|
|
|
+ sysMenuTwoVo.setId(sysMenuListThree.get(i).getMenuId());
|
|
|
|
+ sysMenuTwoVo.setName(sysMenuListThree.get(i).getMenuName());
|
|
|
|
+ sysMenuTwoVo.setFid(sysMenuListThree.get(i).getParentId());
|
|
|
|
+ long Id = sysMenuListThree.get(i).getMenuId();
|
|
|
|
+ sysMenuTwoVo.setChecked(false);
|
|
|
|
+ if (sysMenuListFour.size() > 0) {
|
|
|
|
+ for (int j = 0; j < sysMenuListFour.size(); j++) {
|
|
|
|
+ long MenuId = sysMenuListFour.get(j).getMenuId();
|
|
|
|
+ if (Id == MenuId) {
|
|
|
|
+ sysMenuTwoVo.setChecked(true);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ } else {
|
|
|
|
+ sysMenuTwoVo.setChecked(false);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ sysMenuVoListOne.add(sysMenuTwoVo);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ for (int i = 0; i < sysMenuListOne.size(); i++) {
|
|
|
|
+ SysMenuOneVo sysMenuOneVo = new SysMenuOneVo();
|
|
|
|
+ sysMenuOneVo.setId(sysMenuListOne.get(i).getMenuId());
|
|
|
|
+ sysMenuOneVo.setMenu(sysMenuListOne.get(i).getMenuName());
|
|
|
|
+ sysMenuOneVo.setFid(sysMenuListOne.get(i).getParentId());
|
|
|
|
+ long id = sysMenuListOne.get(i).getMenuId();
|
|
|
|
+ List<SysMenuTwoVo> sysMenuVoListTwo = new ArrayList<>();
|
|
|
|
+ for (int j = 0; j < sysMenuVoListOne.size(); j++) {
|
|
|
|
+ long FId = sysMenuVoListOne.get(j).getFid();
|
|
|
|
+ if (id == FId) {
|
|
|
|
+ sysMenuVoListTwo.add(sysMenuVoListOne.get(j));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ sysMenuOneVo.setAuthority(sysMenuVoListTwo);
|
|
|
|
+ SysMenuVoList.add(sysMenuOneVo);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ for (int i = 0; i < sysMenuListTwo.size(); i++) {
|
|
|
|
+ SysMenuVo sysMenuVo = new SysMenuVo();
|
|
|
|
+ sysMenuVo.setId(sysMenuListTwo.get(i).getMenuId());
|
|
|
|
+ sysMenuVo.setMenu(sysMenuListTwo.get(i).getMenuName());
|
|
|
|
+ sysMenuVo.setFid(sysMenuListTwo.get(i).getParentId());
|
|
|
|
+ long id = sysMenuListTwo.get(i).getMenuId();
|
|
|
|
+ List<SysMenuOneVo> SysMenuVoListThree = new ArrayList<>();
|
|
|
|
+ for (int j = 0; j < SysMenuVoList.size(); j++) {
|
|
|
|
+ long FId = SysMenuVoList.get(j).getFid();
|
|
|
|
+ if (id == FId) {
|
|
|
|
+ SysMenuVoListThree.add(SysMenuVoList.get(j));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ sysMenuVo.setChildren(SysMenuVoListThree);
|
|
|
|
+ SysMenuVoListOne.add(sysMenuVo);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ for (int i = 0; i < SysMenuVoListOne.size(); i++) {
|
|
|
|
+ String name = SysMenuVoListOne.get(i).getMenu();
|
|
|
|
+ if (name.equals("数据管理") || name.equals("电能质量") || name.equals("系统管理")) {
|
|
|
|
+ list.add(SysMenuVoListOne.get(i));
|
|
|
|
+ } else {
|
|
|
|
+ for (int j = 0; j < SysMenuVoList.size(); j++) {
|
|
|
|
+ String name2 = SysMenuVoList.get(j).getMenu();
|
|
|
|
+ if (name.equals(name2)) {
|
|
|
|
+ list.add(SysMenuVoList.get(j));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+// }
|
|
|
|
+ return list;
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|