From 448825545e4b622b6ca5d430596cfcd4671f5d67 Mon Sep 17 00:00:00 2001 From: louiscklaw Date: Tue, 17 Jun 2025 19:18:21 +0800 Subject: [PATCH] "feat: refactor party user data fetching to use new endpoint URL builder and implement --- 03_source/frontend/src/actions/party-user.ts | 22 +++++++++++++++++--- 03_source/frontend/src/lib/axios.ts | 3 +++ 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/03_source/frontend/src/actions/party-user.ts b/03_source/frontend/src/actions/party-user.ts index 7190309..d5b4812 100644 --- a/03_source/frontend/src/actions/party-user.ts +++ b/03_source/frontend/src/actions/party-user.ts @@ -47,9 +47,11 @@ type PartyUserData = { }; export function useGetPartyUser(partyUserId: string) { - const url = partyUserId ? [endpoints.partyUser.details, { params: { partyUserId } }] : ''; - - const { data, isLoading, error, isValidating } = useSWR(url, fetcher, swrOptions); + const { data, isLoading, error, isValidating } = useSWR( + endpoints.partyUser.detailsByPartyUserId(partyUserId), + fetcher, + swrOptions + ); const memoizedValue = useMemo( () => ({ @@ -136,6 +138,20 @@ export async function updatePartyUser(partyUserData: Partial) { }, false ); + + const partyUserId: string = partyUserData.id || ''; + mutate( + endpoints.partyUser.detailsByPartyUserId(partyUserId), + (currentData: any) => { + const currentPartyUser: IPartyUserItem = currentData?.partyUser; + + console.log({ currentPartyUser }); + const partyUser = partyUserData; + + return { ...currentData, partyUser }; + }, + false + ); } export async function uploadUserImage(saveUserData: SaveUserData) { diff --git a/03_source/frontend/src/lib/axios.ts b/03_source/frontend/src/lib/axios.ts index 95f5013..f4c819e 100644 --- a/03_source/frontend/src/lib/axios.ts +++ b/03_source/frontend/src/lib/axios.ts @@ -113,5 +113,8 @@ export const endpoints = { create: '/api/party-user/create', update: '/api/party-user/update', delete: '/api/party-user/delete', + // + detailsByPartyUserId: (partyUserId: string) => + `/api/party-user/details?partyUserId=${partyUserId}`, }, };