firefish/packages/backend/src/misc/count-same-renotes.ts
2023-07-20 04:17:05 +09:00

19 lines
584 B
TypeScript

import { Notes } from "@/models/index.js";
export async function countSameRenotes(
userId: string,
renoteId: string,
excludeNoteId: string | undefined,
): Promise<number> {
// 指定したユーザーの指定したノートのリノートがいくつあるか数える
const query = Notes.createQueryBuilder("note")
.where("note.userId = :userId", { userId })
.andWhere("note.renoteId = :renoteId", { renoteId });
// 指定した投稿を除く
if (excludeNoteId) {
query.andWhere("note.id != :excludeNoteId", { excludeNoteId });
}
return await query.getCount();
}