feat: 엔티티 타입 컬럼 표시 설정을 화면 편집기로 이동

- 테이블 타입 관리에서 엔티티 타입의 표시 컬럼 설정 완전 제거
- 컬럼 설정 패널에서 엔티티 타입일 때 표시 컬럼 조합 선택 기능 추가
- 기본 테이블과 조인 테이블의 컬럼을 자유롭게 조합 가능
- 구분자 설정 및 실시간 미리보기 기능 포함
- 별도 모달 방식 제거하고 기존 컬럼 설정 패널에 통합
This commit is contained in:
kjs
2025-09-23 16:23:36 +09:00
parent 4aefb5be6a
commit de6c7a8008
9 changed files with 293 additions and 51 deletions

View File

@@ -2044,7 +2044,10 @@ export class TableManagementService {
}
// Entity 조인 설정 감지 (화면별 엔티티 설정 전달)
let joinConfigs = await entityJoinService.detectEntityJoins(tableName, options.screenEntityConfigs);
let joinConfigs = await entityJoinService.detectEntityJoins(
tableName,
options.screenEntityConfigs
);
// 추가 조인 컬럼 정보가 있으면 조인 설정에 추가
if (
@@ -2068,8 +2071,10 @@ export class TableManagementService {
sourceColumn: baseJoinConfig.sourceColumn, // 원본 컬럼 (writer)
referenceTable: additionalColumn.sourceTable, // 참조 테이블 (user_info)
referenceColumn: baseJoinConfig.referenceColumn, // 참조 키 (user_id)
displayColumn: additionalColumn.sourceColumn, // 표시할 컬럼 (email)
displayColumns: [additionalColumn.sourceColumn], // 표시할 컬럼 (email)
displayColumn: additionalColumn.sourceColumn, // 하위 호환성
aliasColumn: additionalColumn.joinAlias, // 별칭 (writer_email)
separator: " - ", // 기본 구분자
};
joinConfigs.push(additionalJoinConfig);
@@ -2243,7 +2248,7 @@ export class TableManagementService {
await referenceCacheService.getCachedReference(
config.referenceTable,
config.referenceColumn,
config.displayColumn
config.displayColumn || config.displayColumns[0]
);
}
@@ -2430,7 +2435,7 @@ export class TableManagementService {
const lookupValue = referenceCacheService.getLookupValue(
config.referenceTable,
config.referenceColumn,
config.displayColumn,
config.displayColumn || config.displayColumns[0],
String(sourceValue)
);
@@ -2724,7 +2729,7 @@ export class TableManagementService {
const cachedData = await referenceCacheService.getCachedReference(
config.referenceTable,
config.referenceColumn,
config.displayColumn
config.displayColumn || config.displayColumns[0]
);
if (cachedData && cachedData.size > 0) {
@@ -2808,7 +2813,7 @@ export class TableManagementService {
const cachedData = await referenceCacheService.getCachedReference(
config.referenceTable,
config.referenceColumn,
config.displayColumn
config.displayColumn || config.displayColumns[0]
);
if (cachedData) {
@@ -2847,7 +2852,7 @@ export class TableManagementService {
const hitRate = referenceCacheService.getCacheHitRate(
config.referenceTable,
config.referenceColumn,
config.displayColumn
config.displayColumn || config.displayColumns[0]
);
totalHitRate += hitRate;
}