yusuketk 7 лет назад
Родитель
Сommit
2db83b095d
3 измененных файлов с 352 добавлено и 336 удалено
  1. 310 273
      lib/routes/admin.js
  2. 10 25
      lib/service/rest-qiita-API.js
  3. 32 38
      lib/util/importer.js

Разница между файлами не показана из-за своего большого размера
+ 310 - 273
lib/routes/admin.js


+ 10 - 25
lib/service/rest-qiita-API.js

@@ -34,14 +34,14 @@ class RestQiitaAPIService {
    */
   async restAPI(path) {
     return this.axios.get(path)
-      .then(function(res) {
+      .then(function (res) {
         const data = res.data;
         const total = res.headers['total-count'];
-        return {data, total};
+        return {
+          data,
+          total
+        };
       })
-      .catch(function(err) {
-        return err;
-      });
   };
 
   /**
@@ -49,18 +49,11 @@ class RestQiitaAPIService {
    * @memberof RestQiitaAPI
    */
   async getQiitaUser() {
-    try {
-      const res = await this.restAPI('/users');
-      const user = res.data;
-      if(user.length > 0) {
-        return user;
-      }
-    } catch (err) {
-      throw err;
-    }
+    const res = await this.restAPI('/users');
+    const user = res.data;
+    return user;
   };
 
-
   /**
    * get Qiita pages
    * @memberof RestQiitaAPI
@@ -68,16 +61,8 @@ class RestQiitaAPIService {
    * @param {string} per_page
    */
   async getQiitaPages(pageNum, per_page) {
-    try {
-      const res = await this.restAPI(`/items?page=${pageNum}&per_page=${per_page}`);
-      const pages = res.data;
-      const total = res.total;
-      if(pages.length > 0) {
-        return {pages, total};
-      }
-    } catch (err) {
-      throw err;
-    }
+    const res = await this.restAPI(`/items?page=${pageNum}&per_page=${per_page}`);
+    return res;
   };
 }
 

+ 32 - 38
lib/util/importer.js

@@ -17,7 +17,7 @@ module.exports = crowi => {
    */
   importer.initialize = () => {
     esaClient = esa({
-      team:        config.crowi['importer:esa:team_name'],
+      team: config.crowi['importer:esa:team_name'],
       accessToken: config.crowi['importer:esa:access_token'],
     });
     logger.info('initialize esa importer');
@@ -41,7 +41,10 @@ module.exports = crowi => {
    */
   const importPostsFromEsa = (pageNum, user, errors) => {
     return new Promise((resolve, reject) => {
-      esaClient.api.posts({page: pageNum, per_page: 100}, async(err, res) => {
+      esaClient.api.posts({
+        page: pageNum,
+        per_page: 100
+      }, async (err, res) => {
         const nextPage = res.body.next_page;
         const postsReceived = res.body.posts;
 
@@ -64,10 +67,10 @@ module.exports = crowi => {
   /**
    * Import page data from qiita to GROWI
    */
-  importer.importDataFromQiita = async(user) => {
-      const firstPage = 1;
-      const errors = await importPostsFromQiita(firstPage, user, []);
-      return errors;
+  importer.importDataFromQiita = async (user) => {
+    const firstPage = 1;
+    const errors = await importPostsFromQiita(firstPage, user, []);
+    return errors;
   };
 
   /**
@@ -75,28 +78,25 @@ module.exports = crowi => {
    * @param {string} pageNum default value is '1'
    */
   const importPostsFromQiita = (pageNum, user, errors) => {
-    return new Promise((resolve, reject) => {
-      const per_page = '100';
-      restQiitaAPIService.getQiitaPages(pageNum, per_page)
-      .then(function(res) {
+    const per_page = '100';
+    return restQiitaAPIService.getQiitaPages(pageNum, per_page)
+      .then(function (res) {
         const next = pageNum * per_page + 1;
-        const postsReceived = res.pages;
+        const postsReceived = res.data;
         const pageTotal = res.total;
         const data = convertQiitaDataForGrowi(postsReceived, user);
 
         createGrowiPages(data)
-        .then(function(newErrors) {
-          if (next <= pageTotal) {
-            return resolve(importPostsFromQiita(next, user, errors.concat(newErrors)));
-          }
-
-          resolve(errors.concat(newErrors));
-        });
+          .then(function (newErrors) {
+            if (next <= pageTotal) {
+              return importPostsFromQiita(next, user, errors.concat(newErrors));
+            }
+            return errors.concat(newErrors);
+          });
       })
-      .catch(function(err) {
-        reject(err);
+      .catch(function (err) {
+        throw new Error(err);
       });
-    });
   };
 
   /**
@@ -112,11 +112,9 @@ module.exports = crowi => {
 
       if (category && name) {
         path = `${category}/${name}`;
-      }
-      else if (category) {
+      } else if (category) {
         path = category;
-      }
-      else if (name) {
+      } else if (name) {
         path = name;
       }
 
@@ -152,23 +150,19 @@ module.exports = crowi => {
   /**
    * Import page data from esa to GROWI
    */
-  importer.testConnectionToEsa = async() => {
-      try {
-        await getTeamNameFromEsa();
-      } catch (err) {
-        throw err;
-      }
+  importer.testConnectionToEsa = async () => {
+    try {
+      await getTeamNameFromEsa();
+    } catch (err) {
+      throw err;
+    }
   };
 
-    /**
+  /**
    * Import page data from qiita to GROWI
    */
-  importer.testConnectionToQiita = async() => {
-    try {
-      await restQiitaAPIService.getQiitaUser();
-    } catch (err) {
-      throw err;
-    };
+  importer.testConnectionToQiita = async () => {
+    await restQiitaAPIService.getQiitaUser();
   };
 
   /**

Некоторые файлы не были показаны из-за большого количества измененных файлов