👀fix: 플랜 복사시 메뉴 위치 코드 수정

This commit is contained in:
yoosangwook 2025-02-27 16:59:16 +09:00
parent 6195e7fb4a
commit 84fa6562af

View File

@ -19,6 +19,7 @@ import { useCanvasSetting } from '@/hooks/option/useCanvasSetting'
import { compasDegAtom } from '@/store/orientationAtom' import { compasDegAtom } from '@/store/orientationAtom'
import { moduleSelectionDataState, selectedModuleState } from '@/store/selectedModuleOptions' import { moduleSelectionDataState, selectedModuleState } from '@/store/selectedModuleOptions'
import { useCanvasPopupStatusController } from './common/useCanvasPopupStatusController' import { useCanvasPopupStatusController } from './common/useCanvasPopupStatusController'
import { useCanvasMenu } from './common/useCanvasMenu'
/** /**
* 플랜 처리 * 플랜 처리
@ -58,6 +59,7 @@ export function usePlan(params = {}) {
const [compasDeg, setCompasDeg] = useRecoilState(compasDegAtom) const [compasDeg, setCompasDeg] = useRecoilState(compasDegAtom)
const [moduleSelectionDataStore, setModuleSelectionDataStore] = useRecoilState(moduleSelectionDataState) const [moduleSelectionDataStore, setModuleSelectionDataStore] = useRecoilState(moduleSelectionDataState)
const [selectedModules, setSelectedModules] = useRecoilState(selectedModuleState) const [selectedModules, setSelectedModules] = useRecoilState(selectedModuleState)
const { selectedMenu, setSelectedMenu } = useCanvasMenu()
/** /**
* 마우스 포인터의 가이드라인 제거 * 마우스 포인터의 가이드라인 제거
@ -224,6 +226,7 @@ export function usePlan(params = {}) {
fetchBasicSettings(newPlan.planNo, null) fetchBasicSettings(newPlan.planNo, null)
} else { } else {
if (isCopy) { if (isCopy) {
const currentSelectedMenu = selectedMenu
/* 복제 플랜 생성인 경우 현재 캔버스 데이터를 복제 */ /* 복제 플랜 생성인 경우 현재 캔버스 데이터를 복제 */
newPlan.canvasStatus = currentCanvasData() newPlan.canvasStatus = currentCanvasData()
newPlan.bgImageName = currentCanvasPlan?.bgImageName ?? null newPlan.bgImageName = currentCanvasPlan?.bgImageName ?? null
@ -284,6 +287,10 @@ export function usePlan(params = {}) {
roofSurfaceList.forEach((surface) => { roofSurfaceList.forEach((surface) => {
surface.modules = modules.filter((module) => module.surfaceId === surface.id) surface.modules = modules.filter((module) => module.surfaceId === surface.id)
}) })
setSelectedMenu(currentSelectedMenu)
} else {
setSelectedMenu('placement')
} }
setCurrentCanvasPlan(newPlan) setCurrentCanvasPlan(newPlan)
setPlans((plans) => [...plans.map((plan) => ({ ...plan, isCurrent: false })), newPlan]) setPlans((plans) => [...plans.map((plan) => ({ ...plan, isCurrent: false })), newPlan])