Merge branch 'dev' into dev-yj
# Conflicts: # src/hooks/option/useCanvasSetting.js
This commit is contained in:
commit
defe293b51
@ -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()
|
||||||
}
|
}
|
||||||
|
|||||||
@ -171,7 +171,8 @@ export function useCanvasSetting() {
|
|||||||
(!previousObjectNoRef.current && !correntObjectNo && previousObjectNoRef.current !== correntObjectNo) ||
|
(!previousObjectNoRef.current && !correntObjectNo && previousObjectNoRef.current !== correntObjectNo) ||
|
||||||
(roofMaterials.length !== 0 && JSON.stringify(previousRoofMaterialsRef.current) !== JSON.stringify(roofMaterials))
|
(roofMaterials.length !== 0 && JSON.stringify(previousRoofMaterialsRef.current) !== JSON.stringify(roofMaterials))
|
||||||
) {
|
) {
|
||||||
if (roofMaterials) {
|
// 1회만 실행
|
||||||
|
if (roofMaterials && previousRoofMaterialsYn === 'N') {
|
||||||
fetchBasicSettings()
|
fetchBasicSettings()
|
||||||
previousRoofMaterialsYn = 'Y'
|
previousRoofMaterialsYn = 'Y'
|
||||||
}
|
}
|
||||||
@ -292,10 +293,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),
|
||||||
@ -446,7 +449,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 }))
|
||||||
@ -541,20 +544,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 })
|
||||||
@ -679,7 +679,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()
|
||||||
@ -779,6 +779,7 @@ export function useCanvasSetting() {
|
|||||||
adsorptionRange,
|
adsorptionRange,
|
||||||
setAdsorptionRange,
|
setAdsorptionRange,
|
||||||
fetchSettings,
|
fetchSettings,
|
||||||
|
fetchBasicSettings,
|
||||||
frontSettings,
|
frontSettings,
|
||||||
globalFont,
|
globalFont,
|
||||||
setGlobalFont,
|
setGlobalFont,
|
||||||
|
|||||||
@ -14,6 +14,7 @@ import { SAVE_KEY } from '@/common/common'
|
|||||||
import { readImage, removeImage } from '@/lib/fileAction'
|
import { readImage, removeImage } from '@/lib/fileAction'
|
||||||
import { FloorPlanContext } from '@/app/floor-plan/FloorPlanProvider'
|
import { FloorPlanContext } from '@/app/floor-plan/FloorPlanProvider'
|
||||||
import { useEstimateController } from '@/hooks/floorPlan/estimate/useEstimateController'
|
import { useEstimateController } from '@/hooks/floorPlan/estimate/useEstimateController'
|
||||||
|
|
||||||
export function usePlan(params = {}) {
|
export function usePlan(params = {}) {
|
||||||
const { floorPlanState } = useContext(FloorPlanContext)
|
const { floorPlanState } = useContext(FloorPlanContext)
|
||||||
|
|
||||||
@ -159,7 +160,7 @@ export function usePlan(params = {}) {
|
|||||||
/**
|
/**
|
||||||
* 신규 canvas 데이터를 저장
|
* 신규 canvas 데이터를 저장
|
||||||
*/
|
*/
|
||||||
const postCanvasStatus = async (userId, objectNo, canvasStatus) => {
|
const postCanvasStatus = async (userId, objectNo, canvasStatus, isInitPlan = false) => {
|
||||||
const planNo = await postObjectPlan(userId, objectNo)
|
const planNo = await postObjectPlan(userId, objectNo)
|
||||||
if (!planNo) return
|
if (!planNo) return
|
||||||
|
|
||||||
@ -173,7 +174,12 @@ export function usePlan(params = {}) {
|
|||||||
}
|
}
|
||||||
await promisePost({ url: '/api/canvas-management/canvas-statuses', data: planData })
|
await promisePost({ url: '/api/canvas-management/canvas-statuses', data: planData })
|
||||||
.then((res) => {
|
.then((res) => {
|
||||||
setPlans((plans) => [...plans, { id: res.data, objectNo: objectNo, planNo: planNo, userId: userId, canvasStatus: canvasStatus }])
|
if (isInitPlan) {
|
||||||
|
// 초기 플랜 생성인 경우 플랜 목록 초기화
|
||||||
|
setPlans([{ id: res.data, objectNo: objectNo, planNo: planNo, userId: userId, canvasStatus: canvasStatus }])
|
||||||
|
} else {
|
||||||
|
setPlans((plans) => [...plans, { id: res.data, objectNo: objectNo, planNo: planNo, userId: userId, canvasStatus: canvasStatus }])
|
||||||
|
}
|
||||||
updateCurrentPlan(res.data)
|
updateCurrentPlan(res.data)
|
||||||
})
|
})
|
||||||
.catch((error) => {
|
.catch((error) => {
|
||||||
@ -313,13 +319,13 @@ export function usePlan(params = {}) {
|
|||||||
text: `Plan ${currentCanvasPlan.planNo} ` + getMessage('plan.message.confirm.copy'),
|
text: `Plan ${currentCanvasPlan.planNo} ` + getMessage('plan.message.confirm.copy'),
|
||||||
type: 'confirm',
|
type: 'confirm',
|
||||||
confirmFn: async () => {
|
confirmFn: async () => {
|
||||||
await postCanvasStatus(userId, objectNo, currentCanvasData())
|
await postCanvasStatus(userId, objectNo, currentCanvasData(), false)
|
||||||
},
|
},
|
||||||
denyFn: async () => {
|
denyFn: async () => {
|
||||||
await postCanvasStatus(userId, objectNo, '')
|
await postCanvasStatus(userId, objectNo, '', false)
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
: await postCanvasStatus(userId, objectNo, '')
|
: await postCanvasStatus(userId, objectNo, '', false)
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -373,7 +379,7 @@ export function usePlan(params = {}) {
|
|||||||
setPlans(res)
|
setPlans(res)
|
||||||
updateCurrentPlan(res.find((plan) => plan.planNo === planNo).id)
|
updateCurrentPlan(res.find((plan) => plan.planNo === planNo).id)
|
||||||
} else {
|
} else {
|
||||||
postCanvasStatus(userId, objectNo, '')
|
postCanvasStatus(userId, objectNo, '', true)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
@ -429,7 +429,7 @@ export const usePolygon = () => {
|
|||||||
|
|
||||||
const sameDirectionCnt = canvas.getObjects().filter((obj) => {
|
const sameDirectionCnt = canvas.getObjects().filter((obj) => {
|
||||||
const onlyStrDirection = obj.directionText?.replace(/[0-9]/g, '')
|
const onlyStrDirection = obj.directionText?.replace(/[0-9]/g, '')
|
||||||
return obj.name === POLYGON_TYPE.ROOF && onlyStrDirection === text
|
return obj.name === POLYGON_TYPE.ROOF && obj.visible && obj !== polygon && onlyStrDirection === text
|
||||||
})
|
})
|
||||||
|
|
||||||
text = text + (sameDirectionCnt.length + 1)
|
text = text + (sameDirectionCnt.length + 1)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user