1
1
mirror of https://github.com/kokonect-link/cherrypick synced 2024-12-04 09:48:38 +09:00

Update trend.ts

This commit is contained in:
syuilo 2020-02-15 23:01:41 +09:00
parent 05d7198667
commit bef67fa275

View File

@ -11,7 +11,7 @@ import { Note } from '../../../../models/entities/note';
..PostgreSQLでどうするのか分からないので単にAの内に投稿されたユニーク投稿数が多いハッシュタグ
*/
const rangeA = 1000 * 60 * 30; // 30分
const rangeA = 1000 * 60 * 60; // 60分
//const rangeB = 1000 * 60 * 120; // 2時間
//const coefficient = 1.25; // 「n倍」の部分
//const requiredUsers = 3; // 最低何人がそのタグを投稿している必要があるか
@ -123,16 +123,16 @@ export default define(meta, async () => {
}
const countsLog = await Promise.all(countPromises);
//#endregion
const totalCounts = await Promise.all(hots.map(tag => Notes.createQueryBuilder('note')
.select('count(distinct note.userId)')
.where(':tag = ANY(note.tags)', { tag: tag })
.andWhere('note.createdAt > :gt', { gt: new Date(now.getTime() - (interval * range)) })
.cache(60000) // 1 min
.andWhere('note.createdAt > :gt', { gt: new Date(now.getTime() - rangeA) })
.cache(60000 * 60) // 60 min
.getRawOne()
.then(x => parseInt(x.count, 10))
));
//#endregion
const stats = hots.map((tag, i) => ({
tag,