From c95267e1bd45f7d7f6b4961b8f68e59fefbfc3d0 Mon Sep 17 00:00:00 2001 From: "hyojun.choi" Date: Tue, 11 Feb 2025 13:29:47 +0900 Subject: [PATCH] =?UTF-8?q?=EC=A0=80=EC=9E=A5=20=ED=9B=84=20=EB=B0=94?= =?UTF-8?q?=EB=A1=9C=20=ED=9A=8C=EB=A1=9C=EC=84=A4=EC=A0=95=20=EC=84=A0?= =?UTF-8?q?=ED=83=9D=20=EC=8B=9C=20=EB=B0=A9=EC=9C=84=20=EC=84=A4=EC=A0=95?= =?UTF-8?q?=20=EC=95=88=EB=90=98=EC=9E=88=EB=8A=94=20=EA=B2=BD=EC=9A=B0=20?= =?UTF-8?q?=EC=B2=98=EB=A6=AC=20=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/hooks/common/useMenu.js | 10 +++++++++- src/hooks/module/useTrestle.js | 7 ++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/hooks/common/useMenu.js b/src/hooks/common/useMenu.js index 5eadcf18..84c8cef7 100644 --- a/src/hooks/common/useMenu.js +++ b/src/hooks/common/useMenu.js @@ -17,17 +17,21 @@ import { useState } from 'react' import { v4 as uuidv4 } from 'uuid' import { useSurfaceShapeBatch } from '@/hooks/surface/useSurfaceShapeBatch' import { useRecoilValue } from 'recoil' -import { currentMenuState } from '@/store/canvasAtom' +import { canvasState, currentMenuState } from '@/store/canvasAtom' import { MENU } from '@/common/common' import { useTrestle } from '@/hooks/module/useTrestle' +import { usePolygon } from '@/hooks/usePolygon' +import { useOrientation } from '@/hooks/module/useOrientation' export default function useMenu() { const menus = [] const currentMenu = useRecoilValue(currentMenuState) + const canvas = useRecoilValue(canvasState) const [popupId, setPopupId] = useState(uuidv4()) const { addPopup } = usePopup() const { deleteAllSurfacesAndObjects } = useSurfaceShapeBatch({}) const { clear: trestleClear } = useTrestle() + const { nextStep } = useOrientation() const handleMenu = (type) => { if (type === 'outline') { switch (currentMenu) { @@ -85,6 +89,10 @@ export default function useMenu() { addPopup(popupId, 1, ) break case MENU.MODULE_CIRCUIT_SETTING.CIRCUIT_TRESTLE_SETTING: + const hasModules = canvas.getObjects().some((obj) => obj.name === 'module') + if (hasModules) { + nextStep() + } addPopup(popupId, 1, ) break } diff --git a/src/hooks/module/useTrestle.js b/src/hooks/module/useTrestle.js index 7c8412db..3e6adaab 100644 --- a/src/hooks/module/useTrestle.js +++ b/src/hooks/module/useTrestle.js @@ -646,7 +646,12 @@ export const useTrestle = () => { const params = { trestles, pcses, modules } //견적서 itemList 조회 - const { data: itemList, data2, result } = await getQuotationItem(params) + const { data, data2, result } = await getQuotationItem(params) + let itemList + if (!data) { + return + } + itemList = data if (result.resultCode === 'E') { swalFire({ text: result.resultMsg, icon: 'error' })