From 482b6b54777142e39c4d753ca06b9acdf81b0d57 Mon Sep 17 00:00:00 2001 From: yjnoh Date: Mon, 31 Mar 2025 10:20:45 +0900 Subject: [PATCH] =?UTF-8?q?=EC=88=98=EB=8F=99=20=EC=84=A4=EC=B9=98=20?= =?UTF-8?q?=ED=98=BC=ED=95=A9=EC=9D=BC=20=EA=B2=BD=EC=9A=B0=20=EC=84=A4?= =?UTF-8?q?=EC=B9=98=20=EC=97=AC=EB=B6=80=20=ED=99=95=EC=9D=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/hooks/module/useModuleBasicSetting.js | 15 +++++++++++++-- src/locales/ja.json | 3 ++- src/locales/ko.json | 3 ++- 3 files changed, 17 insertions(+), 4 deletions(-) diff --git a/src/hooks/module/useModuleBasicSetting.js b/src/hooks/module/useModuleBasicSetting.js index a196d798..8065df04 100644 --- a/src/hooks/module/useModuleBasicSetting.js +++ b/src/hooks/module/useModuleBasicSetting.js @@ -457,9 +457,8 @@ export function useModuleBasicSetting(tabNum) { * trestle에서 영역을 가져와 mouse:move 이벤트로 해당 영역에 진입했을때 booleanPointInPolygon 로 진입여부를 확인 * 확인 후 셀을 이동시킴 */ - const manualModuleSetup = (placementRef) => { + const manualModuleSetup = () => { //레이아웃 수동설치 토글 - const moduleSetupSurfaces = canvas?.getObjects().filter((obj) => obj.name === POLYGON_TYPE.MODULE_SETUP_SURFACE) //모듈설치면를 가져옴 const isChidori = moduleSetupOption.isChidori @@ -800,6 +799,18 @@ export function useModuleBasicSetting(tabNum) { addCanvasMouseEventListener('mouse:up', (e) => { let isIntersection = true + + // 혼합 설치 불가능한 모듈인지 확인 Y는 Y끼리 N은 N끼리만 설치 가능 + if (trestlePolygon.modules.length > 0) { + //이미 설치된 모듈중에 한개만 가져옴 + const mixAsgYn = trestlePolygon.modules[0].moduleInfo.mixAsgYn + //현재 체크된 모듈기준으로 혼합가능인지 확인 Y === Y, N === N 일때만 설치 가능 + if (checkedModule[0].mixAsgYn !== mixAsgYn) { + swalFire({ text: getMessage('module.place.mix.asg.yn.error') }) + return + } + } + if (!inside) return if (tempModule) { const rectPoints = [ diff --git a/src/locales/ja.json b/src/locales/ja.json index c8d080de..718aeb8e 100644 --- a/src/locales/ja.json +++ b/src/locales/ja.json @@ -1044,5 +1044,6 @@ "roof.material.can.not.delete": "割り当てられた配置面があります。", "module.layout.setup.max.count": "모듈의 최대 단수는 {0}, 최대 열수는 {1} 입니다. (JA)", "chidory.can.not.install": "千鳥配置できない工法です。", - "module.layout.setup.max.count.multiple": "모듈 {0}번의 최대 단수는 {1}, 최대 열수는 {2} 입니다. (JA)" + "module.layout.setup.max.count.multiple": "모듈 {0}번의 최대 단수는 {1}, 최대 열수는 {2} 입니다. (JA)", + "module.place.mix.asg.yn.error": "혼합 설치가 불가능합니다. (JA)" } diff --git a/src/locales/ko.json b/src/locales/ko.json index 6cd3cfb6..9ff2ecec 100644 --- a/src/locales/ko.json +++ b/src/locales/ko.json @@ -1044,5 +1044,6 @@ "roof.material.can.not.delete": "할당된 배치면이 있습니다.", "module.layout.setup.max.count": "모듈의 최대 단수는 {0}, 최대 열수는 {1} 입니다.", "chidory.can.not.install": "치조 불가 공법입니다.", - "module.layout.setup.max.count.multiple": "모듈 {0}번의 최대 단수는 {1}, 최대 열수는 {2} 입니다." + "module.layout.setup.max.count.multiple": "모듈 {0}번의 최대 단수는 {1}, 최대 열수는 {2} 입니다.", + "module.place.mix.asg.yn.error": "혼합 설치가 불가능합니다." }