diff --git a/src/components/floor-plan/modal/setting01/FirstOption.jsx b/src/components/floor-plan/modal/setting01/FirstOption.jsx
index 9c146485..5753a410 100644
--- a/src/components/floor-plan/modal/setting01/FirstOption.jsx
+++ b/src/components/floor-plan/modal/setting01/FirstOption.jsx
@@ -27,11 +27,9 @@ export default function FirstOption() {
const res = await get({ url: `/api/canvas-management/canvas-settings/by-object/${objectNo}` })
const optionData1 = settingModalFirstOptions.option1.map((item) => ({ ...item, selected: res[item.column] }))
const optionData2 = settingModalFirstOptions.option2.map((item) => ({ ...item, selected: res[item.column] }))
+ const optionData5 = settingModalFirstOptions.dimensionDisplay.map((item) => ({ ...item, selected: res[item.column] }))
const optionData3 = settingModalSecondOptions.option3.map((item) => ({ ...item }))
const optionData4 = settingModalSecondOptions.option4.map((item) => ({ ...item, selected: res[item.column] }))
- const optionData5 = settingModalFirstOptions.dimensionDisplay.map((item) => ({
- ...item,
- }))
// 데이터 설정
setSettingModalFirstOptions({
@@ -39,7 +37,7 @@ export default function FirstOption() {
option2: optionData2,
dimensionDisplay: optionData5,
})
- console.log('optionData5', optionData5)
+
setSettingModalSecondOptions({
option3: optionData3,
option4: optionData4,
@@ -66,6 +64,10 @@ export default function FirstOption() {
column: item.column,
selected: item.selected,
})),
+ firstOption3: dimensionDisplay.map((item) => ({
+ column: item.column,
+ selected: item.selected,
+ })),
// secondOption1: secondOptions[0].option1.map((item) => ({
// name: item.id,
// name: item.name,
@@ -80,17 +82,19 @@ export default function FirstOption() {
const patternData = {
objectNo,
//디스플레이 설정(다중)
- assignDisplay: dataToSend.firstOption1[0].selected,
- drawDisplay: dataToSend.firstOption1[1].selected,
+ allocDisplay: dataToSend.firstOption1[0].selected,
+ outlineDisplay: dataToSend.firstOption1[1].selected,
gridDisplay: dataToSend.firstOption1[2].selected,
- charDisplay: dataToSend.firstOption1[3].selected,
- flowDisplay: dataToSend.firstOption1[4].selected,
- hallwayDimenDisplay: dataToSend.firstOption1[5].selected,
- actualDimenDisplay: dataToSend.firstOption1[6].selected,
- noDimenDisplay: dataToSend.firstOption1[7].selected,
- trestleDisplay: dataToSend.firstOption1[8].selected,
- coordiDisplay: dataToSend.firstOption1[9].selected,
- drawConverDisplay: dataToSend.firstOption1[10].selected,
+ lineDisplay: dataToSend.firstOption1[3].selected,
+ wordDisplay: dataToSend.firstOption1[4].selected,
+ circuitNumDisplay: dataToSend.firstOption1[5].selected,
+ flowDisplay: dataToSend.firstOption1[6].selected,
+ trestleDisplay: dataToSend.firstOption1[7].selected,
+ totalDisplay: dataToSend.firstOption1[8].selected,
+ //차수 표시(다건)
+ corridorDimension: dataToSend.firstOption3[0].selected,
+ realDimension: dataToSend.firstOption3[1].selected,
+ noneDimension: dataToSend.firstOption3[2].selected,
//화면 표시(다중)
onlyBorder: dataToSend.firstOption2[0].selected,
lineHatch: dataToSend.firstOption2[1].selected,
@@ -112,13 +116,75 @@ export default function FirstOption() {
}
}
- const onClickDimension = (item) => {
+ const onClickDimension = async (item) => {
const options = settingModalFirstOptions?.dimensionDisplay.map((option) => {
option.selected = option.id === item.id
return option
})
- setSettingModalFirstOptions({ option1, option2, dimensionDisplay: options })
+ setSettingModalFirstOptions({ option1, option2, dimensionDisplay })
+
+ try {
+ // 서버에 전송할 데이터
+ const dataToSend = {
+ firstOption1: option1.map((item) => ({
+ column: item.column,
+ selected: item.selected,
+ })),
+ firstOption2: option2.map((item) => ({
+ column: item.column,
+ selected: item.selected,
+ })),
+ firstOption3: dimensionDisplay.map((item) => ({
+ column: item.column,
+ selected: item.selected,
+ })),
+ // secondOption1: secondOptions[0].option1.map((item) => ({
+ // name: item.id,
+ // name: item.name,
+ // // 필요한 경우 데이터 항목 추가
+ // })),
+ secondOption2: option4.map((item) => ({
+ column: item.column,
+ selected: item.selected,
+ })),
+ }
+
+ const patternData = {
+ objectNo,
+ //디스플레이 설정(다중)
+ allocDisplay: dataToSend.firstOption1[0].selected,
+ outlineDisplay: dataToSend.firstOption1[1].selected,
+ gridDisplay: dataToSend.firstOption1[2].selected,
+ lineDisplay: dataToSend.firstOption1[3].selected,
+ wordDisplay: dataToSend.firstOption1[4].selected,
+ circuitNumDisplay: dataToSend.firstOption1[5].selected,
+ flowDisplay: dataToSend.firstOption1[6].selected,
+ trestleDisplay: dataToSend.firstOption1[7].selected,
+ totalDisplay: dataToSend.firstOption1[8].selected,
+ //차수 표시(다건)
+ corridorDimension: dataToSend.firstOption3[0].selected,
+ realDimension: dataToSend.firstOption3[1].selected,
+ noneDimension: dataToSend.firstOption3[2].selected,
+ //화면 표시(다중)
+ onlyBorder: dataToSend.firstOption2[0].selected,
+ lineHatch: dataToSend.firstOption2[1].selected,
+ allPainted: dataToSend.firstOption2[2].selected,
+ //흡착범위 설정(단건)
+ adsorpRangeSmall: dataToSend.secondOption2[0].selected,
+ adsorpRangeSmallSemi: dataToSend.secondOption2[1].selected,
+ adsorpRangeMedium: dataToSend.secondOption2[2].selected,
+ adsorpRangeLarge: dataToSend.secondOption2[3].selected,
+ }
+
+ // HTTP POST 요청 보내기
+ await post({ url: `/api/canvas-management/canvas-settings`, data: patternData }).then((res) => {
+ //toastUp({ message: res.returnMessage, type: 'success' })
+ toastUp({ message: getMessage(res.returnMessage), type: 'success' })
+ })
+ } catch (error) {
+ toastUp({ message: getMessage(res.returnMessage), type: 'error' })
+ }
}
return (
@@ -126,34 +192,37 @@ export default function FirstOption() {
{getMessage('modal.canvas.setting.first.option.info')}
- {settingModalFirstOptions?.option1.map((item) => (
-
- ))}
+ {settingModalFirstOptions &&
+ settingModalFirstOptions.option1.map((item) => (
+
+ ))}
{getMessage('modal.canvas.setting.first.option.dimension')}
- {settingModalFirstOptions?.dimensionDisplay?.map((item) => (
-
- ))}
+ {settingModalFirstOptions &&
+ settingModalFirstOptions.dimensionDisplay.map((item) => (
+
+ ))}
{getMessage('modal.canvas.setting.first.option.display')}
- {settingModalFirstOptions?.option2.map((item) => (
-
- ))}
+ {settingModalFirstOptions &&
+ settingModalFirstOptions.option2.map((item) => (
+
+ ))}
>
diff --git a/src/components/floor-plan/modal/setting01/SecondOption.jsx b/src/components/floor-plan/modal/setting01/SecondOption.jsx
index e850f403..867398cc 100644
--- a/src/components/floor-plan/modal/setting01/SecondOption.jsx
+++ b/src/components/floor-plan/modal/setting01/SecondOption.jsx
@@ -13,7 +13,7 @@ export default function SecondOption() {
const [adsorptionPointMode, setAdsorptionPointMode] = useRecoilState(adsorptionPointModeState)
const setAdsorptionRange = useSetRecoilState(adsorptionRangeState)
- const { option1, option2 } = settingModalFirstOptions
+ const { option1, option2, dimensionDisplay } = settingModalFirstOptions
const { option3, option4 } = settingModalSecondOptions
const { getMessage } = useMessage()
const { get, post } = useAxios()
@@ -30,12 +30,10 @@ export default function SecondOption() {
const res = await get({ url: `/api/canvas-management/canvas-settings/by-object/${objectNo}` })
const optionData1 = settingModalFirstOptions.option1.map((item) => ({ ...item, selected: res[item.column] }))
const optionData2 = settingModalFirstOptions.option2.map((item) => ({ ...item, selected: res[item.column] }))
+ const optionData5 = settingModalFirstOptions.dimensionDisplay.map((item) => ({ ...item, selected: res[item.column] }))
const optionData3 = settingModalSecondOptions.option3.map((item) => ({ ...item }))
const optionData4 = settingModalSecondOptions.option4.map((item) => ({ ...item, selected: res[item.column] }))
- const optionData5 = settingModalFirstOptions.dimensionDisplay.map((item) => ({
- ...item,
- }))
- // 데이터 설정
+
setSettingModalFirstOptions({
option1: optionData1,
option2: optionData2,
@@ -52,16 +50,9 @@ export default function SecondOption() {
const onClickOption = async (option) => {
// option4에서 한 개만 선택 가능하도록 처리
- const updatedOption4 = option4.map((item) =>
- item.id === option.id
- ? { ...item, selected: true }
- : {
- ...item,
- selected: false,
- },
- )
+ const updatedOption4 = option4.map((item) => (item.id === option.id ? { ...item, selected: true } : { ...item, selected: false }))
- setSettingModalFirstOptions({ option1, option2 })
+ setSettingModalFirstOptions({ option1, option2, dimensionDisplay })
setSettingModalSecondOptions({ option3, option4: updatedOption4 })
try {
@@ -75,6 +66,10 @@ export default function SecondOption() {
column: item.column,
selected: item.selected,
})),
+ firstOption3: dimensionDisplay.map((item) => ({
+ column: item.column,
+ selected: item.selected,
+ })),
// secondOption1: secondOptions[0].option3.map((item) => ({
// name: item.id,
// name: item.name,
@@ -88,17 +83,19 @@ export default function SecondOption() {
const patternData = {
objectNo,
//디스플레이 설정(다중)
- assignDisplay: dataToSend.firstOption1[0].selected,
- drawDisplay: dataToSend.firstOption1[1].selected,
+ allocDisplay: dataToSend.firstOption1[0].selected,
+ outlineDisplay: dataToSend.firstOption1[1].selected,
gridDisplay: dataToSend.firstOption1[2].selected,
- charDisplay: dataToSend.firstOption1[3].selected,
- flowDisplay: dataToSend.firstOption1[4].selected,
- hallwayDimenDisplay: dataToSend.firstOption1[5].selected,
- actualDimenDisplay: dataToSend.firstOption1[6].selected,
- noDimenDisplay: dataToSend.firstOption1[7].selected,
- trestleDisplay: dataToSend.firstOption1[8].selected,
- coordiDisplay: dataToSend.firstOption1[9].selected,
- drawConverDisplay: dataToSend.firstOption1[10].selected,
+ lineDisplay: dataToSend.firstOption1[3].selected,
+ wordDisplay: dataToSend.firstOption1[4].selected,
+ circuitNumDisplay: dataToSend.firstOption1[5].selected,
+ flowDisplay: dataToSend.firstOption1[6].selected,
+ trestleDisplay: dataToSend.firstOption1[7].selected,
+ totalDisplay: dataToSend.firstOption1[8].selected,
+ //차수 표시(다건)
+ corridorDimension: dataToSend.firstOption3[0].selected,
+ realDimension: dataToSend.firstOption3[1].selected,
+ noneDimension: dataToSend.firstOption3[2].selected,
//화면 표시(다중)
onlyBorder: dataToSend.firstOption2[0].selected,
lineHatch: dataToSend.firstOption2[1].selected,
diff --git a/src/store/settingAtom.js b/src/store/settingAtom.js
index 5541cc14..ff73c75c 100644
--- a/src/store/settingAtom.js
+++ b/src/store/settingAtom.js
@@ -4,29 +4,18 @@ export const settingModalFirstOptionsState = atom({
key: 'settingModalFirstOptions',
default: {
option1: [
- { id: 1, column: 'assignDisplay', name: 'modal.canvas.setting.first.option.alloc', selected: false },
- { id: 2, column: 'drawDisplay', name: 'modal.canvas.setting.first.option.outline', selected: false },
- { id: 3, column: 'charDisplay', name: 'modal.canvas.setting.first.option.roof.line', selected: false },
- { id: 4, column: 'flowDisplay', name: 'modal.canvas.setting.first.option.grid', selected: false },
- { id: 5, column: 'hallwayDimenDisplay', name: 'modal.canvas.setting.first.option.circuit.num', selected: false },
- { id: 6, column: 'actualDimenDisplay', name: 'modal.canvas.setting.first.option.word', selected: false },
- { id: 7, column: 'noDimenDisplay', name: 'modal.canvas.setting.first.option.trestle', selected: false },
- { id: 8, column: 'trestleDisplay', name: 'modal.canvas.setting.first.option.flow', selected: false },
- { id: 9, column: 'coordiDisplay', name: 'modal.canvas.setting.first.option.total', selected: false },
- {
- id: 10,
- column: 'drawConverDisplay',
- name: 'modal.canvas.setting.first.option.corridor.dimension',
- selected: false,
- },
+ { id: 1, column: 'allocDisplay', name: 'modal.canvas.setting.first.option.alloc', selected: false },
+ { id: 2, column: 'outlineDisplay', name: 'modal.canvas.setting.first.option.outline', selected: false },
+ { id: 3, column: 'gridDisplay', name: 'modal.canvas.setting.first.option.grid', selected: false },
+ { id: 4, column: 'lineDisplay', name: 'modal.canvas.setting.first.option.roof.line', selected: false },
+ { id: 5, column: 'wordDisplay', name: 'modal.canvas.setting.first.option.word', selected: false },
+ { id: 6, column: 'circuitNumDisplay', name: 'modal.canvas.setting.first.option.circuit.num', selected: false },
+ { id: 7, column: 'flowDisplay', name: 'modal.canvas.setting.first.option.flow', selected: false },
+ { id: 8, column: 'trestleDisplay', name: 'modal.canvas.setting.first.option.trestle', selected: false },
+ { id: 9, column: 'totalDisplay', name: 'modal.canvas.setting.first.option.total', selected: false },
],
dimensionDisplay: [
- {
- id: 1,
- column: 'corridorDimension',
- name: 'modal.canvas.setting.first.option.corridor.dimension',
- selected: false,
- },
+ { id: 1, column: 'corridorDimension', name: 'modal.canvas.setting.first.option.corridor.dimension', selected: false },
{ id: 2, column: 'realDimension', name: 'modal.canvas.setting.first.option.real.dimension', selected: false },
{ id: 3, column: 'noneDimension', name: 'modal.canvas.setting.first.option.none.dimension', selected: false },
],