shc 8 mēneši atpakaļ
vecāks
revīzija
0acfe764f4

+ 49 - 21
hnqz-upms/hnqz-upms-biz/src/main/java/com/qunzhixinxi/hnqz/admin/manager/WmSupervisionManager.java

@@ -399,13 +399,23 @@ public class WmSupervisionManager {
             List<Map<String, Object>> maps = CollUtil.isEmpty(wmTasks) ? Collections.emptyList() : taskService.listTaskInfo(wmTasks, pkgId.toString());
 
             Set<String> createdBy = list.stream().map(WmTaskSupervision::getCreateBy).collect(Collectors.toSet());
-            List<SysUser> users = userService.list(Wrappers.<SysUser>lambdaQuery().in(SysUser::getUsername, createdBy));
-            Map<String, SysUser> userMap = users.stream().collect(Collectors.toMap(SysUser::getUsername, Function.identity()));
-            Set<Integer> userIds = users.stream().mapToInt(SysUser::getUserId).boxed().collect(Collectors.toSet());
-            List<SysUserRole> userRoles = userRoleService.list(Wrappers.<SysUserRole>lambdaQuery().in(SysUserRole::getUserId, userIds));
-            Map<Integer, List<SysUserRole>> userRoleMap = userRoles.stream().collect(Collectors.groupingBy(SysUserRole::getUserId));
-            Set<Integer> roleId = userRoles.stream().mapToInt(SysUserRole::getRoleId).boxed().collect(Collectors.toSet());
-            Map<Integer, String> roleMap = roleService.listByIds(roleId).stream().collect(Collectors.toMap(SysRole::getRoleId, SysRole::getRoleName));
+            Map<String, SysUser> userMap;
+            Map<Integer, List<SysUserRole>> userRoleMap;
+            Map<Integer, String> roleMap;
+            if (CollUtil.isNotEmpty(createdBy)) {
+                List<SysUser> users = userService.list(Wrappers.<SysUser>lambdaQuery().in(SysUser::getUsername, createdBy));
+                userMap = users.stream().collect(Collectors.toMap(SysUser::getUsername, Function.identity()));
+                Set<Integer> userIds = users.stream().mapToInt(SysUser::getUserId).boxed().collect(Collectors.toSet());
+                List<SysUserRole> userRoles = userRoleService.list(Wrappers.<SysUserRole>lambdaQuery().in(SysUserRole::getUserId, userIds));
+                userRoleMap = userRoles.stream().collect(Collectors.groupingBy(SysUserRole::getUserId));
+                Set<Integer> roleId = userRoles.stream().mapToInt(SysUserRole::getRoleId).boxed().collect(Collectors.toSet());
+                roleMap = roleService.listByIds(roleId).stream().collect(Collectors.toMap(SysRole::getRoleId, SysRole::getRoleName));
+            } else {
+                userMap = Collections.emptyMap();
+                userRoleMap = Collections.emptyMap();
+                roleMap = Collections.emptyMap();
+            }
+
 
             Map<Integer, List<WmTaskSupervision>> collect = list.stream().collect(Collectors.groupingBy(WmTaskSupervision::getTaskId));
             maps.forEach(m -> {
@@ -462,13 +472,22 @@ public class WmSupervisionManager {
             List<Map<String, Object>> maps = taskService.listTaskInfo(tasks, pkgId.toString());
 
             Set<String> createdBy = list.stream().map(WmTaskSupervision::getCreateBy).collect(Collectors.toSet());
-            List<SysUser> users = userService.list(Wrappers.<SysUser>lambdaQuery().in(SysUser::getUsername, createdBy));
-            Map<String, SysUser> userMap = users.stream().collect(Collectors.toMap(SysUser::getUsername, Function.identity()));
-            Set<Integer> userIds = users.stream().mapToInt(SysUser::getUserId).boxed().collect(Collectors.toSet());
-            List<SysUserRole> userRoles = userRoleService.list(Wrappers.<SysUserRole>lambdaQuery().in(SysUserRole::getUserId, userIds));
-            Map<Integer, List<SysUserRole>> userRoleMap = userRoles.stream().collect(Collectors.groupingBy(SysUserRole::getUserId));
-            Set<Integer> roleId = userRoles.stream().mapToInt(SysUserRole::getRoleId).boxed().collect(Collectors.toSet());
-            Map<Integer, String> roleMap = roleService.listByIds(roleId).stream().collect(Collectors.toMap(SysRole::getRoleId, SysRole::getRoleName));
+            Map<String, SysUser> userMap;
+            Map<Integer, List<SysUserRole>> userRoleMap;
+            Map<Integer, String> roleMap;
+            if (CollUtil.isNotEmpty(createdBy)) {
+                List<SysUser> users = userService.list(Wrappers.<SysUser>lambdaQuery().in(SysUser::getUsername, createdBy));
+                userMap = users.stream().collect(Collectors.toMap(SysUser::getUsername, Function.identity()));
+                Set<Integer> userIds = users.stream().mapToInt(SysUser::getUserId).boxed().collect(Collectors.toSet());
+                List<SysUserRole> userRoles = userRoleService.list(Wrappers.<SysUserRole>lambdaQuery().in(SysUserRole::getUserId, userIds));
+                userRoleMap = userRoles.stream().collect(Collectors.groupingBy(SysUserRole::getUserId));
+                Set<Integer> roleId = userRoles.stream().mapToInt(SysUserRole::getRoleId).boxed().collect(Collectors.toSet());
+                roleMap = roleService.listByIds(roleId).stream().collect(Collectors.toMap(SysRole::getRoleId, SysRole::getRoleName));
+            } else {
+                userMap = Collections.emptyMap();
+                userRoleMap = Collections.emptyMap();
+                roleMap = Collections.emptyMap();
+            }
 
             Map<Integer, List<WmTaskSupervision>> collect = list.stream().collect(Collectors.groupingBy(WmTaskSupervision::getTaskId));
             maps.forEach(m -> {
@@ -566,13 +585,22 @@ public class WmSupervisionManager {
             Map<Integer, List<WmTaskSupervision>> collect = list.stream().collect(Collectors.groupingBy(WmTaskSupervision::getTaskId));
 
             Set<String> createdBy = list.stream().map(WmTaskSupervision::getCreateBy).collect(Collectors.toSet());
-            List<SysUser> users = userService.list(Wrappers.<SysUser>lambdaQuery().in(SysUser::getUsername, createdBy));
-            Map<String, SysUser> userMap = users.stream().collect(Collectors.toMap(SysUser::getUsername, Function.identity()));
-            Set<Integer> userIds = users.stream().mapToInt(SysUser::getUserId).boxed().collect(Collectors.toSet());
-            List<SysUserRole> userRoles = userRoleService.list(Wrappers.<SysUserRole>lambdaQuery().in(SysUserRole::getUserId, userIds));
-            Map<Integer, List<SysUserRole>> userRoleMap = userRoles.stream().collect(Collectors.groupingBy(SysUserRole::getUserId));
-            Set<Integer> roleId = userRoles.stream().mapToInt(SysUserRole::getRoleId).boxed().collect(Collectors.toSet());
-            Map<Integer, String> roleMap = roleService.listByIds(roleId).stream().collect(Collectors.toMap(SysRole::getRoleId, SysRole::getRoleName));
+            Map<String, SysUser> userMap;
+            Map<Integer, List<SysUserRole>> userRoleMap;
+            Map<Integer, String> roleMap;
+            if (CollUtil.isNotEmpty(createdBy)) {
+                List<SysUser> users = userService.list(Wrappers.<SysUser>lambdaQuery().in(SysUser::getUsername, createdBy));
+                userMap = users.stream().collect(Collectors.toMap(SysUser::getUsername, Function.identity()));
+                Set<Integer> userIds = users.stream().mapToInt(SysUser::getUserId).boxed().collect(Collectors.toSet());
+                List<SysUserRole> userRoles = userRoleService.list(Wrappers.<SysUserRole>lambdaQuery().in(SysUserRole::getUserId, userIds));
+                userRoleMap = userRoles.stream().collect(Collectors.groupingBy(SysUserRole::getUserId));
+                Set<Integer> roleId = userRoles.stream().mapToInt(SysUserRole::getRoleId).boxed().collect(Collectors.toSet());
+                roleMap = roleService.listByIds(roleId).stream().collect(Collectors.toMap(SysRole::getRoleId, SysRole::getRoleName));
+            } else {
+                userMap = Collections.emptyMap();
+                userRoleMap = Collections.emptyMap();
+                roleMap = Collections.emptyMap();
+            }
 
             maps.forEach(m -> {