From ea8c3bdd717e189d23baf008712b3039419de1a5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=AF=BC=EC=8B=9D?= <43837214+Minsiki@users.noreply.github.com> Date: Thu, 27 Feb 2025 18:13:25 +0900 Subject: [PATCH] =?UTF-8?q?=ED=9A=8C=EB=A1=9C=EC=9E=88=EC=9D=84=EB=95=8C?= =?UTF-8?q?=20=EB=AA=A8=EB=93=88=20=EC=88=98=EC=A0=95=20=EB=B6=88=EA=B0=80?= =?UTF-8?q?=ED=95=98=EA=B2=8C=20=EC=A0=9C=ED=95=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/hooks/module/useModule.js | 24 ++++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/src/hooks/module/useModule.js b/src/hooks/module/useModule.js index f3fc0348..50e8e091 100644 --- a/src/hooks/module/useModule.js +++ b/src/hooks/module/useModule.js @@ -536,14 +536,7 @@ export function useModule() { const moduleRowRemove = (type) => { const activeModule = canvas.getObjects().filter((obj) => canvas.getActiveObjects()[0].id === obj.id)[0] - if (activeModule.circuit) { - swalFire({ - title: getMessage('can.not.remove.module'), - icon: 'error', - type: 'alert', - }) - return - } + c const rowModules = getRowModules(activeModule) const otherModules = getOtherModules(rowModules) const objects = getObjects() @@ -671,6 +664,9 @@ export function useModule() { const moduleSetupSurface = canvas .getObjects() .filter((obj) => obj.name === POLYGON_TYPE.MODULE_SETUP_SURFACE && obj.id === activeModule.surfaceId)[0] + if (moduleSetupSurface.modules.filter((module) => module.circuit).length > 0) { + return + } let width = -1 let isWarning = false if (targetModules.length === 0) { @@ -776,6 +772,9 @@ export function useModule() { const moduleSetupSurface = canvas .getObjects() .filter((obj) => obj.name === POLYGON_TYPE.MODULE_SETUP_SURFACE && obj.id === activeModule.surfaceId)[0] + if (moduleSetupSurface.modules.filter((module) => module.circuit).length > 0) { + return + } let height = -1 let isWarning = false canvas.discardActiveObject() @@ -855,6 +854,14 @@ export function useModule() { } const alignModule = (type, surfaceArray) => { + if (activeModule.circuit) { + swalFire({ + title: getMessage('can.not.remove.module'), + icon: 'error', + type: 'alert', + }) + return + } surfaceArray.forEach((surface) => { const modules = surface.modules @@ -939,6 +946,7 @@ export function useModule() { .getObjects() .filter((module) => module.name === POLYGON_TYPE.MODULE && module.surfaceId === surface.id) .forEach((module) => { + canvas.remove(module.circuit) canvas.remove(module) }) })