"feat: refactor party user data fetching to use new endpoint URL builder and implement

This commit is contained in:
louiscklaw
2025-06-17 19:18:21 +08:00
parent 7c7a532381
commit 448825545e
2 changed files with 22 additions and 3 deletions

View File

@@ -47,9 +47,11 @@ type PartyUserData = {
}; };
export function useGetPartyUser(partyUserId: string) { export function useGetPartyUser(partyUserId: string) {
const url = partyUserId ? [endpoints.partyUser.details, { params: { partyUserId } }] : ''; const { data, isLoading, error, isValidating } = useSWR<PartyUserData>(
endpoints.partyUser.detailsByPartyUserId(partyUserId),
const { data, isLoading, error, isValidating } = useSWR<PartyUserData>(url, fetcher, swrOptions); fetcher,
swrOptions
);
const memoizedValue = useMemo( const memoizedValue = useMemo(
() => ({ () => ({
@@ -136,6 +138,20 @@ export async function updatePartyUser(partyUserData: Partial<IPartyUserItem>) {
}, },
false 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) { export async function uploadUserImage(saveUserData: SaveUserData) {

View File

@@ -113,5 +113,8 @@ export const endpoints = {
create: '/api/party-user/create', create: '/api/party-user/create',
update: '/api/party-user/update', update: '/api/party-user/update',
delete: '/api/party-user/delete', delete: '/api/party-user/delete',
//
detailsByPartyUserId: (partyUserId: string) =>
`/api/party-user/details?partyUserId=${partyUserId}`,
}, },
}; };