feat: 프리뷰 모드에서 회사 코드 오버라이드 기능 추가

- 최고 관리자만 다른 회사 코드로 오버라이드 가능하도록 로직 개선
- entityJoinController 및 tableManagementController에서 회사 코드 오버라이드 처리 추가
- 관련 API 호출 시 오버라이드된 회사 코드 적용
- 프리뷰 모드 감지 및 UI 개선을 위한 코드 추가
This commit is contained in:
DDD1542
2026-01-13 13:28:50 +09:00
parent 0773989c74
commit 905a9f62c3
16 changed files with 3328 additions and 297 deletions

View File

@@ -55,6 +55,8 @@ export const SplitPanelLayoutComponent: React.FC<SplitPanelLayoutComponentProps>
...props
}) => {
const componentConfig = (component.componentConfig || {}) as SplitPanelLayoutConfig;
// 🆕 프리뷰용 회사 코드 오버라이드 (최고 관리자만 사용 가능)
const companyCode = (props as any).companyCode as string | undefined;
// 기본 설정값
const splitRatio = componentConfig.splitRatio || 30;
@@ -766,6 +768,7 @@ export const SplitPanelLayoutComponent: React.FC<SplitPanelLayoutComponentProps>
enableEntityJoin: true, // 엔티티 조인 활성화
dataFilter: componentConfig.leftPanel?.dataFilter, // 🆕 데이터 필터 전달
additionalJoinColumns: additionalJoinColumns.length > 0 ? additionalJoinColumns : undefined, // 🆕 추가 조인 컬럼
companyCodeOverride: companyCode, // 🆕 프리뷰용 회사 코드 오버라이드
});
// 🔍 디버깅: API 응답 데이터의 키 확인
@@ -828,6 +831,7 @@ export const SplitPanelLayoutComponent: React.FC<SplitPanelLayoutComponentProps>
search: { id: primaryKey },
enableEntityJoin: true, // 엔티티 조인 활성화
size: 1,
companyCodeOverride: companyCode, // 🆕 프리뷰용 회사 코드 오버라이드
});
const detail = result.items && result.items.length > 0 ? result.items[0] : null;
@@ -885,6 +889,7 @@ export const SplitPanelLayoutComponent: React.FC<SplitPanelLayoutComponentProps>
search: searchConditions,
enableEntityJoin: true,
size: 1000,
companyCodeOverride: companyCode, // 🆕 프리뷰용 회사 코드 오버라이드
});
if (result.data) {
allResults.push(...result.data);
@@ -919,6 +924,7 @@ export const SplitPanelLayoutComponent: React.FC<SplitPanelLayoutComponentProps>
search: searchConditions,
enableEntityJoin: true,
size: 1000,
companyCodeOverride: companyCode, // 🆕 프리뷰용 회사 코드 오버라이드
});
console.log("🔗 [분할패널] 복합키 조회 결과:", result);