조인 컬럼 문제 수정

This commit is contained in:
kjs
2025-09-24 10:33:54 +09:00
parent a757034d86
commit e75889a127
4 changed files with 248 additions and 71 deletions

View File

@@ -2065,21 +2065,27 @@ export class TableManagementService {
);
if (baseJoinConfig) {
// joinAlias에서 실제 컬럼명 추출 (예: dept_code_location_name -> location_name)
// sourceColumn을 제거한 나머지 부분이 실제 컬럼명
const sourceColumn = baseJoinConfig.sourceColumn; // dept_code
const joinAlias = additionalColumn.joinAlias; // dept_code_location_name
const actualColumnName = joinAlias.replace(`${sourceColumn}_`, ""); // location_name
// 추가 조인 컬럼 설정 생성
const additionalJoinConfig: EntityJoinConfig = {
sourceTable: tableName,
sourceColumn: baseJoinConfig.sourceColumn, // 원본 컬럼 (writer)
referenceTable: additionalColumn.sourceTable, // 참조 테이블 (user_info)
referenceColumn: baseJoinConfig.referenceColumn, // 참조 키 (user_id)
displayColumns: [additionalColumn.sourceColumn], // 표시할 컬럼들 (email)
displayColumn: additionalColumn.sourceColumn, // 하위 호환성
aliasColumn: additionalColumn.joinAlias, // 별칭 (writer_email)
sourceColumn: baseJoinConfig.sourceColumn, // 원본 컬럼 (dept_code)
referenceTable: additionalColumn.sourceTable, // 참조 테이블 (dept_info)
referenceColumn: baseJoinConfig.referenceColumn, // 참조 키 (dept_code)
displayColumns: [actualColumnName], // 표시할 컬럼들 (location_name)
displayColumn: actualColumnName, // 하위 호환성
aliasColumn: additionalColumn.joinAlias, // 별칭 (dept_code_location_name)
separator: " - ", // 기본 구분자
};
joinConfigs.push(additionalJoinConfig);
logger.info(
`추가 조인 컬럼 설정 추가: ${additionalJoinConfig.aliasColumn}`
`추가 조인 컬럼 설정 추가: ${additionalJoinConfig.aliasColumn} -> ${actualColumnName}`
);
}
}