Merge branch 'qcast-pub' into dev
This commit is contained in:
commit
1c24eb11b1
@ -183,6 +183,8 @@ export const SAVE_KEY = [
|
||||
'roofMaterial',
|
||||
'isComplete',
|
||||
'moduleInfo',
|
||||
'circuitNumber',
|
||||
'circuit',
|
||||
]
|
||||
|
||||
export const OBJECT_PROTOTYPE = [fabric.Line.prototype, fabric.Polygon.prototype, fabric.Triangle.prototype]
|
||||
|
||||
@ -1,11 +1,12 @@
|
||||
import { GlobalDataContext } from '@/app/GlobalDataProvider'
|
||||
import QSelectBox from '@/components/common/select/QSelectBox'
|
||||
import { useCanvasPopupStatusController } from '@/hooks/common/useCanvasPopupStatusController'
|
||||
import { useMasterController } from '@/hooks/common/useMasterController'
|
||||
import { useMessage } from '@/hooks/useMessage'
|
||||
import { useSwal } from '@/hooks/useSwal'
|
||||
import { pcsCheckState } from '@/store/circuitTrestleAtom'
|
||||
import { globalLocaleStore } from '@/store/localeAtom'
|
||||
import { selectedModuleState } from '@/store/selectedModuleOptions'
|
||||
import { moduleSelectionDataState, selectedModuleState } from '@/store/selectedModuleOptions'
|
||||
import { isNullOrUndefined } from '@/util/common-utils'
|
||||
import { useContext, useEffect, useState } from 'react'
|
||||
import { useRecoilState } from 'recoil'
|
||||
@ -37,7 +38,8 @@ export default function PowerConditionalSelect(props) {
|
||||
const { getPcsMakerList, getPcsModelList } = useMasterController()
|
||||
const selectedModules = useRecoilValue(selectedModuleState)
|
||||
const { swalFire } = useSwal()
|
||||
// const [moduleSelectionData, setModuleSelectionData] = useRecoilState(moduleSelectionDataState)
|
||||
const { trigger: moduleSelectedDataTrigger } = useCanvasPopupStatusController(2)
|
||||
const [moduleSelectionData, setModuleSelectionData] = useRecoilState(moduleSelectionDataState)
|
||||
const modelHeader = [
|
||||
{ name: getMessage('시리즈'), width: '15%', prop: 'pcsSerNm', type: 'color-box' },
|
||||
{ name: getMessage('명칭'), width: '15%', prop: 'goodsNo', type: 'color-box' },
|
||||
@ -66,7 +68,6 @@ export default function PowerConditionalSelect(props) {
|
||||
useEffect(() => {
|
||||
if (makers.length === 0) {
|
||||
getPcsMakerList().then((res) => {
|
||||
console.log('getPcsMakerList', res.data)
|
||||
setMakers(res.data)
|
||||
})
|
||||
}
|
||||
@ -130,7 +131,12 @@ export default function PowerConditionalSelect(props) {
|
||||
const pcsSerList = selectedSeries.map((series) => {
|
||||
return { pcsSerCd: series.pcsSerCd }
|
||||
})
|
||||
const moduleItemList = getUseModuleItemList()
|
||||
const moduleItemList = moduleSelectionData.module.itemList.map((item) => {
|
||||
return {
|
||||
itemId: item.itemId,
|
||||
mixMatlNo: item.mixMatlNo,
|
||||
}
|
||||
})
|
||||
getPcsModelList({ pcsMkrCd, pcsSerList, moduleItemList }).then((res) => {
|
||||
if (res?.result.code === 200 && res?.data) {
|
||||
setModels(
|
||||
@ -179,7 +185,7 @@ export default function PowerConditionalSelect(props) {
|
||||
setSelectedMaker(option)
|
||||
const param = {
|
||||
pcsMkrCd: option.pcsMkrCd,
|
||||
mixMatlNo: getUseModuleItemList()[0].mixMatlNo,
|
||||
mixMatlNo: moduleSelectionData.module.mixMatlNo,
|
||||
}
|
||||
|
||||
getPcsMakerList(param).then((res) => {
|
||||
|
||||
@ -2,6 +2,7 @@ import { GlobalDataContext } from '@/app/GlobalDataProvider'
|
||||
import { POLYGON_TYPE } from '@/common/common'
|
||||
import { useMasterController } from '@/hooks/common/useMasterController'
|
||||
import { useModule } from '@/hooks/module/useModule'
|
||||
import { useCircuitTrestle } from '@/hooks/useCirCuitTrestle'
|
||||
import { useMessage } from '@/hooks/useMessage'
|
||||
import { useSwal } from '@/hooks/useSwal'
|
||||
import { canvasState } from '@/store/canvasAtom'
|
||||
@ -28,9 +29,9 @@ export default function PassivityCircuitAllocation(props) {
|
||||
const { header, rows, footer } = useRecoilValue(moduleStatisticsState)
|
||||
const [circuitNumber, setCircuitNumber] = useState(1)
|
||||
const [targetModules, setTargetModules] = useState([])
|
||||
const { setModuleStatisticsData } = useModule()
|
||||
const { getPcsManualConfChk } = useMasterController()
|
||||
const isDisplayCircuitNumber = useRecoilValue(circuitNumDisplaySelector)
|
||||
const { setModuleStatisticsData } = useCircuitTrestle()
|
||||
|
||||
useEffect(() => {
|
||||
setModuleStatisticsData()
|
||||
@ -260,7 +261,6 @@ export default function PassivityCircuitAllocation(props) {
|
||||
return parseInt(circuitNumber[circuitNumber.length - 1])
|
||||
})
|
||||
const minCircuitNumber = Math.min(...circuitNumbers)
|
||||
console.log(circuitNumbers, minCircuitNumber)
|
||||
canvas.remove(...circuitModules.map((module) => module.circuit))
|
||||
circuitModules.forEach((obj) => {
|
||||
obj.circuit = null
|
||||
|
||||
@ -10,10 +10,11 @@ import {
|
||||
selectedModelsState,
|
||||
seriesState,
|
||||
} from '@/store/circuitTrestleAtom'
|
||||
import { selectedModuleState } from '@/store/selectedModuleOptions'
|
||||
import { moduleSelectionDataState, selectedModuleState } from '@/store/selectedModuleOptions'
|
||||
import { useContext } from 'react'
|
||||
import { useRecoilState, useRecoilValue, useSetRecoilState } from 'recoil'
|
||||
import { useMessage } from './useMessage'
|
||||
import { useCanvasPopupStatusController } from './common/useCanvasPopupStatusController'
|
||||
|
||||
export function useCircuitTrestle() {
|
||||
const [makers, setMakers] = useRecoilState(makersState)
|
||||
@ -25,7 +26,8 @@ export function useCircuitTrestle() {
|
||||
const selectedModules = useRecoilValue(selectedModuleState)
|
||||
const { managementState, setManagementState, managementStateLoaded } = useContext(GlobalDataContext)
|
||||
const canvas = useRecoilValue(canvasState)
|
||||
|
||||
const { trigger: moduleSelectedDataTrigger } = useCanvasPopupStatusController(2)
|
||||
const [moduleSelectionData, setModuleSelectionData] = useRecoilState(moduleSelectionDataState)
|
||||
const setModuleStatistics = useSetRecoilState(moduleStatisticsState)
|
||||
const { getMessage } = useMessage()
|
||||
const getOptYn = () => {
|
||||
@ -60,7 +62,7 @@ export function useCircuitTrestle() {
|
||||
// 사용된 모듈아이템 목록
|
||||
const getUseModuleItemList = () => {
|
||||
console.log('🚀 ~ getUseModuleItemList ~ selectedModules:', selectedModules)
|
||||
return selectedModules?.itemList?.map((m) => {
|
||||
return moduleSelectionData.module?.itemList?.map((m) => {
|
||||
return {
|
||||
itemId: m.itemId,
|
||||
mixMatlNo: m.mixMatlNo,
|
||||
@ -71,6 +73,10 @@ export function useCircuitTrestle() {
|
||||
// 지붕면 목록
|
||||
const getRoofSurfaceList = () => {
|
||||
const roofSurfaceList = canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.MODULE_SETUP_SURFACE)
|
||||
const modules = canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.MODULE)
|
||||
roofSurfaceList.forEach((surface) => {
|
||||
surface.modules = modules.filter((module) => module.surfaceId === surface.id)
|
||||
})
|
||||
roofSurfaceList.sort((a, b) => a.left - b.left || b.top - a.top)
|
||||
return roofSurfaceList
|
||||
.map((obj) => {
|
||||
@ -177,12 +183,16 @@ export function useCircuitTrestle() {
|
||||
const setPowerConditionerData = () => {}
|
||||
|
||||
const setModuleStatisticsData = () => {
|
||||
console.log(canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.MODULE_SETUP_SURFACE))
|
||||
if (selectedModules?.length === 0) return
|
||||
const roofSurfaceList = canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.MODULE_SETUP_SURFACE)
|
||||
const modules = canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.MODULE)
|
||||
roofSurfaceList.forEach((surface) => {
|
||||
surface.modules = modules.filter((module) => module.surfaceId === surface.id)
|
||||
})
|
||||
if (!moduleSelectionData.module || moduleSelectionData.module?.itemList?.length === 0) return
|
||||
const tempHeader = [
|
||||
{ name: getMessage('simulator.table.sub1'), prop: 'name' },
|
||||
{ name: getMessage('modal.circuit.trestle.setting.circuit.allocation.passivity.circuit'), prop: 'circuit' },
|
||||
...selectedModules?.itemList?.map((module) => {
|
||||
...moduleSelectionData.module?.itemList?.map((module) => {
|
||||
return {
|
||||
name: module.itemNm,
|
||||
prop: module.itemId,
|
||||
@ -236,7 +246,7 @@ export function useCircuitTrestle() {
|
||||
circuit: surfaceObjects[key].circuit,
|
||||
wpOut: parseFloat(surfaceObjects[key].wpOut / 1000),
|
||||
}
|
||||
selectedModules.itemList.forEach((module) => {
|
||||
moduleSelectionData.module.itemList.forEach((module) => {
|
||||
tempRow[module.itemId] = surfaceObjects[key][module.itemId]
|
||||
})
|
||||
tempRows.push(tempRow)
|
||||
@ -247,7 +257,7 @@ export function useCircuitTrestle() {
|
||||
circuit: surfaceObjects[key].circuits[circuit].circuit,
|
||||
wpOut: parseFloat(surfaceObjects[key].circuits[circuit].circuits.wpOut / 1000),
|
||||
}
|
||||
selectedModules.itemList.forEach((module) => {
|
||||
moduleSelectionData.module.itemList.forEach((module) => {
|
||||
row[module.itemId] = surfaceObjects[key].circuits[circuit].circuits[module.itemId]
|
||||
})
|
||||
tempRows.push(row)
|
||||
@ -259,8 +269,8 @@ export function useCircuitTrestle() {
|
||||
circuit: '-',
|
||||
wpOut: tempRows.reduce((acc, row) => acc + row.wpOut, 0),
|
||||
}
|
||||
selectedModules.itemList.forEach((module) => {
|
||||
tempFooter[module.itemId] = tempRows.reduce((acc, row) => acc + row[module.itemId], 0)
|
||||
moduleSelectionData.module.itemList.forEach((module) => {
|
||||
tempFooter[module.itemId] = tempRows.reduce((acc, row) => acc + (row[module.itemId] ?? 0), 0)
|
||||
})
|
||||
canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.MODULE_SETUP_SURFACE)
|
||||
setModuleStatistics({ header: tempHeader, rows: tempRows.filter((row) => row.wpOut !== 0), footer: tempFooter })
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user