배치면기본설정 및 Canvas설정 초기 데이터 설정 처리

This commit is contained in:
changkyu choi 2025-01-20 11:27:26 +09:00
parent 4edef1c87d
commit e460f7daae
2 changed files with 19 additions and 17 deletions

View File

@ -15,7 +15,7 @@ export default function FloorPlan({ children }) {
//const [correntObjectNo, setCorrentObjectNo] = useRecoilState(correntObjectNoState) //const [correntObjectNo, setCorrentObjectNo] = useRecoilState(correntObjectNoState)
const { closeAll } = usePopup() const { closeAll } = usePopup()
const { menuNumber, setMenuNumber } = useCanvasMenu() const { menuNumber, setMenuNumber } = useCanvasMenu()
const { fetchSettings } = useCanvasSetting() const { fetchSettings, fetchBasicSettings } = useCanvasSetting()
const modalProps = { const modalProps = {
menuNumber, menuNumber,
@ -26,7 +26,8 @@ export default function FloorPlan({ children }) {
///setCorrentObjectNo(floorPlanState.objectNo) ///setCorrentObjectNo(floorPlanState.objectNo)
//console.log('FloorPlan objectNo ', floorPlanState.objectNo, correntObjectNo) //console.log('FloorPlan objectNo ', floorPlanState.objectNo, correntObjectNo)
setMenuNumber(1) setMenuNumber(1)
fetchSettings() fetchSettings() // Canvas
fetchBasicSettings() //
return () => { return () => {
closeAll() closeAll()
} }

View File

@ -165,9 +165,10 @@ export function useCanvasSetting() {
useEffect(() => { useEffect(() => {
//console.log('🚀 ~ useEffect ~ roofMaterials 22 :', previousRoofMaterialsYn, roofMaterials.length , JSON.stringify(previousRoofMaterialsRef.current) !== JSON.stringify(roofMaterials)) //console.log('🚀 ~ useEffect ~ roofMaterials 22 :', previousRoofMaterialsYn, roofMaterials.length , JSON.stringify(previousRoofMaterialsRef.current) !== JSON.stringify(roofMaterials))
// 지붕재 select 정보가 존재해야 배치면초기설정 DB 정보 비교 후 지붕재 정보를 가져올 수 있음 // 지붕재 select 정보가 존재해야 배치면초기설정 DB 정보 비교 후 지붕재 정보를 가져올 수 있음
if (!previousObjectNoRef.current && !correntObjectNo && previousObjectNoRef.current !== correntObjectNo if (
|| roofMaterials.length !== 0 && JSON.stringify(previousRoofMaterialsRef.current) !== JSON.stringify(roofMaterials)) { (!previousObjectNoRef.current && !correntObjectNo && previousObjectNoRef.current !== correntObjectNo) ||
(roofMaterials.length !== 0 && JSON.stringify(previousRoofMaterialsRef.current) !== JSON.stringify(roofMaterials))
) {
// 1회만 실행 // 1회만 실행
if (roofMaterials && previousRoofMaterialsYn === 'N') { if (roofMaterials && previousRoofMaterialsYn === 'N') {
fetchBasicSettings() fetchBasicSettings()
@ -290,10 +291,12 @@ export function useCanvasSetting() {
const fetchBasicSettings = async () => { const fetchBasicSettings = async () => {
try { try {
await get({ url: `/api/canvas-management/canvas-basic-settings/by-object/${correntObjectNo}` }).then((res) => { await get({ url: `/api/canvas-management/canvas-basic-settings/by-object/${correntObjectNo}` }).then((res) => {
console.log('🚀 ~ fetchBasicSettings ~ res >>>>>>>>>> :', res)
let roofsRow = {} let roofsRow = {}
let roofsArray = {} let roofsArray = {}
if (res) { if (res.length > 0) {
roofsRow = res.map((item) => { roofsRow = res.map((item) => {
return { return {
roofSizeSet: String(item.roofSizeSet), roofSizeSet: String(item.roofSizeSet),
@ -444,7 +447,7 @@ export function useCanvasSetting() {
const res = await get({ url: `/api/canvas-management/canvas-settings/by-object/${correntObjectNo}` }) const res = await get({ url: `/api/canvas-management/canvas-settings/by-object/${correntObjectNo}` })
console.log('res', res) console.log('res', res)
if (res.length > 0) { if (Object.keys(res).length > 0) {
const optionData1 = settingModalFirstOptions.option1.map((item) => ({ ...item, selected: res[item.column] })) const optionData1 = settingModalFirstOptions.option1.map((item) => ({ ...item, selected: res[item.column] }))
const optionData2 = settingModalFirstOptions.option2.map((item) => ({ ...item, selected: res[item.column] })) const optionData2 = settingModalFirstOptions.option2.map((item) => ({ ...item, selected: res[item.column] }))
const optionData3 = settingModalSecondOptions.option3.map((item) => ({ ...item })) const optionData3 = settingModalSecondOptions.option3.map((item) => ({ ...item }))
@ -539,20 +542,17 @@ export function useCanvasSetting() {
setAdsorptionPointMode({ ...adsorptionPointMode, adsorptionPoint: false }) setAdsorptionPointMode({ ...adsorptionPointMode, adsorptionPoint: false })
//치수선 설정 //치수선 설정
setDimensionLineSettings({ ...dimensionLineSettings }) setDimensionLineSettings({ ...dimensionLineSettings, ...dimensionLineSettingsState.default })
//도면크기 설정 //도면크기 설정
setPlanSizeSettingMode({ ...planSizeSettingMode }) setPlanSizeSettingMode({ ...planSizeSettingMode, ...planSizeSettingModeState.default })
// 데이터 설정 // 데이터 설정
setSettingModalFirstOptions({ setSettingModalFirstOptions(...settingModalFirstOptions, ...settingModalFirstOptionsState.default)
...settingModalFirstOptions,
})
setSettingModalSecondOptions({
...settingModalSecondOptions,
})
setGlobalFont({ ...globalFont }) setSettingModalSecondOptions(...settingModalSecondOptions, ...settingModalSecondOptionsState.default)
setGlobalFont({ ...globalFont, ...globalFontState.default })
//점/선 그리드 //점/선 그리드
setDotLineGridSettingState({ ...defaultDotLineGridSetting }) setDotLineGridSettingState({ ...defaultDotLineGridSetting })
@ -677,7 +677,7 @@ export function useCanvasSetting() {
// HTTP POST 요청 보내기 // HTTP POST 요청 보내기
await post({ url: `/api/canvas-management/canvas-settings`, data: patternData }) await post({ url: `/api/canvas-management/canvas-settings`, data: patternData })
.then((res) => { .then((res) => {
swalFire({ text: getMessage(res.returnMessage) }) //swalFire({ text: getMessage(res.returnMessage) })
// Canvas 디스플레이 설정 시 해당 옵션 적용 // Canvas 디스플레이 설정 시 해당 옵션 적용
frontSettings() frontSettings()
@ -777,6 +777,7 @@ export function useCanvasSetting() {
adsorptionRange, adsorptionRange,
setAdsorptionRange, setAdsorptionRange,
fetchSettings, fetchSettings,
fetchBasicSettings,
frontSettings, frontSettings,
globalFont, globalFont,
setGlobalFont, setGlobalFont,