From c313caafcf55d7dbc4fc1b2d74d84e2f57584f48 Mon Sep 17 00:00:00 2001 From: perry Date: Sat, 25 Jan 2025 17:54:07 +0900 Subject: [PATCH] refactor: update activity summary type and response handling --- .../service/activity.activity-term.service.ts | 1 - .../src/feature/activity/service/activity.service.ts | 4 ++-- .../interface/src/api/activity/endpoint/apiAct028.ts | 9 +++++++-- .../interface/src/api/activity/type/activity.type.ts | 11 ++--------- 4 files changed, 11 insertions(+), 14 deletions(-) diff --git a/packages/api/src/feature/activity/service/activity.activity-term.service.ts b/packages/api/src/feature/activity/service/activity.activity-term.service.ts index cca68cf3a..e66d8efd9 100644 --- a/packages/api/src/feature/activity/service/activity.activity-term.service.ts +++ b/packages/api/src/feature/activity/service/activity.activity-term.service.ts @@ -120,7 +120,6 @@ export default class ActivityActivityTermService { const semesters = await this.clubPublicService.getClubsExistedSemesters({ clubId: query.clubId, }); - console.log("asdfAsdf", semesters); const activityTerms: ApiAct009ResponseOk["terms"] = []; await Promise.all( semesters.map(async semester => { diff --git a/packages/api/src/feature/activity/service/activity.service.ts b/packages/api/src/feature/activity/service/activity.service.ts index 462ed2f54..3e3da4e65 100644 --- a/packages/api/src/feature/activity/service/activity.service.ts +++ b/packages/api/src/feature/activity/service/activity.service.ts @@ -1453,10 +1453,10 @@ export default class ActivityService { club: clubMap.get(activity.club.id), chargedExecutive: activity.chargedExecutive?.id ? executiveMap.get(activity.chargedExecutive.id) - : undefined, + : null, commentedExecutive: activity.commentedExecutive?.id ? executiveMap.get(activity.commentedExecutive.id) - : undefined, + : null, })); return { diff --git a/packages/interface/src/api/activity/endpoint/apiAct028.ts b/packages/interface/src/api/activity/endpoint/apiAct028.ts index 8195f006a..6d1b374a4 100644 --- a/packages/interface/src/api/activity/endpoint/apiAct028.ts +++ b/packages/interface/src/api/activity/endpoint/apiAct028.ts @@ -3,7 +3,7 @@ import { z } from "zod"; import { zExecutiveSummary } from "@sparcs-clubs/interface/api/user/type/user.type"; -import { zActivitySummaryExecutiveResponse } from "../type/activity.type"; +import { zActivitySummaryResponse } from "../type/activity.type"; const url = (executiveId: number) => `/executive/activities/executives/executive/${executiveId}/brief`; @@ -22,7 +22,12 @@ const requestBody = z.object({}); const responseBodyMap = { [HttpStatusCode.Ok]: z.object({ chargedExecutive: zExecutiveSummary, - activities: zActivitySummaryExecutiveResponse.array(), + activities: zActivitySummaryResponse + .extend({ + chargedExecutive: zExecutiveSummary.nullable(), + commentedExecutive: zExecutiveSummary.nullable(), + }) + .array(), }), }; diff --git a/packages/interface/src/api/activity/type/activity.type.ts b/packages/interface/src/api/activity/type/activity.type.ts index c92b8b7bc..4cb1e32ea 100644 --- a/packages/interface/src/api/activity/type/activity.type.ts +++ b/packages/interface/src/api/activity/type/activity.type.ts @@ -20,6 +20,8 @@ export const zActivitySummary = z.object({ activityTypeEnum: z.nativeEnum(ActivityTypeEnum), club: zClubSummary.pick({ id: true }), name: z.string().max(255), + chargedExecutive: zExecutiveSummary.pick({ id: true }).optional(), + commentedExecutive: zExecutiveSummary.pick({ id: true }).optional(), commentedAt: z.coerce.date().nullable(), editedAt: z.coerce.date(), updatedAt: z.coerce.date(), @@ -29,12 +31,6 @@ export const zActivitySummaryResponse = zActivitySummary.extend({ club: zClubSummary, }); -export const zActivitySummaryExecutiveResponse = - zActivitySummaryResponse.extend({ - chargedExecutive: zExecutiveSummary.optional(), - commentedExecutive: zExecutiveSummary.optional(), - }); - // TODO: 수정 필요 export const zActivityD = z.object({ id: z.coerce.number().int().min(1), @@ -44,7 +40,4 @@ export const zActivityD = z.object({ export type IActivitySummary = z.infer; export type IActivityResponseSummary = z.infer; -export type IActivitySummaryExecutiveResponse = z.infer< - typeof zActivitySummaryExecutiveResponse ->; export type IActivityD = z.infer;