Răsfoiți Sursa

团队部门反显部门,部门角色等

tanbin 1 an în urmă
părinte
comite
6faee23872

+ 22 - 0
authorize-api-service/src/main/java/com/xy/service/impl/SysWorkUserServiceImpl.java

@@ -65,6 +65,8 @@ public class SysWorkUserServiceImpl extends ServiceImpl<SysWorkUserMapper, SysWo
 
     private final SysDeptMapper sysDeptMapper;
 
+    private final SysDeptRoleMapper sysDeptRoleMapper;
+
     private final CaptchaService captchaService;
 
     @Override
@@ -311,6 +313,7 @@ public class SysWorkUserServiceImpl extends ServiceImpl<SysWorkUserMapper, SysWo
                 }
                 List<Long> workVoDeptIds = sysWorkVo.getDeptIds();
                 sysWorkVo.setDeptNames(new ArrayList<>());
+                sysWorkVo.setDeptIds(new ArrayList<>());
                 if (CollUtil.isNotEmpty(workVoDeptIds)) {
                     for (Long workVoDeptId : workVoDeptIds) {
                         SysDept sysDept = sysDeptJMap.get(workVoDeptId);
@@ -318,8 +321,27 @@ public class SysWorkUserServiceImpl extends ServiceImpl<SysWorkUserMapper, SysWo
                             break;
                         }
                         sysWorkVo.getDeptNames().add(sysDept.getName());
+                        sysWorkVo.getDeptIds().add(sysDept.getId());
+                    }
+                }
+                List<Long> deptRoleIds = new ArrayList<>();
+                List<String> deptRoleNames = new ArrayList<>();
+                if (CollUtil.isNotEmpty(workVoDeptIds)) {
+                    //部门角色
+                    List<SysDeptRole> sysDeptRoles = sysDeptRoleMapper.selectList(Wrappers.<SysDeptRole>lambdaQuery()
+                            .eq(sysId != null, SysDeptRole::getSysId, sysId)
+                            .in(SysDeptRole::getDeptId, workVoDeptIds)
+                    );
+                    if (CollUtil.isNotEmpty(sysDeptRoles)) {
+                        deptRoleIds = sysDeptRoles.stream().map(SysDeptRole::getRoleId).distinct().collect(Collectors.toList());
+                        List<SysRole> sysRoles = sysRoleMapper.selectList(new LambdaQueryWrapper<SysRole>().in(SysRole::getId, deptRoleIds));
+                        if (CollUtil.isNotEmpty(sysRoles)) {
+                            deptRoleNames = sysRoles.stream().map(SysRole::getName).distinct().collect(Collectors.toList());
+                        }
                     }
                 }
+                sysWorkVo.setDeptRoleIds(deptRoleIds);
+                sysWorkVo.setDeptRoleNames(deptRoleNames);
 
             }
         }

+ 6 - 0
authorize-api/src/main/java/com/xy/dto/SysWorkUser/SysWorkVo.java

@@ -69,4 +69,10 @@ public class SysWorkVo {
 
     @ApiModelProperty("部门名称")
     private List<String> deptNames;
+
+    @ApiModelProperty("部门角色名称")
+    private List<String> deptRoleNames;
+
+    @ApiModelProperty("部门角色ID")
+    private List<Long> deptRoleIds;
 }