가대 설치 완료 전 후 처리 추가

- surface isComplete 속성 추가
This commit is contained in:
hyojun.choi 2025-03-06 10:17:31 +09:00
parent c5ea37acff
commit 809673125e
3 changed files with 17 additions and 4 deletions

View File

@ -33,7 +33,7 @@ const ALLOCATION_TYPE = {
export default function CircuitTrestleSetting({ id }) { export default function CircuitTrestleSetting({ id }) {
const { getMessage } = useMessage() const { getMessage } = useMessage()
const { closePopup } = usePopup() const { closePopup } = usePopup()
const { apply, setViewCircuitNumberTexts, getEstimateData, clear: clearTrestle } = useTrestle() const { apply, setViewCircuitNumberTexts, getEstimateData, clear: clearTrestle, setAllModuleSurfaceIsComplete } = useTrestle()
const { swalFire } = useSwal() const { swalFire } = useSwal()
const { saveEstimate } = useEstimate() const { saveEstimate } = useEstimate()
const canvas = useRecoilValue(canvasState) const canvas = useRecoilValue(canvasState)
@ -330,6 +330,8 @@ export default function CircuitTrestleSetting({ id }) {
// () // ()
const onApply = async () => { const onApply = async () => {
setAllSurfaceIsComplete(false)
setIsGlobalLoading(true) setIsGlobalLoading(true)
canvas canvas
.getObjects() .getObjects()
@ -363,9 +365,11 @@ export default function CircuitTrestleSetting({ id }) {
await saveCanvas(false) await saveCanvas(false)
// //
await saveEstimate(result) await saveEstimate(result)
setAllSurfaceIsComplete(true)
} else { } else {
setIsGlobalLoading(false) setIsGlobalLoading(false)
} }
// removeNotAllocationModules() // removeNotAllocationModules()
} }

View File

@ -34,7 +34,7 @@ export default function useMenu() {
const [popupId, setPopupId] = useState(uuidv4()) const [popupId, setPopupId] = useState(uuidv4())
const { addPopup } = usePopup() const { addPopup } = usePopup()
const { deleteAllSurfacesAndObjects } = useSurfaceShapeBatch({}) const { deleteAllSurfacesAndObjects } = useSurfaceShapeBatch({})
const { clear: trestleClear } = useTrestle() const { clear: trestleClear, setAllModuleSurfaceIsComplete } = useTrestle()
const { nextStep } = useOrientation() const { nextStep } = useOrientation()
const handleMenu = (type) => { const handleMenu = (type) => {
if (type === 'outline') { if (type === 'outline') {
@ -90,6 +90,7 @@ export default function useMenu() {
switch (currentMenu) { switch (currentMenu) {
case MENU.MODULE_CIRCUIT_SETTING.BASIC_SETTING: case MENU.MODULE_CIRCUIT_SETTING.BASIC_SETTING:
trestleClear() trestleClear()
setAllModuleSurfaceIsComplete(false)
addPopup(popupId, 1, <BasicSetting id={popupId} />) addPopup(popupId, 1, <BasicSetting id={popupId} />)
break break
case MENU.MODULE_CIRCUIT_SETTING.CIRCUIT_TRESTLE_SETTING: case MENU.MODULE_CIRCUIT_SETTING.CIRCUIT_TRESTLE_SETTING:

View File

@ -602,7 +602,7 @@ export const useTrestle = () => {
const quotationParam = getTrestleParams(surface, exposedBottomModules) const quotationParam = getTrestleParams(surface, exposedBottomModules)
surface.set({ quotationParam, isComplete: true }) surface.set({ quotationParam })
}) })
return true return true
@ -2789,5 +2789,13 @@ export const useTrestle = () => {
canvas.renderAll() canvas.renderAll()
} }
return { apply, getTrestleParams, clear, setViewCircuitNumberTexts, getEstimateData } // 가대 설치 완료 전,후 모든 surface의 isComplete를 변경
const setAllModuleSurfaceIsComplete = (bool) => {
const surfaces = canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.MODULE_SETUP_SURFACE)
surfaces.forEach((surface) => {
surface.isComplete = bool
})
}
return { apply, getTrestleParams, clear, setViewCircuitNumberTexts, getEstimateData, setAllModuleSurfaceIsComplete }
} }