diff --git a/src/hooks/module/useTrestle.js b/src/hooks/module/useTrestle.js index b24e28d1..c13dc67f 100644 --- a/src/hooks/module/useTrestle.js +++ b/src/hooks/module/useTrestle.js @@ -2601,8 +2601,16 @@ export const useTrestle = () => { const { constTp } = moduleSelection.construction const { addRoof } = moduleSelection + // 서브모듈 코드 판별: 서로 다른 계열 혼합(예: DC3=D+C3)일 때만 서브모듈 코드 세팅 + // 단일(C3) 또는 같은 계열 혼합(C1C2C3)은 빈 문자열 + const subCodes = module.itemTp?.match(/[A-Z]\d*/g) || [] + const uniquePrefixes = new Set(subCodes.map((code) => code.charAt(0))) + const isDifferentSeriesMix = subCodes.length > 1 && uniquePrefixes.size > 1 + const subModuleTpCd = isDifferentSeriesMix ? surface.modules?.[0]?.moduleInfo?.moduleTpCd || '' : '' + return { moduleTpCd: module.itemTp, + subModuleTpCd, roofMatlCd: parent.roofMaterial.roofMatlCd, mixMatlNo: module.mixMatlNo, raftBaseCd: addRoof.raft ?? addRoof.raftBaseCd,