회로. 가대 설정 개발중

This commit is contained in:
김민식 2025-01-16 17:29:28 +09:00
parent b6dbda507d
commit 1d89b1f355
5 changed files with 58 additions and 17 deletions

View File

@ -95,7 +95,8 @@ export default function CircuitTrestleSetting({ id }) {
return
}
setAllocationType(ALLOCATION_TYPE.AUTO)
// setAllocationType(ALLOCATION_TYPE.AUTO)
setTabNum(2)
}
const onPassivityAllocation = () => {

View File

@ -4,16 +4,11 @@ import { useMessage } from '@/hooks/useMessage'
import { canvasState } from '@/store/canvasAtom'
import { modelState, pcsCheckState } from '@/store/circuitTrestleAtom'
import { selectedModuleState } from '@/store/selectedModuleOptions'
import { useContext, useState } from 'react'
import { useRecoilState } from 'recoil'
import { useState } from 'react'
import { useRecoilValue } from 'recoil'
import { useContext, useEffect, useState } from 'react'
import { useRecoilState, useRecoilValue } from 'recoil'
import { useCanvasPopupStatusController } from '@/hooks/common/useCanvasPopupStatusController'
import { canvasPopupStatusStore } from '@/store/canvasPopupStatusAtom'
import { useMessage } from '@/hooks/useMessage'
import QSelectBox from '@/components/common/select/QSelectBox'
const SelectOption01 = [{ name: '0' }, { name: '0' }, { name: '0' }, { name: '0' }]
import { useMasterController } from '@/hooks/common/useMasterController'
export default function StepUp({}) {
const { getMessage } = useMessage()
@ -25,6 +20,7 @@ export default function StepUp({}) {
const { managementState, setManagementState, managementStateLoaded } = useContext(GlobalDataContext)
const canvas = useRecoilValue(canvasState)
const selectedModules = useRecoilValue(selectedModuleState)
useEffect(() => {
if (!managementState) {
console.log('🚀 ~ useEffect ~ managementState:', managementState)
@ -71,7 +67,6 @@ export default function StepUp({}) {
getPcsAutoRecommendList(params)
}, [])
useCanvasPopupStatusController(6)
const canvasPopupStatusState = useRecoilValue(canvasPopupStatusStore)
if (Object.keys(canvasPopupStatusState[6]).length !== 0) {
@ -186,7 +181,7 @@ export default function StepUp({}) {
{getMessage('modal.circuit.trestle.setting.step.up.allocation.select.monitor')}
</span>
<div className="grid-select mr10">
<QSelectBox title={'電力検出ユニット (モニター付き)'} options={SelectOption01} />
<QSelectBox title={'電力検出ユニット (モニター付き)'} />
</div>
</div>
</div>

View File

@ -1,16 +1,27 @@
import { GlobalDataContext } from '@/app/GlobalDataProvider'
import { useMessage } from '@/hooks/useMessage'
import { canvasState } from '@/store/canvasAtom'
import { modelState } from '@/store/circuitTrestleAtom'
import { selectedModuleState } from '@/store/selectedModuleOptions'
import { useEffect, useState } from 'react'
import { useContext, useEffect, useState } from 'react'
import { useRecoilValue } from 'recoil'
const DIRECTION = {
north: '北',
south: '南',
west: '西',
east: '東',
}
export default function PassivityCircuitAllocation() {
const { getMessage } = useMessage()
const canvas = useRecoilValue(canvasState)
const selectedModules = useRecoilValue(selectedModuleState)
const { managementState, setManagementState, managementStateLoaded } = useContext(GlobalDataContext)
const moduleData = {
header: [
{ name: getMessage('modal.panel.batch.statistic.roof.shape'), prop: 'roofShape' },
{ name: getMessage('modal.circuit.trestle.setting.circuilt'), prop: 'circuit' },
{ name: getMessage('modal.circuit.trestle.setting.circuit.allocation.passivity.circuit'), prop: 'circuit' },
...selectedModules.itemList.map((module) => {
return {
name: module.itemNm,
@ -40,9 +51,25 @@ export default function PassivityCircuitAllocation() {
const model = useRecoilValue(modelState)
const [selectedModels, setSelectedModels] = useState(model.selectedModels)
const [selectedPcs, setSelectedPcs] = useState(selectedModels[0])
const [totalWpout, setTotalWpout] = useState(0)
useEffect(() => {
console.log('🚀 ~ useEffect ~ selectedPcs:', selectedPcs)
}, [selectedPcs])
setSurfaceInfo()
if (!managementState) {
setManagementState(managementStateLoaded)
}
}, [])
const setSurfaceInfo = () => {
const surfaces = canvas.getObjects().filter((obj) => ['roofSurface', 'moduleSetupSurface'].includes(obj.name))
const modules = canvas.getObjects().filter((obj) => obj.name === 'module')
surfaces.forEach((surface) => {
surface.moduleList = modules.filter((obj) => obj.surfaceId === surface.id)
})
// -> ->
// wpOut
console.log('🚀 ~ setSurfaceInfo ~ modules:', surfaces)
}
return (
<>
<div className="properties-setting-wrap outer">
@ -62,7 +89,7 @@ export default function PassivityCircuitAllocation() {
</thead>
<tbody>
{moduleData.rows.map((row, index) => (
<tr key={index}>
<tr key={index} className="wrong">
{moduleData.header.map((header) => (
<td className="al-c" key={header.prop}>
{row[header.prop].name}
@ -70,6 +97,13 @@ export default function PassivityCircuitAllocation() {
))}
</tr>
))}
<tr className="wrong">
<td className="al-c">총합</td>
{Array.from({ length: moduleData.header.length - 2 }).map((_, index) => {
return <td key={index} className="al-c"></td>
})}
<td className="al-c">{totalWpout.toLocaleString('ko-KR', { maximumFractionDigits: 4 })}</td>
</tr>
</tbody>
</table>
</div>
@ -91,7 +125,14 @@ export default function PassivityCircuitAllocation() {
checked={selectedPcs === model}
onChange={() => setSelectedPcs(model)}
/>
<label htmlFor="ra01">{model.itemNm} (標準回路2枚10)</label>
<label htmlFor="ra01">
{model.itemNm} (
{getMessage(
'modal.circuit.trestle.setting.circuit.allocation.passivity.circuit.info',
managementState?.coldRegionFlg === '1' ? [model.serMinQty, model.serColdZoneMaxQty] : [model.serMinQty, model.serMaxQty],
)}
)
</label>
</div>
))}
{/* <div className="d-check-radio pop mb10">

View File

@ -141,9 +141,11 @@
"modal.circuit.trestle.setting.circuit.allocation": "回路割り当て",
"modal.circuit.trestle.setting.circuit.allocation.auto": "自動回路割り当て",
"modal.circuit.trestle.setting.circuit.allocation.passivity": "手動回路割当",
"modal.circuit.trestle.setting.circuit.allocation.passivity.circuit": "回路",
"modal.circuit.trestle.setting.circuit.allocation.passivity.info": "同じ回路のモジュールを選択状態にした後、 [番号確認]ボタンを押すと番号が割り当てられます。",
"modal.circuit.trestle.setting.circuit.allocation.passivity.selected.power.conditional": "選択したパワーコンディショナー",
"modal.circuit.trestle.setting.circuit.allocation.passivity.circuit.num": "設定する回路番号 (1~)",
"modal.circuit.trestle.setting.circuit.allocation.passivity.circuit.info": "標準回路{0}枚~{1}枚",
"modal.circuit.trestle.setting.circuit.allocation.passivity.selected.power.conditional.reset": "選択されたパワーコンディショナーの回路番号の初期化",
"modal.circuit.trestle.setting.circuit.allocation.passivity.all.power.conditional.reset": "すべての回路番号の初期化",
"modal.circuit.trestle.setting.circuit.allocation.passivity.circuit.num.fix": "番号確定",

View File

@ -145,9 +145,11 @@
"modal.circuit.trestle.setting.circuit.allocation": "회로 할당",
"modal.circuit.trestle.setting.circuit.allocation.auto": "자동 회로 할당",
"modal.circuit.trestle.setting.circuit.allocation.passivity": "수동 회로 할당",
"modal.circuit.trestle.setting.circuit.allocation.passivity.circuit": "회로",
"modal.circuit.trestle.setting.circuit.allocation.passivity.info": "동일한 회로의 모듈을 선택 상태로 만든 후 [번호 확정] 버튼을 누르면 번호가 할당됩니다.",
"modal.circuit.trestle.setting.circuit.allocation.passivity.selected.power.conditional": "선택된 파워컨디셔너",
"modal.circuit.trestle.setting.circuit.allocation.passivity.circuit.num": "설정할 회로번호(1~)",
"modal.circuit.trestle.setting.circuit.allocation.passivity.circuit.info": "표준회로{0}장~{1}장",
"modal.circuit.trestle.setting.circuit.allocation.passivity.selected.power.conditional.reset": "선택된 파워컨디셔너의 회로번호 초기화",
"modal.circuit.trestle.setting.circuit.allocation.passivity.all.power.conditional.reset": "모든 회로번호 초기화",
"modal.circuit.trestle.setting.circuit.allocation.passivity.circuit.num.fix": "번호 확정",