swalFire 추가 및 자동회로할당 시 회로번호 자동 표시 설정 처리
This commit is contained in:
parent
37ea37ef43
commit
a6c37cbb94
@ -12,6 +12,7 @@ import { useMasterController } from '@/hooks/common/useMasterController'
|
||||
import { v4 as uuidv4 } from 'uuid'
|
||||
import { globalLocaleStore } from '@/store/localeAtom'
|
||||
import { POLYGON_TYPE } from '@/common/common'
|
||||
import { useSwal } from '@/hooks/useSwal'
|
||||
import { circuitNumDisplaySelector } from '@/store/settingAtom'
|
||||
|
||||
export default function StepUp(props) {
|
||||
@ -28,6 +29,7 @@ export default function StepUp(props) {
|
||||
getModuleList,
|
||||
} = props
|
||||
const { getMessage } = useMessage()
|
||||
const { swalFire } = useSwal()
|
||||
const globalLocale = useRecoilValue(globalLocaleStore)
|
||||
const [moduleTab, setModuleTab] = useState(1)
|
||||
const [moduleTabs, setModuleTabs] = useState({})
|
||||
@ -70,35 +72,73 @@ export default function StepUp(props) {
|
||||
...props.getOptYn(), // 옵션 Y/N
|
||||
useModuleItemList: props.getUseModuleItemList(), // 사용된 모듈아이템 List
|
||||
roofSurfaceList: props.getRoofSurfaceList(), // 지붕면 목록
|
||||
pcsItemList: selectedModels.length === 0 ? props.getPcsItemList() : getSelectedPcsItemList(), // PCS 아이템 목록
|
||||
pcsItemList: props.getSelectedPcsItemList(), // PCS 아이템 목록
|
||||
}
|
||||
|
||||
// 회로 구성 가능 여부 체크
|
||||
getPcsVoltageChk({ ...params, pcsItemList: getSelectedPcsItemList() }).then((res) => {
|
||||
if (res.resultCode === 'S') {
|
||||
// 회로 구성 가능 여부 체크 통과 시 승압설정 정보 조회
|
||||
getPcsVoltageStepUpList(params).then((res) => {
|
||||
if (res?.result.code === 200 && res?.data) {
|
||||
if (selectedModels.length === 0) {
|
||||
setSelectedModels(res.data.pcsItemList)
|
||||
// 회로 구성 가능 여부 체크 통과 시 승압설정 정보 조회
|
||||
getPcsVoltageStepUpList(params).then((res) => {
|
||||
if (res.result.resultCode === 'S') {
|
||||
if (res?.result.code === 200 && res?.data) {
|
||||
const dataArray = Array.isArray(res.data) ? res.data : [res.data]
|
||||
const stepUpListData = formatStepUpListData(dataArray)
|
||||
|
||||
// PCS 승압설정 정보 SET
|
||||
setStepUpListData(stepUpListData)
|
||||
|
||||
// PCS 옵션 조회
|
||||
const formattedOptCodes = formatOptionCodes(res.data.optionList)
|
||||
setOptCodes(formattedOptCodes)
|
||||
setSeletedOption(formattedOptCodes[0])
|
||||
|
||||
// 캔버스에 회로 정보 적용
|
||||
//stepUpListData[0].pcsItemList.forEach((pcsItem) => {
|
||||
stepUpListData[0].pcsItemList.forEach((pcsItem) => {
|
||||
const selectedSerQty = pcsItem.serQtyList.find((serQty) => serQty.selected)
|
||||
if (selectedSerQty) {
|
||||
selectedSerQty.roofSurfaceList.forEach((roofSurface) => {
|
||||
const targetSurface = canvas.getObjects().filter((obj) => obj.id === roofSurface.roofSurfaceId)[0]
|
||||
const moduleIds = targetSurface.modules.map((module) => module.id)
|
||||
|
||||
// 기존 모듈 텍스트 삭제
|
||||
canvas
|
||||
.getObjects()
|
||||
.filter((obj) => moduleIds.includes(obj.parentId))
|
||||
.forEach((text) => canvas.remove(text))
|
||||
|
||||
// 새로운 모듈 회로 정보 추가
|
||||
roofSurface.moduleList.forEach((module) => {
|
||||
const targetModule = canvas.getObjects().filter((obj) => obj.id === module.uniqueId)[0]
|
||||
const moduleCircuitText = new fabric.Text(module.circuit, {
|
||||
left: targetModule.left + targetModule.width / 2,
|
||||
top: targetModule.top + targetModule.height / 2,
|
||||
fill: 'black',
|
||||
fontSize: 20,
|
||||
width: targetModule.width,
|
||||
height: targetModule.height,
|
||||
textAlign: 'center',
|
||||
originX: 'center',
|
||||
originY: 'center',
|
||||
name: 'circuitNumber',
|
||||
parentId: targetModule.id,
|
||||
circuitInfo: module.pcsItemId,
|
||||
visible: isDisplayCircuitNumber,
|
||||
})
|
||||
targetModule.circuit = moduleCircuitText
|
||||
targetModule.pcsItemId = module.pcsItemId
|
||||
targetModule.circuitNumber = module.circuit
|
||||
canvas.add(moduleCircuitText)
|
||||
})
|
||||
})
|
||||
}
|
||||
const dataArray = Array.isArray(res.data) ? res.data : [res.data]
|
||||
const stepUpListData = formatStepUpListData(dataArray)
|
||||
})
|
||||
|
||||
// PCS 승압설정 정보 SET
|
||||
setStepUpListData(stepUpListData)
|
||||
|
||||
// PCS 옵션 조회
|
||||
const formattedOptCodes = formatOptionCodes(res.data.optionList)
|
||||
setOptCodes(formattedOptCodes)
|
||||
setSeletedOption(formattedOptCodes[0])
|
||||
}
|
||||
})
|
||||
} else {
|
||||
swalFire({
|
||||
title: res.resultMsg,
|
||||
type: 'alert',
|
||||
})
|
||||
canvas.renderAll()
|
||||
} else {
|
||||
swalFire({
|
||||
title: res.result.resultMsg,
|
||||
type: 'alert',
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
} catch (error) {
|
||||
@ -170,7 +210,6 @@ export default function StepUp(props) {
|
||||
|
||||
// Update res.data with modified pcsItemList
|
||||
res.data.pcsItemList = pcsItemListWithSerQty
|
||||
setSelectedModels(pcsItemListWithSerQty)
|
||||
|
||||
const dataArray = Array.isArray(res.data) ? res.data : [res.data]
|
||||
const stepUpListData = formatStepUpListData(dataArray)
|
||||
@ -303,8 +342,8 @@ export default function StepUp(props) {
|
||||
// 선택된 행 정보 저장
|
||||
setStepUpListData(tempStepUpListData)
|
||||
|
||||
console.log('🚀 ~ handleRowClick ~ tempStepUpListData:', tempStepUpListData)
|
||||
console.log('🚀 ~ handleRowClick ~ selectedData:', selectedData)
|
||||
// console.log('🚀 ~ handleRowClick ~ tempStepUpListData:', tempStepUpListData)
|
||||
// console.log('🚀 ~ handleRowClick ~ selectedData:', selectedData)
|
||||
|
||||
// 파워컨디셔너 옵션 조회 요청 파라미터
|
||||
const params = {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user