|
|
@ -463,14 +463,14 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> { |
|
|
|
String deptSid = ""; |
|
|
|
if (StringUtils.isNotBlank(vv.getOrgSidPath())) { |
|
|
|
List<String> split = Arrays.asList(vv.getOrgSidPath().split("/")); |
|
|
|
if(split.size()>1){ |
|
|
|
if (split.size() > 1) { |
|
|
|
//获取本级sid获取本级部门信息
|
|
|
|
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(split.get(split.size()-2)); |
|
|
|
SysOrganization sysOrganization1 = sysOrganizationService.fetchBySid(split.get(split.size()-1)); |
|
|
|
orgName = sysOrganization.getName()+"/"+sysOrganization1.getName(); |
|
|
|
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(split.get(split.size() - 2)); |
|
|
|
SysOrganization sysOrganization1 = sysOrganizationService.fetchBySid(split.get(split.size() - 1)); |
|
|
|
orgName = sysOrganization.getName() + "/" + sysOrganization1.getName(); |
|
|
|
deptName = sysOrganization1.getName(); |
|
|
|
deptSid = sysOrganization1.getSid(); |
|
|
|
}else{ |
|
|
|
} else { |
|
|
|
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(split.get(0)); |
|
|
|
orgName = sysOrganization.getName(); |
|
|
|
deptName = sysOrganization.getName(); |
|
|
@ -1300,12 +1300,12 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> { |
|
|
|
String orgName = ""; |
|
|
|
if (StringUtils.isNotBlank(vv.getOrgSidPath())) { |
|
|
|
List<String> split = Arrays.asList(vv.getOrgSidPath().split("/")); |
|
|
|
if(split.size()>1){ |
|
|
|
if (split.size() > 1) { |
|
|
|
//获取本级sid获取本级部门信息
|
|
|
|
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(split.get(split.size()-2)); |
|
|
|
SysOrganization sysOrganization1 = sysOrganizationService.fetchBySid(split.get(split.size()-1)); |
|
|
|
orgName = sysOrganization.getName()+"/"+sysOrganization1.getName(); |
|
|
|
}else{ |
|
|
|
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(split.get(split.size() - 2)); |
|
|
|
SysOrganization sysOrganization1 = sysOrganizationService.fetchBySid(split.get(split.size() - 1)); |
|
|
|
orgName = sysOrganization.getName() + "/" + sysOrganization1.getName(); |
|
|
|
} else { |
|
|
|
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(split.get(0)); |
|
|
|
orgName = sysOrganization.getName(); |
|
|
|
} |
|
|
@ -1352,19 +1352,19 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> { |
|
|
|
ResultBean<List<SysUserVo>> rb = ResultBean.fireFail(); |
|
|
|
List<String> roleSids = userQuery.getRoleSids(); |
|
|
|
String orgSidPath = userQuery.getOrgSidPath(); |
|
|
|
List<SysUserVo> list=new ArrayList<>(); |
|
|
|
for(String s:roleSids){ |
|
|
|
UserQuery uq=new UserQuery(); |
|
|
|
List<SysUserVo> list = new ArrayList<>(); |
|
|
|
for (String s : roleSids) { |
|
|
|
UserQuery uq = new UserQuery(); |
|
|
|
uq.setRoleSid(s); |
|
|
|
uq.setOrgSidPath(orgSidPath); |
|
|
|
ResultBean<List<SysUserVo>> userByRole = getUserByRole(uq); |
|
|
|
if(userByRole.getSuccess()){ |
|
|
|
if (userByRole.getSuccess()) { |
|
|
|
List<SysUserVo> data = userByRole.getData(); |
|
|
|
data.forEach( f->{ |
|
|
|
data.forEach(f -> { |
|
|
|
list.add(f); |
|
|
|
}); |
|
|
|
}else{ |
|
|
|
log.error("角色获取人员--s:"+userByRole.getMsg()); |
|
|
|
} else { |
|
|
|
log.error("角色获取人员--s:" + userByRole.getMsg()); |
|
|
|
} |
|
|
|
} |
|
|
|
return rb.success().setData(list); |
|
|
@ -1378,7 +1378,7 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> { |
|
|
|
//部门list
|
|
|
|
List<String> orgList = shareUserQuery.getOrgSids(); |
|
|
|
//查询该部门下子集部门的人员以及该部门下的人员
|
|
|
|
if(orgList != null && orgList.size()>0){ |
|
|
|
if (orgList != null && orgList.size() > 0) { |
|
|
|
for (int i = 0; i < orgList.size(); i++) { |
|
|
|
String orgSid = orgList.get(i); |
|
|
|
//查询该部门下的所有人员以及查询该部门的子集下的所有人员
|
|
|
@ -1386,12 +1386,68 @@ public class SysUserService extends MybatisBaseService<SysUserMapper, SysUser> { |
|
|
|
staffList.addAll(staffSidList); |
|
|
|
} |
|
|
|
} |
|
|
|
if(memberList != null && memberList.size()>0){ |
|
|
|
if (memberList != null && memberList.size() > 0) { |
|
|
|
staffList.addAll(memberList); |
|
|
|
} |
|
|
|
//去重
|
|
|
|
staffList=staffList.stream().distinct().collect(Collectors.toList()); |
|
|
|
staffList = staffList.stream().distinct().collect(Collectors.toList()); |
|
|
|
List<String> userSidList = baseMapper.selectUserByStaffSid(staffList); |
|
|
|
return rb.success().setData(userSidList); |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean<String> selectPrivilegeLevel(PrivilegeQuery query) { |
|
|
|
ResultBean<String> rb = ResultBean.fireFail(); |
|
|
|
String defalutId = ""; |
|
|
|
if (StringUtils.isBlank(query.getMenuSid())) { |
|
|
|
//根据菜单路由查询菜单的sid
|
|
|
|
List<SysMenu> sysMenuList = sysMenuService.selectByMenuUrl(query.getMenuUrl()); |
|
|
|
if (sysMenuList.size() > 1) { |
|
|
|
return rb.setMsg("当前菜单的路由存在多个,请联系管理员"); |
|
|
|
} else if (sysMenuList.size() == 0) { |
|
|
|
return rb.setMsg("当前菜单不存在"); |
|
|
|
} else { |
|
|
|
String menuSid = sysMenuList.get(0).getSid(); |
|
|
|
//根据层级查找角色
|
|
|
|
List<String> stringList = Arrays.asList(query.getOrgPath().split("/")); |
|
|
|
//最后一级的sid所属层级
|
|
|
|
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(stringList.get(stringList.size() - 1)); |
|
|
|
//查询层级对应的角色权限id
|
|
|
|
List<String> roleSid = sysRoleService.selectByRole(sysOrganization.getOrgLevelKey(), menuSid,query.getUserSid()); |
|
|
|
roleSid.removeAll(Collections.singleton(null)); |
|
|
|
if (!roleSid.isEmpty()) { |
|
|
|
for (int i = 0; i < roleSid.size(); i++) { |
|
|
|
if (StringUtils.isNotBlank(roleSid.get(i))) { |
|
|
|
defalutId = roleSid.get(i); |
|
|
|
break; |
|
|
|
} else { |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} else { |
|
|
|
String menuSid = query.getMenuSid(); |
|
|
|
//根据层级查找角色
|
|
|
|
List<String> stringList = Arrays.asList(query.getOrgPath().split("/")); |
|
|
|
//最后一级的sid所属层级
|
|
|
|
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(stringList.get(stringList.size() - 1)); |
|
|
|
//查询层级对应的角色权限id
|
|
|
|
List<String> roleSid = sysRoleService.selectByRole(sysOrganization.getOrgLevelKey(), menuSid,query.getUserSid()); |
|
|
|
roleSid.removeAll(Collections.singleton(null)); |
|
|
|
if (!roleSid.isEmpty()) { |
|
|
|
for (int i = 0; i < roleSid.size(); i++) { |
|
|
|
if (StringUtils.isNotBlank(roleSid.get(i))) { |
|
|
|
defalutId = roleSid.get(i); |
|
|
|
break; |
|
|
|
} else { |
|
|
|
continue; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
if(StringUtils.isBlank(defalutId)) { |
|
|
|
defalutId = "0"; |
|
|
|
} |
|
|
|
return rb.success().setData(defalutId); |
|
|
|
} |
|
|
|
} |