From 84b1fd07aeef1e1e860865877153e0a9dafa969b Mon Sep 17 00:00:00 2001 From: rsone001 Date: Wed, 5 Aug 2026 10:08:26 +0900 Subject: [PATCH] =?UTF-8?q?[ST]=20-=20management=20service=20code=20refres?= =?UTF-8?q?h=20=EB=A1=9C=EC=A7=81=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/(main)/(with-base-layout)/layout.tsx | 2 +- .../management/NotEnteredStatus.tsx | 1 - .../statistics/api/statistics-service.ts | 22 ++++++++++++++++++- .../statistics/model/statistics-interface.ts | 2 ++ .../st/src/pages/auth/login/ui/login-page.tsx | 2 +- 5 files changed, 25 insertions(+), 4 deletions(-) diff --git a/apps/st/app/(main)/(with-base-layout)/layout.tsx b/apps/st/app/(main)/(with-base-layout)/layout.tsx index 19190c901..d5f5074f5 100644 --- a/apps/st/app/(main)/(with-base-layout)/layout.tsx +++ b/apps/st/app/(main)/(with-base-layout)/layout.tsx @@ -97,7 +97,7 @@ function WithBaseLayoutInner({ children }: { children: React.ReactNode }) { useEffect(() => { if (!getToken(CLAIM_NAME)) return; - void statisticsApi.refreshCommonCodes().catch(() => { + void statisticsApi.refreshAllCommonCodes().catch(() => { // 캐시 동기화 실패는 화면 진입을 막지 않음 }); }, []); diff --git a/apps/st/src/components/statistics/management/NotEnteredStatus.tsx b/apps/st/src/components/statistics/management/NotEnteredStatus.tsx index ea0c0aaf4..4a897589e 100644 --- a/apps/st/src/components/statistics/management/NotEnteredStatus.tsx +++ b/apps/st/src/components/statistics/management/NotEnteredStatus.tsx @@ -279,7 +279,6 @@ const NotEnteredStatus = () => { return; } const params = buildUnSubmitDataRequest(values, userInfo); - console.log(params); if (!params.dtlInstCd) { alert("기관 정보를 확인할 수 없습니다."); return; diff --git a/apps/st/src/entities/statistics/api/statistics-service.ts b/apps/st/src/entities/statistics/api/statistics-service.ts index c987a9a23..4c55bd556 100644 --- a/apps/st/src/entities/statistics/api/statistics-service.ts +++ b/apps/st/src/entities/statistics/api/statistics-service.ts @@ -370,7 +370,7 @@ export class StatisticsApiService implements StatisticsService { return response.data; } - /** 공통 코드 메모리 캐시 동기화 */ + /** 입력 서비스 공통 코드 메모리 캐시 동기화 */ public async refreshCommonCodes(): Promise { const response = await stClient.post( `${ENDPOINT.ST_SERVICE.INPUTCOMMON}/codes-refresh`, @@ -379,6 +379,26 @@ export class StatisticsApiService implements StatisticsService { ); return response.data; } + + /** 관리 서비스 공통 코드 메모리 캐시 동기화 */ + public async refreshManagementCommonCodes(): Promise { + const response = await stClient.post( + `${ENDPOINT.ST_SERVICE.COMMON}/codes/refresh`, + null, + withAuthHeader(), + ); + return response.data; + } + + /** 입력/관리 공통 코드 캐시 동기화 (한쪽 실패해도 다른 쪽은 완료) */ + public async refreshAllCommonCodes(): Promise< + PromiseSettledResult[] + > { + return Promise.allSettled([ + this.refreshCommonCodes(), + this.refreshManagementCommonCodes(), + ]); + } } export const statisticsApi = new StatisticsApiService(); diff --git a/apps/st/src/entities/statistics/model/statistics-interface.ts b/apps/st/src/entities/statistics/model/statistics-interface.ts index f73185eb4..faaca31ca 100644 --- a/apps/st/src/entities/statistics/model/statistics-interface.ts +++ b/apps/st/src/entities/statistics/model/statistics-interface.ts @@ -572,4 +572,6 @@ export interface StatisticsService { CheckStatusCode(param: CheckStatusCodeRequest): Promise; getUnSubmitData(param: unSubmitDataRequest): Promise; refreshCommonCodes(): Promise; + refreshManagementCommonCodes(): Promise; + refreshAllCommonCodes(): Promise[]>; } \ No newline at end of file diff --git a/apps/st/src/pages/auth/login/ui/login-page.tsx b/apps/st/src/pages/auth/login/ui/login-page.tsx index 0b2f115e3..7d07803ba 100644 --- a/apps/st/src/pages/auth/login/ui/login-page.tsx +++ b/apps/st/src/pages/auth/login/ui/login-page.tsx @@ -23,7 +23,7 @@ function LoginPage() { try { await authService.login({ userId, password }); try { - await statisticsApi.refreshCommonCodes(); + await statisticsApi.refreshAllCommonCodes(); } catch { // 로그인 성공 후 캐시 동기화 실패는 진입을 막지 않음 }