From 951f9286aa39d99d1bb19e9c2bb3ee41799c44a5 Mon Sep 17 00:00:00 2001 From: Dominic Ferrando Date: Sat, 22 Aug 2026 12:00:36 -0400 Subject: [PATCH] Implement assessment delete service method and endpoint --- apps/api/src/server.ts | 12 ++++++++---- apps/api/src/services/assessments.ts | 8 ++++++++ 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/apps/api/src/server.ts b/apps/api/src/server.ts index cf291f5..a846fda 100644 --- a/apps/api/src/server.ts +++ b/apps/api/src/server.ts @@ -482,7 +482,7 @@ export const app = new Elysia() .group("/assessments", (app) => app .guard({ auth: true }, (app) => app .post("/me", async ({ body: { player, activityPerformances }, accountId }) => { - await s.Assessments.create(player, activityPerformances, accountId); + return await s.Assessments.create(player, activityPerformances, accountId); }, { body: t.Object({ player: PlayerSchema, @@ -490,9 +490,13 @@ export const app = new Elysia() }) }) .get("/me", async ({ accountId }) => { - const assessments = await s.Assessments.list({ filter: { accountId } }); - if (!assessments) throw new NotFoundError("Assessments not found"); - return assessments; + return await s.Assessments.list({ filter: { accountId } }); + }) + .delete("/me/:id", async ({ params: { id }, accountId }) => { + const deleted = await s.Assessments.delete(id, accountId); + if (!deleted) throw new NotFoundError("Assessment not found"); + }, { + params: t.Object({ id: t.String() }) }) ) .guard({ authAdmin: true }, (app) => app diff --git a/apps/api/src/services/assessments.ts b/apps/api/src/services/assessments.ts index db6b218..70277ba 100644 --- a/apps/api/src/services/assessments.ts +++ b/apps/api/src/services/assessments.ts @@ -39,4 +39,12 @@ export class AssessmentsService { .$if(opt.offset !== undefined, (qb) => qb.offset(opt.offset!)) .execute(); } + + async delete(id: string, accountId: string): Promise { + const result = await db.deleteFrom("assessments") + .where("id", "=", id) + .where("account_id", "=", accountId) + .executeTakeFirst(); + return result.numDeletedRows > 0n; + } }