summaryrefslogtreecommitdiff
path: root/packages/backend/src/server/api/endpoints/admin
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2022-04-17 13:31:45 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2022-04-17 13:31:45 +0900
commita671f9102d5d3e212d1e621a435dd6a147c4e191 (patch)
tree382c2c87fa6d126be563a50d33b54f7e26d83a7f /packages/backend/src/server/api/endpoints/admin
parentrefactor: fix type (diff)
downloadsharkey-a671f9102d5d3e212d1e621a435dd6a147c4e191.tar.gz
sharkey-a671f9102d5d3e212d1e621a435dd6a147c4e191.tar.bz2
sharkey-a671f9102d5d3e212d1e621a435dd6a147c4e191.zip
refactor: fix type
Diffstat (limited to 'packages/backend/src/server/api/endpoints/admin')
-rw-r--r--packages/backend/src/server/api/endpoints/admin/announcements/list.ts19
1 files changed, 15 insertions, 4 deletions
diff --git a/packages/backend/src/server/api/endpoints/admin/announcements/list.ts b/packages/backend/src/server/api/endpoints/admin/announcements/list.ts
index 1d8eb1d618..7a5758d75b 100644
--- a/packages/backend/src/server/api/endpoints/admin/announcements/list.ts
+++ b/packages/backend/src/server/api/endpoints/admin/announcements/list.ts
@@ -1,5 +1,6 @@
-import define from '../../../define.js';
import { Announcements, AnnouncementReads } from '@/models/index.js';
+import { Announcement } from '@/models/entities/announcement.js';
+import define from '../../../define.js';
import { makePaginationQuery } from '../../../common/make-pagination-query.js';
export const meta = {
@@ -68,11 +69,21 @@ export default define(meta, paramDef, async (ps) => {
const announcements = await query.take(ps.limit).getMany();
+ const reads = new Map<Announcement, number>();
+
for (const announcement of announcements) {
- (announcement as any).reads = await AnnouncementReads.countBy({
+ reads.set(announcement, await AnnouncementReads.countBy({
announcementId: announcement.id,
- });
+ }));
}
- return announcements;
+ return announcements.map(announcement => ({
+ id: announcement.id,
+ createdAt: announcement.createdAt.toISOString(),
+ updatedAt: announcement.updatedAt?.toISOString() ?? null,
+ title: announcement.title,
+ text: announcement.text,
+ imageUrl: announcement.imageUrl,
+ reads: reads.get(announcement)!,
+ }));
});