Jelajahi Sumber

Promise.all

Shun Miyazawa 4 tahun lalu
induk
melakukan
e0ff63ab47
1 mengubah file dengan 7 tambahan dan 3 penghapusan
  1. 7 3
      packages/app/src/server/routes/apiv3/user-group.js

+ 7 - 3
packages/app/src/server/routes/apiv3/user-group.js

@@ -195,9 +195,13 @@ module.exports = (crowi) => {
 
 
     try {
     try {
       const userGroup = await UserGroup.findById(groupId);
       const userGroup = await UserGroup.findById(groupId);
-      const upperGeneration = await UserGroup.findGroupsWithAncestorsRecursively(userGroup, []);
-      const lowerGeneration = await UserGroup.findGroupsWithDescendantsRecursively([userGroup], []);
-      const excludeUserGroupIds = [...[userGroup], ...upperGeneration, ...lowerGeneration].map(userGroups => userGroups._id.toString());
+
+      const [upperGeneration, lowerGeneration] = await Promise.all([
+        UserGroup.findGroupsWithAncestorsRecursively(userGroup, []),
+        UserGroup.findGroupsWithDescendantsRecursively([userGroup], []),
+      ]);
+
+      const excludeUserGroupIds = [userGroup, ...upperGeneration, ...lowerGeneration].map(userGroups => userGroups._id.toString());
       const userGroups = await UserGroup.find({ _id: { $nin: excludeUserGroupIds } });
       const userGroups = await UserGroup.find({ _id: { $nin: excludeUserGroupIds } });
       return res.apiv3({ userGroups });
       return res.apiv3({ userGroups });
     }
     }