fix(numbering-rule): 채번규칙 저장 시 allocateNumberingCode로 실제 순번 할당

- generateNumberingCode를 allocateNumberingCode로 변경 (순번 실제 증가)

- saveSingleRow/saveMultipleRows/saveWithMultiTable 모두 적용

- NumberingRuleCard: 파트 타입 변경 시 defaultAutoConfig 적용

- NumberingRuleDesigner: 저장 시 partsWithDefaults로 기본값 병합

- sequenceLength/numberLength 기본값 4에서 3으로 변경

- 불필요한 console.log 제거
This commit is contained in:
SeongHyun Kim
2025-12-08 19:10:07 +09:00
parent b15b6e21ea
commit d908de7f66
6 changed files with 101 additions and 90 deletions

View File

@@ -2010,8 +2010,6 @@ export async function multiTableSave(
mainSubItem.company_code = companyCode;
}
logger.info(`서브 테이블 ${tableName} 메인 데이터 저장 준비:`, JSON.stringify(mainSubItem));
// 먼저 기존 데이터 존재 여부 확인 (user_id + is_primary 조합)
const checkQuery = `
SELECT * FROM "${tableName}"
@@ -2027,9 +2025,6 @@ export async function multiTableSave(
if (companyCode !== "*") {
checkParams.push(companyCode);
}
logger.info(`서브 테이블 ${tableName} 기존 데이터 확인 - 쿼리: ${checkQuery}`);
logger.info(`서브 테이블 ${tableName} 기존 데이터 확인 - 파라미터: ${JSON.stringify(checkParams)}`);
const existingResult = await client.query(checkQuery, checkParams);
@@ -2061,13 +2056,9 @@ export async function multiTableSave(
updateParams.push(companyCode);
}
logger.info(`서브 테이블 ${tableName} 메인 데이터 UPDATE - 쿼리: ${updateQuery}`);
logger.info(`서브 테이블 ${tableName} 메인 데이터 UPDATE - 값: ${JSON.stringify(updateParams)}`);
const updateResult = await client.query(updateQuery, updateParams);
subTableResults.push({ tableName, type: "main", data: updateResult.rows[0] });
} else {
logger.info(`서브 테이블 ${tableName} 메인 데이터 - 업데이트할 컬럼 없음, 기존 데이터 유지`);
subTableResults.push({ tableName, type: "main", data: existingResult.rows[0] });
}
} else {
@@ -2082,9 +2073,6 @@ export async function multiTableSave(
RETURNING *
`;
logger.info(`서브 테이블 ${tableName} 메인 데이터 INSERT - 쿼리: ${insertQuery}`);
logger.info(`서브 테이블 ${tableName} 메인 데이터 INSERT - 값: ${JSON.stringify(mainSubValues)}`);
const insertResult = await client.query(insertQuery, mainSubValues);
subTableResults.push({ tableName, type: "main", data: insertResult.rows[0] });
}