Shun Miyazawa 4 лет назад
Родитель
Сommit
0405a40d0e
2 измененных файлов с 17 добавлено и 4 удалено
  1. 3 2
      src/server/models/user.js
  2. 14 2
      src/server/routes/apiv3/users.js

+ 3 - 2
src/server/models/user.js

@@ -574,8 +574,9 @@ module.exports = function(crowi) {
     const createdUserList = [];
     const failedToCreateUserEmailList = [];
 
-    await Promise.all(creationEmailList.map(async(email) => {
+    for (const email of creationEmailList) {
       try {
+        // eslint-disable-next-line no-await-in-loop
         const createdUser = await this.createUserByEmail(email);
         createdUserList.push(createdUser);
       }
@@ -586,7 +587,7 @@ module.exports = function(crowi) {
           reason: err,
         });
       }
-    }));
+    }
 
     return { createdUserList, existingEmailList, failedToCreateUserEmailList };
   };

+ 14 - 2
src/server/routes/apiv3/users.js

@@ -18,6 +18,17 @@ const PAGE_ITEMS = 50;
 
 const validator = {};
 
+class SendEmailError extends Error {
+
+  constructor(message = '', email = '') {
+    super();
+
+    this.message = message;
+    this.email = email;
+  }
+
+}
+
 /**
  * @swagger
  *  tags:
@@ -125,8 +136,9 @@ module.exports = (crowi) => {
     const succeededToSendEmailList = [];
     const failedToSendEmailList = [];
 
-    await Promise.all(userList.map(async(user) => {
+    for (const user of userList) {
       try {
+        // eslint-disable-next-line no-await-in-loop
         await mailService.send({
           to: user.email,
           subject: `Invitation to ${appTitle}`,
@@ -147,7 +159,7 @@ module.exports = (crowi) => {
           reason: err,
         });
       }
-    }));
+    }
 
     return { succeededToSendEmailList, failedToSendEmailList };
   };