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.
This commit is contained in:
yoosangwook 2025-05-30 17:12:54 +09:00
parent 78beaa7b8a
commit 53966a16e1
6 changed files with 10 additions and 6 deletions

View File

@ -123,7 +123,7 @@ session에 있는 role 키로 구분한다
session.role === 'Builder' session.role === 'Builder'
- teshg44 / 1234 -> 시공사\ - teshg44 / 1234 -> 시공사\
session.role === 'Builder' session.role === 'Builder'
- partners -> Q.Partners 계정\ - isogai@yanegiken.co.jp / password -> Q.Partners 계정\
session.role === 'Partner' session.role === 'Partner'
- 이외의 경우 -> 굳이 체크할 필요 없어보임\ - 이외의 경우 -> 굳이 체크할 필요 없어보임\
session.role === 'User' session.role === 'User'

View File

@ -57,6 +57,7 @@ export async function POST(request: Request) {
session.storeLvl = result.data.data.storeLvl session.storeLvl = result.data.data.storeLvl
session.custCd = result.data.data.custCd session.custCd = result.data.data.custCd
session.builderNo = result.data.data.builderNo session.builderNo = result.data.data.builderNo
session.builderNm = ''
session.isLoggedIn = true session.isLoggedIn = true
if (result.data.data.userId === 'T01') { if (result.data.data.userId === 'T01') {
@ -104,6 +105,7 @@ export async function POST(request: Request) {
STORE_LVL: result.data.data.storeLvl, STORE_LVL: result.data.data.storeLvl,
CUST_CD: result.data.data.custCd, CUST_CD: result.data.data.custCd,
BUILDER_NO: result.data.data.builderNo, BUILDER_NO: result.data.data.builderNo,
BUILDER_NM: '',
IS_LOGGED_IN: true, IS_LOGGED_IN: true,
ROLE: '', ROLE: '',
} }

View File

@ -85,6 +85,7 @@ export async function POST(request: Request) {
session.storeLvl = null session.storeLvl = null
session.custCd = null session.custCd = null
session.builderNo = data[0].user_seko_id session.builderNo = data[0].user_seko_id
session.builderNm = data[0].supplier_name
session.isLoggedIn = true session.isLoggedIn = true
session.role = 'Partner' session.role = 'Partner'
@ -123,6 +124,7 @@ export async function POST(request: Request) {
STORE_LVL: null, STORE_LVL: null,
CUST_CD: null, CUST_CD: null,
BUILDER_NO: data[0].user_seko_id, BUILDER_NO: data[0].user_seko_id,
BUILDER_NM: data[0].supplier_name,
IS_LOGGED_IN: true, IS_LOGGED_IN: true,
ROLE: 'Partner', ROLE: 'Partner',
} }

View File

@ -3,21 +3,19 @@ import Config from '@/config/config.export'
import { useSpinnerStore } from '@/store/spinnerStore' import { useSpinnerStore } from '@/store/spinnerStore'
export function useAxios() { export function useAxios() {
// const { setIsShow } = useSpinnerStore()
const requestHandler = (config: InternalAxiosRequestConfig) => { const requestHandler = (config: InternalAxiosRequestConfig) => {
// setIsShow(true) useSpinnerStore.getState().setIsShow(true)
return config return config
} }
const responseHandler = (response: AxiosResponse) => { const responseHandler = (response: AxiosResponse) => {
// setIsShow(false) useSpinnerStore.getState().setIsShow(false)
response.data = transferResponse(response) response.data = transferResponse(response)
return response return response
} }
const errorHandler = (error: any) => { const errorHandler = (error: any) => {
// setIsShow(false) useSpinnerStore.getState().setIsShow(false)
return Promise.reject(error) return Promise.reject(error)
} }

View File

@ -11,6 +11,7 @@ export default function ReactQueryProviders({ children }: React.PropsWithChildre
defaultOptions: { defaultOptions: {
queries: { queries: {
staleTime: 60 * 1000, staleTime: 60 * 1000,
retry: false,
}, },
}, },
}), }),

View File

@ -27,6 +27,7 @@ export interface SessionData {
storeLvl: null storeLvl: null
custCd: null custCd: null
builderNo: null builderNo: null
builderNm: null | string
isLoggedIn: boolean isLoggedIn: boolean
role: string | null role: string | null
} }