|
|
@ -54,10 +54,8 @@ public class ProRoleService implements IProRoleService { |
|
|
|
RoleVo.QueryRole role = new RoleVo.QueryRole(); |
|
|
|
//角色显示的角色
|
|
|
|
List<RoleVo.RoleInfo> visibleList = new ArrayList<>(); |
|
|
|
RoleVo.RoleInfo RoleInfo = new RoleVo.RoleInfo(); |
|
|
|
//不显示的角色
|
|
|
|
List<RoleVo.RoleInfo> invisibleList = new ArrayList<>(); |
|
|
|
List<RoleVo.RoleInfo> invisibleList1 = new ArrayList<>(); |
|
|
|
//查询当前用户所属的角色的list
|
|
|
|
List<Long> roleIds = new ArrayList<>(); |
|
|
|
//对自己不可见的角色的list
|
|
|
@ -98,13 +96,15 @@ public class ProRoleService implements IProRoleService { |
|
|
|
proRoleExample.createCriteria().andProjectIdEqualTo(param.getProjectId()); |
|
|
|
proRoles = proRoleMapper.selectByExample(proRoleExample); //前端 后端 UI
|
|
|
|
//在一个集合里面 去除另外一个集合 1 2 3 1 2
|
|
|
|
for (ProRole proRole : proRoles) { |
|
|
|
Iterator<ProRole> iterator7 = proRoles.iterator(); |
|
|
|
while (iterator7.hasNext()) { |
|
|
|
ProRole proRole = iterator7.next(); |
|
|
|
if(roleIds1.size()> 0){ //不可见的角色大于0
|
|
|
|
for (int i = 0; i < roleIds1.size(); i++) { |
|
|
|
int size = roleIds.size(); //当前用户只有一个角色
|
|
|
|
if(size == 1){ |
|
|
|
if (proRole.getId().equals(roleIds1.get(i))) { |
|
|
|
// proRoles.remove(proRole); //去除不可见角色
|
|
|
|
iterator7.remove(); //去除不可见角色
|
|
|
|
} |
|
|
|
}else { |
|
|
|
//不可见角色没有
|
|
|
@ -122,26 +122,7 @@ public class ProRoleService implements IProRoleService { |
|
|
|
iterator5.remove(); //把项目经理角色拿出去
|
|
|
|
} |
|
|
|
} |
|
|
|
/*for (int i = 0; i < proRoles.size(); i++) { |
|
|
|
String PM = labelDao.queryIsPm(proRoles.get(i).getLabelId()); |
|
|
|
if (StrUtil.isNotEmpty(PM)) { //是项目经理
|
|
|
|
ProRole proRole = proRoles.get(i); |
|
|
|
proRoles1.add(proRole); |
|
|
|
proRoles.remove(proRole); //把项目经理角色拿出去
|
|
|
|
} |
|
|
|
}*/ |
|
|
|
//进行排序 把我的角色拿出来
|
|
|
|
/*for (int i = 0; i < proRoles.size(); i++) { |
|
|
|
//是否是mine 判断是不是自己的角色// 0否 1是
|
|
|
|
for (Long roleId : roleIds) { |
|
|
|
Long id = proRoles.get(i).getId(); |
|
|
|
if (roleId.equals(id)) { |
|
|
|
proRoles1.add(proRoles.get(i)); |
|
|
|
proRoles.remove(proRoles.get(i)); //把我的角色拿出去
|
|
|
|
} |
|
|
|
} |
|
|
|
}*/ |
|
|
|
|
|
|
|
for (int i = 0; i < proRoles.size(); i++) { |
|
|
|
//是否是mine 判断是不是自己的角色// 0否 1是
|
|
|
|
if(!roleIds.isEmpty()){ |
|
|
@ -193,7 +174,6 @@ public class ProRoleService implements IProRoleService { |
|
|
|
for (int i = 0; i < proRoles.size(); i++) { |
|
|
|
proRoles1.add(proRoles.get(i)); |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
} else { //用户是游客 是 查询所有 未设置对谁不可见信息 的角色 通过角色id去查找 role_id
|
|
|
@ -268,6 +248,7 @@ public class ProRoleService implements IProRoleService { |
|
|
|
Long id1 = proRoles1.get(i).getId(); |
|
|
|
if (roleId1.equals(id1)) { |
|
|
|
RoleInfo1.setMine(1L); |
|
|
|
break; |
|
|
|
} else { |
|
|
|
RoleInfo1.setMine(0L); |
|
|
|
} |
|
|
@ -279,7 +260,7 @@ public class ProRoleService implements IProRoleService { |
|
|
|
RoleInfo1.setSequence((long) i+1); |
|
|
|
invisibleList.add(RoleInfo1); |
|
|
|
} |
|
|
|
//proRoleShows里面就是设置过的
|
|
|
|
//proRoleShows里面就是设置过的 设置过的里面id是否设置了不可见
|
|
|
|
for (ProRoleShow proRoleShow : proRoleShows) { |
|
|
|
ProRoleExample proRoleExample = new ProRoleExample(); |
|
|
|
proRoleExample.createCriteria().andIdEqualTo(proRoleShow.getRoleId()); |
|
|
@ -301,6 +282,7 @@ public class ProRoleService implements IProRoleService { |
|
|
|
Long id1 = proRoles2.get(0).getId(); |
|
|
|
if (roleId1.equals(id1)) { |
|
|
|
RoleInfo1.setMine(1L); |
|
|
|
break; |
|
|
|
} else { |
|
|
|
RoleInfo1.setMine(0L); |
|
|
|
} |
|
|
@ -320,8 +302,7 @@ public class ProRoleService implements IProRoleService { |
|
|
|
RoleInfo1.setId(proRoles1.get(i).getId()); |
|
|
|
RoleInfo1.setName(proRoles1.get(i).getName()); |
|
|
|
//是否是pm
|
|
|
|
Long index = proRoles1.get(i).getLabelId()+1; |
|
|
|
String PM = labelDao.queryIsPm(index); |
|
|
|
String PM = labelDao.queryIsPm(proRoles1.get(i).getLabelId()); |
|
|
|
if (StrUtil.isNotEmpty(PM)) { //是
|
|
|
|
RoleInfo1.setPm(1L); |
|
|
|
} else { |
|
|
@ -333,6 +314,7 @@ public class ProRoleService implements IProRoleService { |
|
|
|
Long id = proRoles1.get(i).getId(); |
|
|
|
if (roleId.equals(id)) { |
|
|
|
RoleInfo1.setMine(1L); |
|
|
|
break; |
|
|
|
} else { |
|
|
|
RoleInfo1.setMine(0L); |
|
|
|
} |
|
|
@ -352,8 +334,7 @@ public class ProRoleService implements IProRoleService { |
|
|
|
RoleInfo1.setId(proRoles1.get(i).getId()); |
|
|
|
RoleInfo1.setName(proRoles1.get(i).getName()); |
|
|
|
//是否是pm
|
|
|
|
Long index = proRoles1.get(i).getLabelId()+1; |
|
|
|
String PM = labelDao.queryIsPm(index); |
|
|
|
String PM = labelDao.queryIsPm(proRoles1.get(i).getLabelId()); |
|
|
|
if (StrUtil.isNotEmpty(PM)) { //是
|
|
|
|
RoleInfo1.setPm(1L); |
|
|
|
} else { |
|
|
@ -365,6 +346,7 @@ public class ProRoleService implements IProRoleService { |
|
|
|
Long id = proRoles1.get(i).getId(); |
|
|
|
if (roleId.equals(id)) { |
|
|
|
RoleInfo1.setMine(1L); |
|
|
|
break; |
|
|
|
} else { |
|
|
|
RoleInfo1.setMine(0L); |
|
|
|
} |
|
|
@ -396,6 +378,7 @@ public class ProRoleService implements IProRoleService { |
|
|
|
Long id = proRoles1.get(i).getId(); |
|
|
|
if (roleId.equals(id)) { |
|
|
|
RoleInfo1.setMine(1L); |
|
|
|
break; |
|
|
|
} else { |
|
|
|
RoleInfo1.setMine(0L); |
|
|
|
} |
|
|
|