diff --git a/src/components/floor-plan/CanvasMenu.jsx b/src/components/floor-plan/CanvasMenu.jsx index cb2ab1e1..495bc781 100644 --- a/src/components/floor-plan/CanvasMenu.jsx +++ b/src/components/floor-plan/CanvasMenu.jsx @@ -245,6 +245,23 @@ export default function CanvasMenu(props) { await saveCanvas() } + // 나가기 버튼 클릭 + const handleLeaveCanvas = () => { + swalFire({ + text: getMessage('plan.message.leave'), + type: 'confirm', + confirmButtonText: getMessage('plan.message.corfirm.yes'), + cancelButtonText: getMessage('plan.message.confirm.no'), + confirmFn: async () => { + await handleSaveCanvas() + router.push(`/management/stuff/detail?objectNo=${objectNo}`) + }, + denyFn: () => { + router.push(`/management/stuff/detail?objectNo=${objectNo}`) + }, + }) + } + const [placementInitialId, setPlacementInitialId] = useState(uuidv4()) const placementInitialProps = { id: placementInitialId, @@ -531,7 +548,7 @@ export default function CanvasMenu(props) {
- +
)} diff --git a/src/hooks/usePlan.js b/src/hooks/usePlan.js index e44753d7..36d619c8 100644 --- a/src/hooks/usePlan.js +++ b/src/hooks/usePlan.js @@ -181,6 +181,7 @@ export function usePlan(params = {}) { setPlans((plans) => [...plans, { id: res.data, objectNo: objectNo, planNo: planNo, userId: userId, canvasStatus: canvasStatus }]) } updateCurrentPlan(res.data) + swalFire({ text: getMessage('plan.message.save') }) }) .catch((error) => { swalFire({ text: error.message, icon: 'error' }) @@ -200,6 +201,7 @@ export function usePlan(params = {}) { await promisePut({ url: '/api/canvas-management/canvas-statuses', data: planData }) .then((res) => { setPlans((plans) => plans.map((plan) => (plan.id === currentCanvasPlan.id ? { ...plan, canvasStatus: canvasStatus } : plan))) + swalFire({ text: getMessage('plan.message.save') }) }) .catch((error) => { swalFire({ text: error.message, icon: 'error' }) diff --git a/src/locales/ja.json b/src/locales/ja.json index e36e19b6..a70c8c41 100644 --- a/src/locales/ja.json +++ b/src/locales/ja.json @@ -305,6 +305,9 @@ "plan.message.confirm.delete": "PLAN을 삭제하시겠습니까?", "plan.message.save": "저장되었습니다.", "plan.message.delete": "삭제되었습니다.", + "plan.message.leave": "작성한 물건을 저장하시겠습니까? [아니오]를 선택한 경우, 저장하지 않고 물건현황 목록으로 이동합니다.", + "plan.message.confirm.yes": "예", + "plan.message.confirm.no": "아니오", "setting": "設定", "delete": "삭제(JA)", "delete.all": "전체 삭제(JA)", diff --git a/src/locales/ko.json b/src/locales/ko.json index 2043cdab..f5b5eb1f 100644 --- a/src/locales/ko.json +++ b/src/locales/ko.json @@ -310,6 +310,9 @@ "plan.message.confirm.delete": "PLAN을 삭제하시겠습니까?", "plan.message.save": "저장되었습니다.", "plan.message.delete": "삭제되었습니다.", + "plan.message.leave": "작성한 물건을 저장하시겠습니까? [아니오]를 선택한 경우, 저장하지 않고 물건현황 목록으로 이동합니다.", + "plan.message.corfirm.yes": "예", + "plan.message.confirm.no": "아니오", "setting": "설정", "delete": "삭제", "delete.all": "전체 삭제",