更新
This commit is contained in:
parent
4b99b44d08
commit
5e266677c6
File diff suppressed because one or more lines are too long
@ -60,6 +60,7 @@
|
||||
router.push({path: 'index'});
|
||||
}
|
||||
}).catch(()=>{
|
||||
onCode()
|
||||
state.loading = false;
|
||||
})
|
||||
}
|
||||
|
||||
@ -35,7 +35,6 @@ public class SysDictController {
|
||||
@ApiOperation(value = "列表树", notes = "列表树")
|
||||
@Log(modul = "字典管理", type = Constants.SELECT, desc = "列表树")
|
||||
@GetMapping("/tree")
|
||||
@SaCheckPermission("dict:list")
|
||||
public Wrapper<List<SysDict>> tree(SysDict dict) {
|
||||
return WrapMapper.wrap(Wrapper.SUCCESS_CODE, Wrapper.SUCCESS_MESSAGE, sysDictService.tree(dict));
|
||||
}
|
||||
@ -43,7 +42,6 @@ public class SysDictController {
|
||||
@ApiOperation(value = "列表", notes = "列表")
|
||||
@Log(modul = "字典管理", type = Constants.SELECT, desc = "列表")
|
||||
@GetMapping("/list")
|
||||
@SaCheckPermission("dict:list")
|
||||
public Wrapper<List<SysDict>> list(SysDict dict) {
|
||||
return WrapMapper.wrap(Wrapper.SUCCESS_CODE, Wrapper.SUCCESS_MESSAGE, sysDictService.list(dict));
|
||||
}
|
||||
|
||||
@ -4,9 +4,11 @@ import cn.dev33.satoken.stp.StpInterface;
|
||||
import cn.dev33.satoken.stp.StpUtil;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.tansci.common.constant.Constants;
|
||||
import com.tansci.common.constant.Enums;
|
||||
import com.tansci.domain.SysMenu;
|
||||
import com.tansci.domain.SysRoleMenu;
|
||||
import com.tansci.domain.SysUserRole;
|
||||
import com.tansci.domain.vo.SysUserSessionVo;
|
||||
import com.tansci.service.SysMenuService;
|
||||
import com.tansci.service.SysRoleMenuService;
|
||||
import com.tansci.service.SysUserRoleService;
|
||||
@ -43,25 +45,40 @@ public class StpInterfaceHandler implements StpInterface {
|
||||
* @return: java.util.List<java.lang.String>
|
||||
**/
|
||||
@Override
|
||||
public List<String> getPermissionList(Object o, String s) {
|
||||
if (Objects.nonNull(StpUtil.getSession().get(Constants.PERMISSION_KEY))) {
|
||||
return (List<String>) StpUtil.getSession().get(Constants.PERMISSION_KEY);
|
||||
} else {
|
||||
List<SysUserRole> roles = sysUserRoleService.list(Wrappers.<SysUserRole>lambdaQuery().eq(SysUserRole::getUserId, StpUtil.getLoginId()));
|
||||
if (Objects.nonNull(roles) && roles.size() > 0) {
|
||||
List<String> roleIds = roles.stream().map(SysUserRole::getRoleId).collect(Collectors.toList());
|
||||
List<SysRoleMenu> roleMenus = sysRoleMenuService.list(Wrappers.<SysRoleMenu>lambdaQuery().in(SysRoleMenu::getRoleId, roleIds));
|
||||
if (Objects.nonNull(roleMenus) && roleMenus.size() > 0) {
|
||||
List<SysMenu> menus = sysMenuService.list(
|
||||
Wrappers.<SysMenu>lambdaQuery()
|
||||
.in(SysMenu::getId, roleMenus.stream().map(SysRoleMenu::getMenuId).collect(Collectors.toList()))
|
||||
.eq(SysMenu::getIsDel, Constants.NOT_DEL_FALG)
|
||||
.ne(SysMenu::getPermission, "")
|
||||
.isNotNull(SysMenu::getPermission)
|
||||
);
|
||||
List<String> permissions = menus.stream().map(SysMenu::getPermission).collect(Collectors.toList());
|
||||
StpUtil.getSession().set(Constants.ROLE_KEY, permissions);
|
||||
return permissions;
|
||||
public List<String> getPermissionList(Object loginId, String loginType) {
|
||||
SysUserSessionVo userSession = (SysUserSessionVo) StpUtil.getSession().get(StpUtil.getLoginId().toString());
|
||||
if (Objects.nonNull(userSession)) {
|
||||
if (Objects.nonNull(StpUtil.getSession().get(Constants.PERMISSION_KEY))) {
|
||||
return (List<String>) StpUtil.getSession().get(Constants.PERMISSION_KEY);
|
||||
}
|
||||
|
||||
if (Objects.equals(Enums.USER_TYPE_1.getKey(), userSession.getType())) {
|
||||
List<SysMenu> menus = sysMenuService.list(
|
||||
Wrappers.<SysMenu>lambdaQuery()
|
||||
.eq(SysMenu::getIsDel, Constants.NOT_DEL_FALG)
|
||||
.ne(SysMenu::getPermission, "")
|
||||
.isNotNull(SysMenu::getPermission)
|
||||
);
|
||||
List<String> permissions = menus.stream().map(SysMenu::getPermission).collect(Collectors.toList());
|
||||
StpUtil.getSession().set(Constants.PERMISSION_KEY, permissions);
|
||||
return permissions;
|
||||
} else {
|
||||
List<SysUserRole> roles = sysUserRoleService.list(Wrappers.<SysUserRole>lambdaQuery().eq(SysUserRole::getUserId, StpUtil.getLoginId()));
|
||||
if (Objects.nonNull(roles) && roles.size() > 0) {
|
||||
List<String> roleIds = roles.stream().map(SysUserRole::getRoleId).collect(Collectors.toList());
|
||||
List<SysRoleMenu> roleMenus = sysRoleMenuService.list(Wrappers.<SysRoleMenu>lambdaQuery().in(SysRoleMenu::getRoleId, roleIds));
|
||||
if (Objects.nonNull(roleMenus) && roleMenus.size() > 0) {
|
||||
List<SysMenu> menus = sysMenuService.list(
|
||||
Wrappers.<SysMenu>lambdaQuery()
|
||||
.in(SysMenu::getId, roleMenus.stream().map(SysRoleMenu::getMenuId).collect(Collectors.toList()))
|
||||
.eq(SysMenu::getIsDel, Constants.NOT_DEL_FALG)
|
||||
.ne(SysMenu::getPermission, "")
|
||||
.isNotNull(SysMenu::getPermission)
|
||||
);
|
||||
List<String> permissions = menus.stream().map(SysMenu::getPermission).collect(Collectors.toList());
|
||||
StpUtil.getSession().set(Constants.PERMISSION_KEY, permissions);
|
||||
return permissions;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -77,15 +94,24 @@ public class StpInterfaceHandler implements StpInterface {
|
||||
* @return: java.util.List<java.lang.String>
|
||||
**/
|
||||
@Override
|
||||
public List<String> getRoleList(Object o, String s) {
|
||||
if (Objects.nonNull(StpUtil.getSession().get(Constants.ROLE_KEY))) {
|
||||
return (List<String>) StpUtil.getSession().get(Constants.ROLE_KEY);
|
||||
} else {
|
||||
List<SysUserRole> roles = sysUserRoleService.list(Wrappers.<SysUserRole>lambdaQuery().eq(SysUserRole::getUserId, StpUtil.getLoginId()));
|
||||
if (Objects.nonNull(roles) && roles.size() > 0) {
|
||||
List<String> roleIds = roles.stream().map(SysUserRole::getRoleId).collect(Collectors.toList());
|
||||
public List<String> getRoleList(Object loginId, String loginType) {
|
||||
SysUserSessionVo userSession = (SysUserSessionVo) StpUtil.getSession().get(StpUtil.getLoginId().toString());
|
||||
if (Objects.nonNull(userSession)) {
|
||||
if (Objects.nonNull(StpUtil.getSession().get(Constants.ROLE_KEY))) {
|
||||
return (List<String>) StpUtil.getSession().get(Constants.ROLE_KEY);
|
||||
}
|
||||
|
||||
if (Objects.equals(Enums.USER_TYPE_1.getKey(), userSession.getType())) {
|
||||
List<String> roleIds = sysUserRoleService.list().stream().map(SysUserRole::getRoleId).collect(Collectors.toList());
|
||||
StpUtil.getSession().set(Constants.ROLE_KEY, roleIds);
|
||||
return roleIds;
|
||||
} else {
|
||||
List<SysUserRole> roles = sysUserRoleService.list(Wrappers.<SysUserRole>lambdaQuery().eq(SysUserRole::getUserId, StpUtil.getLoginId()));
|
||||
if (Objects.nonNull(roles) && roles.size() > 0) {
|
||||
List<String> roleIds = roles.stream().map(SysUserRole::getRoleId).collect(Collectors.toList());
|
||||
StpUtil.getSession().set(Constants.ROLE_KEY, roleIds);
|
||||
return roleIds;
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
|
||||
@ -5,9 +5,11 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.tansci.common.constant.Constants;
|
||||
import com.tansci.common.constant.Enums;
|
||||
import com.tansci.domain.SysMenu;
|
||||
import com.tansci.domain.SysRoleMenu;
|
||||
import com.tansci.domain.vo.SysMenuVo;
|
||||
import com.tansci.domain.vo.SysUserSessionVo;
|
||||
import com.tansci.mapper.SysMenuMapper;
|
||||
import com.tansci.service.SysMenuService;
|
||||
import com.tansci.service.SysRoleMenuService;
|
||||
@ -35,20 +37,33 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
||||
@Override
|
||||
public List<SysMenu> tree(SysMenu menu) {
|
||||
List<String> menuIds = Lists.newArrayList();
|
||||
if (Objects.nonNull(StpUtil.getRoleList()) && StpUtil.getRoleList().size() > 0) {
|
||||
List<SysRoleMenu> menus = sysRoleMenuService.list(Wrappers.<SysRoleMenu>lambdaQuery().eq(SysRoleMenu::getRoleId, StpUtil.getRoleList()));
|
||||
SysUserSessionVo userSession = (SysUserSessionVo) StpUtil.getSession().get(StpUtil.getLoginId().toString());
|
||||
if (Objects.nonNull(userSession) && Objects.equals(Enums.USER_TYPE_1.getKey(), userSession.getType())) {
|
||||
menuIds.addAll(this.list().stream().map(SysMenu::getId).collect(Collectors.toList()));
|
||||
} else {
|
||||
List<SysRoleMenu> menus = sysRoleMenuService.list(Wrappers.<SysRoleMenu>lambdaQuery().
|
||||
in(Objects.nonNull(StpUtil.getRoleList()) && StpUtil.getRoleList().size() > 0, SysRoleMenu::getRoleId, StpUtil.getRoleList())
|
||||
);
|
||||
menuIds.addAll(menus.stream().map(SysRoleMenu::getMenuId).collect(Collectors.toList()));
|
||||
}
|
||||
if (Objects.isNull(menuIds) || menuIds.size() == 0) {
|
||||
return Lists.newArrayList();
|
||||
}
|
||||
|
||||
List<SysMenu> list = this.baseMapper.selectList(
|
||||
Wrappers.<SysMenu>lambdaQuery()
|
||||
.eq(SysMenu::getIsDel, Constants.NOT_DEL_FALG)
|
||||
.eq(Objects.nonNull(menuIds) && menuIds.size() > 0, SysMenu::getId, menuIds)
|
||||
.in(Objects.nonNull(menuIds) && menuIds.size() > 0, SysMenu::getId, menuIds)
|
||||
.eq(Objects.nonNull(menu.getParentId()), SysMenu::getParentId, menu.getParentId())
|
||||
.like(Objects.nonNull(menu.getName()), SysMenu::getName, menu.getName())
|
||||
.like(Objects.nonNull(menu.getChineseName()), SysMenu::getChineseName, menu.getChineseName())
|
||||
.orderByDesc(SysMenu::getUpdateTime)
|
||||
);
|
||||
|
||||
if (Objects.isNull(list) || list.size() == 0) {
|
||||
return Lists.newArrayList();
|
||||
}
|
||||
|
||||
list = list.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(SysMenu::getId))), ArrayList::new));
|
||||
Map<String, List<SysMenu>> map = list.stream().collect(Collectors.groupingBy(SysMenu::getParentId, Collectors.toList()));
|
||||
list.stream().forEach(item -> item.setChildren(map.get(item.getId())));
|
||||
@ -60,19 +75,31 @@ public class SysMenuServiceImpl extends ServiceImpl<SysMenuMapper, SysMenu> impl
|
||||
@Override
|
||||
public List<SysMenuVo> menus() {
|
||||
List<String> menuIds = Lists.newArrayList();
|
||||
if (Objects.nonNull(StpUtil.getRoleList()) && StpUtil.getRoleList().size() > 0) {
|
||||
List<SysRoleMenu> menus = sysRoleMenuService.list(Wrappers.<SysRoleMenu>lambdaQuery().eq(SysRoleMenu::getRoleId, StpUtil.getRoleList()));
|
||||
SysUserSessionVo userSession = (SysUserSessionVo) StpUtil.getSession().get(StpUtil.getLoginId().toString());
|
||||
if (Objects.nonNull(userSession) && Objects.equals(Enums.USER_TYPE_1.getKey(), userSession.getType())) {
|
||||
menuIds.addAll(this.list().stream().map(SysMenu::getId).collect(Collectors.toList()));
|
||||
} else {
|
||||
List<SysRoleMenu> menus = sysRoleMenuService.list(Wrappers.<SysRoleMenu>lambdaQuery().
|
||||
in(Objects.nonNull(StpUtil.getRoleList()) && StpUtil.getRoleList().size() > 0, SysRoleMenu::getRoleId, StpUtil.getRoleList())
|
||||
);
|
||||
menuIds.addAll(menus.stream().map(SysRoleMenu::getMenuId).collect(Collectors.toList()));
|
||||
}
|
||||
if (Objects.isNull(menuIds) || menuIds.size() == 0) {
|
||||
return Lists.newArrayList();
|
||||
}
|
||||
|
||||
List<SysMenu> list = this.baseMapper.selectList(
|
||||
Wrappers.<SysMenu>lambdaQuery()
|
||||
.eq(SysMenu::getIsDel, Constants.NOT_DEL_FALG)
|
||||
.eq(SysMenu::getIsShow, 1)
|
||||
.eq(Objects.nonNull(menuIds) && menuIds.size() > 0, SysMenu::getId, menuIds)
|
||||
.in(Objects.nonNull(menuIds) && menuIds.size() > 0, SysMenu::getId, menuIds)
|
||||
.orderByAsc(SysMenu::getSort)
|
||||
);
|
||||
|
||||
if (Objects.isNull(list) || list.size() == 0) {
|
||||
return Lists.newArrayList();
|
||||
}
|
||||
|
||||
List<SysMenuVo> newList = new ArrayList<>();
|
||||
for (SysMenu menu : list) {
|
||||
Map<String, Object> meta = new HashMap<>();
|
||||
|
||||
@ -5,8 +5,10 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.tansci.common.constant.Constants;
|
||||
import com.tansci.common.constant.Enums;
|
||||
import com.tansci.domain.SysOrg;
|
||||
import com.tansci.domain.SysRoleOrg;
|
||||
import com.tansci.domain.vo.SysUserSessionVo;
|
||||
import com.tansci.mapper.SysOrgMapper;
|
||||
import com.tansci.service.SysOrgService;
|
||||
import com.tansci.service.SysRoleOrgService;
|
||||
@ -34,15 +36,23 @@ public class SysOrgServiceImpl extends ServiceImpl<SysOrgMapper, SysOrg> impleme
|
||||
@Override
|
||||
public List<SysOrg> list(SysOrg org) {
|
||||
List<String> orgIds = Lists.newArrayList();
|
||||
if (Objects.nonNull(StpUtil.getRoleList()) && StpUtil.getRoleList().size() > 0) {
|
||||
List<SysRoleOrg> menus = sysRoleOrgService.list(Wrappers.<SysRoleOrg>lambdaQuery().eq(SysRoleOrg::getRoleId, StpUtil.getRoleList()));
|
||||
SysUserSessionVo userSession = (SysUserSessionVo) StpUtil.getSession().get(StpUtil.getLoginId().toString());
|
||||
if (Objects.nonNull(userSession) && Objects.equals(Enums.USER_TYPE_1.getKey(), userSession.getType())) {
|
||||
orgIds.addAll(this.baseMapper.selectList(Wrappers.lambdaQuery()).stream().map(SysOrg::getId).collect(Collectors.toList()));
|
||||
} else {
|
||||
List<SysRoleOrg> menus = sysRoleOrgService.list(Wrappers.<SysRoleOrg>lambdaQuery().
|
||||
in(Objects.nonNull(StpUtil.getRoleList()) && StpUtil.getRoleList().size() > 0, SysRoleOrg::getRoleId, StpUtil.getRoleList())
|
||||
);
|
||||
orgIds.addAll(menus.stream().map(SysRoleOrg::getOrgId).collect(Collectors.toList()));
|
||||
}
|
||||
if (Objects.isNull(orgIds) || orgIds.size() == 0) {
|
||||
return Lists.newArrayList();
|
||||
}
|
||||
|
||||
List<SysOrg> list = this.baseMapper.selectList(
|
||||
Wrappers.<SysOrg>lambdaQuery()
|
||||
.eq(SysOrg::getIsDel, Constants.NOT_DEL_FALG)
|
||||
.eq(Objects.nonNull(orgIds) && orgIds.size() > 0, SysOrg::getId, orgIds)
|
||||
.in(Objects.nonNull(orgIds) && orgIds.size() > 0, SysOrg::getId, orgIds)
|
||||
.eq(Objects.nonNull(org.getParentId()), SysOrg::getParentId, org.getParentId())
|
||||
.eq(Objects.nonNull(org.getCode()), SysOrg::getCode, org.getCode())
|
||||
.like(Objects.nonNull(org.getName()), SysOrg::getName, org.getName())
|
||||
|
||||
Loading…
Reference in New Issue
Block a user