From 7d7193cb63ac8811152707a6896e5cf7ae05258c Mon Sep 17 00:00:00 2001 From: syuilo Date: Mon, 11 Jun 2018 11:24:29 +0900 Subject: :v: --- src/server/api/endpoints/hashtags/trend.ts | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'src/server/api') diff --git a/src/server/api/endpoints/hashtags/trend.ts b/src/server/api/endpoints/hashtags/trend.ts index 3b95e1fa4c..6a49fec3d8 100644 --- a/src/server/api/endpoints/hashtags/trend.ts +++ b/src/server/api/endpoints/hashtags/trend.ts @@ -4,13 +4,10 @@ import Note from '../../../../models/note'; * Get trends of hashtags */ module.exports = (params, user) => new Promise(async (res, rej) => { - // 10分 - const interval = 1000 * 60 * 10; - const data = await Note.aggregate([{ $match: { createdAt: { - $gt: new Date(Date.now() - interval) + $gt: new Date(Date.now() - 1000 * 60 * 60) }, tags: { $exists: true, @@ -48,6 +45,10 @@ module.exports = (params, user) => new Promise(async (res, rej) => { }> }>; + if (data.length == 0) { + return res([]); + } + const hots = data[0].tags .sort((a, b) => a.count - b.count) .map(tag => tag.tag) @@ -56,6 +57,9 @@ module.exports = (params, user) => new Promise(async (res, rej) => { const countPromises: Array> = []; for (let i = 0; i < 10; i++) { + // 10分 + const interval = 1000 * 60 * 10; + countPromises.push(Promise.all(hots.map(tag => Note.count({ tags: tag, createdAt: { -- cgit v1.2.3-freya