'use client' import { useState } from 'react' import { useRecoilState } from 'recoil' import { modalState } from '@/store/modalAtom' import { settingModalFirstOptionsState } from '@/store/settingAtom' import QSelectBox from '@/components/common/select/QSelectBox' import { useMessage } from '@/hooks/useMessage' import { post } from '@/lib/Axios' import { currentMenuState } from '@/store/canvasAtom' import { MENU } from '@/common/common' import RoofCoveringMenu from '@/components/floor-plan/RoofCoveringMenu' export default function CanvasMenu() { const [objectNo, setObjectNo] = useState('test123240912001') const [modalOption, setModalOption] = useRecoilState(modalState) //modal 열림닫힘 state const [menuNumber, setMenuNumber] = useState(null) const [vertical, setVertical] = useState(true) const { getMessage } = useMessage() const SelectOption = [{ name: '瓦53A' }, { name: '瓦53A' }] const [currentMenu, setCurrentMenu] = useRecoilState(currentMenuState) const onClickNav = (menu) => { setCurrentMenu(menu) } const settingsModalOptions = useRecoilState(settingModalFirstOptionsState) // 저장버튼(btn08) 클릭 시 호출되는 함수 const handleSaveSettings = async () => { try { // 서버에 전송할 데이터 const dataToSend = { option1: settingsModalOptions[0].option1.map((item) => ({ column: item.column, selected: item.selected, })), option2: settingsModalOptions[0].option2.map((item) => ({ column: item.column, selected: item.selected, })), } const patternData = { objectNo, assignDisplay: dataToSend.option1[0].selected, drawDisplay: dataToSend.option1[1].selected, gridDisplay: dataToSend.option1[2].selected, charDisplay: dataToSend.option1[3].selected, flowDisplay: dataToSend.option1[4].selected, hallwayDimenDisplay: dataToSend.option1[5].selected, actualDimenDisplay: dataToSend.option1[6].selected, noDimenDisplay: dataToSend.option1[7].selected, trestleDisplay: dataToSend.option1[8].selected, coordiDisplay: dataToSend.option1[9].selected, drawConverDisplay: dataToSend.option1[10].selected, onlyBorder: dataToSend.option2[0].selected, lineHatch: dataToSend.option2[1].selected, allPainted: dataToSend.option2[2].selected, } // HTTP POST 요청 보내기 const response = await post({ url: `/api/canvas-management/canvas-settings`, data: patternData }) // 응답 처리 console.log('서버 응답:', response.data) alert('설정이 저장되었습니다.') } catch (error) { console.error('설정을 저장하는 동안 오류가 발생했습니다:', error) alert('설정을 저장하는 중 오류가 발생했습니다.') } } return (
{menuNumber !== 6 && menuNumber !== 5 && ( <>
{getMessage('plan.mode.vertical.horizontal')}
100%
)} {menuNumber === 5 && ( <>
)} {menuNumber === 6 && ( <>
)}
{Object.values(MENU.ROOF_COVERING).includes(currentMenu) && } {/*{menuNumber === 2 && } {menuNumber === 3 && } {menuNumber === 4 && }*/}
) }