From 53966a16e1213fd1185f17a71d91ea83d37464ee Mon Sep 17 00:00:00 2001 From: yoosangwook Date: Fri, 30 May 2025 17:12:54 +0900 Subject: [PATCH] refactor: enhance session management by adding builderNm field - Introduced builderNm field to SessionData interface for improved session tracking. - Updated API routes to set builderNm based on user data. - Modified useAxios hook to manage spinner visibility more effectively. - Adjusted ReactQueryProvider to disable retry on queries for better performance. --- README.md | 2 +- src/app/api/auth/route.ts | 2 ++ src/app/api/partner/route.ts | 2 ++ src/hooks/useAxios.ts | 8 +++----- src/providers/ReactQueryProvider.tsx | 1 + src/types/Auth.ts | 1 + 6 files changed, 10 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 43b5109..fda8464 100644 --- a/README.md +++ b/README.md @@ -123,7 +123,7 @@ session에 있는 role 키로 구분한다 session.role === 'Builder' - teshg44 / 1234 -> 시공사\ session.role === 'Builder' -- partners -> Q.Partners 계정\ +- isogai@yanegiken.co.jp / password -> Q.Partners 계정\ session.role === 'Partner' - 이외의 경우 -> 굳이 체크할 필요 없어보임\ session.role === 'User' diff --git a/src/app/api/auth/route.ts b/src/app/api/auth/route.ts index 8205132..bb64208 100644 --- a/src/app/api/auth/route.ts +++ b/src/app/api/auth/route.ts @@ -57,6 +57,7 @@ export async function POST(request: Request) { session.storeLvl = result.data.data.storeLvl session.custCd = result.data.data.custCd session.builderNo = result.data.data.builderNo + session.builderNm = '' session.isLoggedIn = true if (result.data.data.userId === 'T01') { @@ -104,6 +105,7 @@ export async function POST(request: Request) { STORE_LVL: result.data.data.storeLvl, CUST_CD: result.data.data.custCd, BUILDER_NO: result.data.data.builderNo, + BUILDER_NM: '', IS_LOGGED_IN: true, ROLE: '', } diff --git a/src/app/api/partner/route.ts b/src/app/api/partner/route.ts index 7d02959..dc08352 100644 --- a/src/app/api/partner/route.ts +++ b/src/app/api/partner/route.ts @@ -85,6 +85,7 @@ export async function POST(request: Request) { session.storeLvl = null session.custCd = null session.builderNo = data[0].user_seko_id + session.builderNm = data[0].supplier_name session.isLoggedIn = true session.role = 'Partner' @@ -123,6 +124,7 @@ export async function POST(request: Request) { STORE_LVL: null, CUST_CD: null, BUILDER_NO: data[0].user_seko_id, + BUILDER_NM: data[0].supplier_name, IS_LOGGED_IN: true, ROLE: 'Partner', } diff --git a/src/hooks/useAxios.ts b/src/hooks/useAxios.ts index 3fc9e4e..21cacfd 100644 --- a/src/hooks/useAxios.ts +++ b/src/hooks/useAxios.ts @@ -3,21 +3,19 @@ import Config from '@/config/config.export' import { useSpinnerStore } from '@/store/spinnerStore' export function useAxios() { - // const { setIsShow } = useSpinnerStore() - const requestHandler = (config: InternalAxiosRequestConfig) => { - // setIsShow(true) + useSpinnerStore.getState().setIsShow(true) return config } const responseHandler = (response: AxiosResponse) => { - // setIsShow(false) + useSpinnerStore.getState().setIsShow(false) response.data = transferResponse(response) return response } const errorHandler = (error: any) => { - // setIsShow(false) + useSpinnerStore.getState().setIsShow(false) return Promise.reject(error) } diff --git a/src/providers/ReactQueryProvider.tsx b/src/providers/ReactQueryProvider.tsx index b324b12..5e9700f 100644 --- a/src/providers/ReactQueryProvider.tsx +++ b/src/providers/ReactQueryProvider.tsx @@ -11,6 +11,7 @@ export default function ReactQueryProviders({ children }: React.PropsWithChildre defaultOptions: { queries: { staleTime: 60 * 1000, + retry: false, }, }, }), diff --git a/src/types/Auth.ts b/src/types/Auth.ts index 61a3880..ce26cf6 100644 --- a/src/types/Auth.ts +++ b/src/types/Auth.ts @@ -27,6 +27,7 @@ export interface SessionData { storeLvl: null custCd: null builderNo: null + builderNm: null | string isLoggedIn: boolean role: string | null }