From 37e91053990f5bcf52806677dd748533ae697887 Mon Sep 17 00:00:00 2001 From: basssy Date: Tue, 14 Jan 2025 13:50:35 +0900 Subject: [PATCH] =?UTF-8?q?=EB=A9=94=EB=89=B4=EA=B2=AC=EC=A0=81=EC=84=9C?= =?UTF-8?q?=20=EC=9D=B4=EB=8F=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/floor-plan/CanvasMenu.jsx | 22 +++++++++++++++++----- src/locales/ja.json | 1 + src/locales/ko.json | 1 + 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/src/components/floor-plan/CanvasMenu.jsx b/src/components/floor-plan/CanvasMenu.jsx index 14e273b6..a47de33f 100644 --- a/src/components/floor-plan/CanvasMenu.jsx +++ b/src/components/floor-plan/CanvasMenu.jsx @@ -34,7 +34,7 @@ import { addedRoofsState, basicSettingState, selectedRoofMaterialSelector, setti import { placementShapeDrawingPointsState } from '@/store/placementShapeDrawingAtom' import { commonUtilsState } from '@/store/commonUtilsAtom' import { menusState, menuTypeState } from '@/store/menuAtom' -import { estimateState } from '@/store/floorPlanObjectAtom' +import { estimateState, floorPlanObjectState } from '@/store/floorPlanObjectAtom' import { pwrGnrSimTypeState } from '@/store/simulatorAtom' import { isObjectNotEmpty } from '@/util/common-utils' @@ -92,6 +92,8 @@ export default function CanvasMenu(props) { const [buttonStyle4, setButtonStyle4] = useState('') //견적서 복사 버튼 const [buttonStyle5, setButtonStyle5] = useState('') //잠금 버튼 + const setFloorPlanObjectNo = useSetRecoilState(floorPlanObjectState) //견적서 화면용 물건번호리코일 + // 발전시뮬레이션 메뉴 이동 const { objectNo, pid } = floorPlanState @@ -171,9 +173,19 @@ export default function CanvasMenu(props) { setType('module') break case 5: - setMenuNumber(menu.index) - setCurrentMenu(menu.title) - router.push(`/floor-plan/estimate/5?pid=${pid}&objectNo=${objectNo}`) + promiseGet({ url: `/api/estimate/${objectNo}/${pid}/detail` }).then((res) => { + if (res.status === 200) { + const estimateDetail = res.data + if (estimateDetail.docNo) { + setMenuNumber(menu.index) + setCurrentMenu(menu.title) + setFloorPlanObjectNo({ floorPlanObjectNo: objectNo }) + router.push(`/floor-plan/estimate/5?pid=${pid}&objectNo=${objectNo}`) + } else { + swalFire({ text: getMessage('estimate.menu.move.valid1') }) + } + } + }) break case 6: promiseGet({ url: `/api/estimate/${objectNo}/${pid}/detail` }).then((res) => { @@ -191,7 +203,7 @@ export default function CanvasMenu(props) { break } - if (menu.index !== 6 && menu.index !== 0) { + if (menu.index !== 6 && menu.index !== 0 && menu.index !== 5) { setMenuNumber(menu.index) setCurrentMenu(menu.title) } diff --git a/src/locales/ja.json b/src/locales/ja.json index 00cd7e31..41d0a817 100644 --- a/src/locales/ja.json +++ b/src/locales/ja.json @@ -938,6 +938,7 @@ "estimate.detail.unlock.alertMsg": "見積書を修正して保存", "estimate.detail.alert.delFile": "添付ファイルを完全に削除するには[保存]ボタンをクリックしてください", "estimate.detail.alert.selectDelItem": "削除する商品を選択してください.", + "estimate.menu.move.valid1": "見積書を作成したら、見積書を照会できます.", "simulator.title.sub1": "物件番号", "simulator.title.sub2": "作成日", "simulator.title.sub3": "システム容量", diff --git a/src/locales/ko.json b/src/locales/ko.json index 2a6fd228..4b51f8f2 100644 --- a/src/locales/ko.json +++ b/src/locales/ko.json @@ -947,6 +947,7 @@ "estimate.detail.unlock.alertMsg": "견적서를 수정하고, 저장하십시오", "estimate.detail.alert.delFile": "첨부파일을 완전히 삭제하려면 [저장]버튼을 클릭하십시오.", "estimate.detail.alert.selectDelItem": "삭제할 제품을 선택하세요.", + "estimate.menu.move.valid1": "견적서를 생성한 후에, 견적서를 조회할 수 있습니다.", "simulator.title.sub1": "물건번호", "simulator.title.sub2": "작성일", "simulator.title.sub3": "시스템 용량",