|
|
@@ -152,35 +152,34 @@ module.exports = function(crowi, app) {
|
|
|
|
|
|
const ids = esResult.data.map((page) => { return page._id });
|
|
|
const findResult = await Page.findListByPageIds(ids);
|
|
|
- // add tags and elasticSearch data to page
|
|
|
- findResult.pages.map((page) => {
|
|
|
- const data = esResult.data.find((data) => {
|
|
|
- return page.id === data._id;
|
|
|
- });
|
|
|
- page._doc.tags = data._source.tag_names;
|
|
|
- page._doc.bookmarkCount = data._source.bookmark_count || 0;
|
|
|
- page._doc.elasticSearchResult = data.elasticSearchResult;
|
|
|
- return page;
|
|
|
- });
|
|
|
|
|
|
- findResult.pages.map((page) => {
|
|
|
+ // add tags data to page
|
|
|
+ findResult.pages.map((pageData) => {
|
|
|
const data = esResult.data.find((data) => {
|
|
|
- return page.id === data._id;
|
|
|
+ return pageData.id === data._id;
|
|
|
});
|
|
|
-
|
|
|
- page.bookmarkCount = data._source.bookmark_count || 0;
|
|
|
- page.elasticSearchResult = data.elasticSearchResult;
|
|
|
- return page;
|
|
|
+ pageData._doc.tags = data._source.tag_names;
|
|
|
+ return pageData;
|
|
|
});
|
|
|
- console.log('findResult', findResult);
|
|
|
+
|
|
|
result.meta = esResult.meta;
|
|
|
result.totalCount = findResult.totalCount;
|
|
|
result.data = findResult.pages
|
|
|
- .map((page) => {
|
|
|
- if (page.lastUpdateUser != null && page.lastUpdateUser instanceof User) {
|
|
|
- page.lastUpdateUser = serializeUserSecurely(page.lastUpdateUser);
|
|
|
+ .map((pageData) => {
|
|
|
+ if (pageData.lastUpdateUser != null && pageData.lastUpdateUser instanceof User) {
|
|
|
+ pageData.lastUpdateUser = serializeUserSecurely(pageData.lastUpdateUser);
|
|
|
}
|
|
|
- return page;
|
|
|
+
|
|
|
+ const data = esResult.data.find((data) => {
|
|
|
+ return pageData.id === data._id;
|
|
|
+ });
|
|
|
+
|
|
|
+ const pageMeta = {
|
|
|
+ bookmarkCount: data._source.bookmark_count || 0,
|
|
|
+ elasticSearchResult: data.elasticSearchResult,
|
|
|
+ };
|
|
|
+
|
|
|
+ return { pageData, pageMeta };
|
|
|
})
|
|
|
.sort((page1, page2) => {
|
|
|
// note: this do not consider NaN
|
|
|
@@ -190,7 +189,7 @@ module.exports = function(crowi, app) {
|
|
|
catch (err) {
|
|
|
return res.json(ApiResponse.error(err));
|
|
|
}
|
|
|
- console.log('result', result);
|
|
|
+ console.log(JSON.stringify(result, null, 2));
|
|
|
return res.json(ApiResponse.success(result));
|
|
|
};
|
|
|
|