角色切换

This commit is contained in:
qq787203167
2022-06-14 19:21:32 +08:00
parent 0584100d94
commit c3795dfbfe
@@ -54,9 +54,9 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
// 去除 listSysRoles 中重复的数据
for (int i = 0; i < listSysRoles.size(); i++) {
String roleCodeI =((SysRole)listSysRoles.get(i)).getRoleCode();
String roleCodeI = ((SysRole) listSysRoles.get(i)).getRoleCode();
for (int j = i + 1; j < listSysRoles.size(); j++) {
String roleCodeJ =((SysRole)listSysRoles.get(j)).getRoleCode();
String roleCodeJ = ((SysRole) listSysRoles.get(j)).getRoleCode();
// 发现重复数据
if (roleCodeI.equals(roleCodeJ)) {
errorStrs.add("" + (j + 1) + " 行的 roleCode 值:" + roleCodeI + " 已存在,忽略导入");
@@ -66,12 +66,12 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
}
}
// 去掉 sql 中的重复数据
Integer errorLines=0;
Integer successLines=0;
Integer errorLines = 0;
Integer successLines = 0;
List<String> list = ImportExcelUtil.importDateSave(listSysRoles, ISysRoleService.class, errorStrs, CommonConstant.SQL_INDEX_UNIQ_SYS_ROLE_CODE);
errorLines+=list.size();
successLines+=(listSysRoles.size()-errorLines);
return ImportExcelUtil.imporReturnRes(errorLines,successLines,list);
errorLines += list.size();
successLines += (listSysRoles.size() - errorLines);
return ImportExcelUtil.imporReturnRes(errorLines, successLines, list);
}
@Override
@@ -110,36 +110,38 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
List<SysRole> roleList = sysRoleMapper.getRoleByUserId(loginUser.getId());
List<String> roleCodeList = new ArrayList<>();
if(roleList.size() != 0){
if (roleList.size() != 0) {
roleCodeList = roleList.stream().map(SysRole::getRoleCode).collect(Collectors.toList());
}
List<SysRole> sysRoleNew = new ArrayList<>();
if(roleCodeList.size() != 0 && (roleCodeList.contains(ProjectRoleEnum.REGULATI_ENGINEER.getCode()) || roleCodeList.contains(ProjectRoleEnum.HOMOLOGATION_ENGINEER.getCode()))){
if (roleCodeList.size() != 0 && (roleCodeList.contains(ProjectRoleEnum.REGULATI_ENGINEER.getCode()) || roleCodeList.contains(ProjectRoleEnum.HOMOLOGATION_ENGINEER.getCode()))) {
sysRoleNew = roleList.stream().filter(e -> !ProjectRoleEnum.REGULATI_ENGINEER.getCode().equals(e.getRoleCode()) && !ProjectRoleEnum.HOMOLOGATION_ENGINEER.getCode().equals(e.getRoleCode())).collect(Collectors.toList());
SysRole sysRole = new SysRole();
sysRole.setRoleName(ProjectRoleEnum.REGULATI_AND_HOMOLOGATION_ENGINEER.getName());
sysRole.setRoleCode(ProjectRoleEnum.REGULATI_AND_HOMOLOGATION_ENGINEER.getValue());
sysRoleNew.add(sysRole);
} else {
sysRoleNew = roleList;
}
//studio角色,法规工程师/认证工程师,领导角色,管理员角色
List<SysRole> sysRoles = new LinkedList<>();
if(sysRoleNew.size() != 0){
if (sysRoleNew.size() != 0) {
List<SysRole> studio = sysRoleNew.stream().filter(e -> ProjectRoleEnum.STUDIO_ENGINEER.getCode().equals(e.getRoleCode())).collect(Collectors.toList());
List<SysRole> regulatiAndHomo = sysRoleNew.stream().filter(e -> ProjectRoleEnum.REGULATI_AND_HOMOLOGATION_ENGINEER.getValue().equals(e.getRoleCode())).collect(Collectors.toList());
List<SysRole> manager = sysRoleNew.stream().filter(e -> ProjectRoleEnum.MANAGER.getCode().equals(e.getRoleCode())).collect(Collectors.toList());
List<SysRole> admin = sysRoleNew.stream().filter(e -> ProjectRoleEnum.ADMIN.getCode().equals(e.getRoleCode())).collect(Collectors.toList());
if(studio.size() != 0){
if (studio.size() != 0) {
studio.get(0).setRoleCode(ProjectRoleEnum.STUDIO_ENGINEER.getValue());
sysRoles.addAll(studio);
}
if(regulatiAndHomo.size() != 0){
if (regulatiAndHomo.size() != 0) {
sysRoles.addAll(regulatiAndHomo);
}
if(manager.size() != 0){
if (manager.size() != 0) {
manager.get(0).setRoleCode(ProjectRoleEnum.MANAGER.getValue());
sysRoles.addAll(manager);
}
if(admin.size() != 0){
if (admin.size() != 0) {
admin.get(0).setRoleCode(ProjectRoleEnum.ADMIN.getValue());
sysRoles.addAll(admin);
}