diff --git a/src/components/floor-plan/modal/basic/step/Module.jsx b/src/components/floor-plan/modal/basic/step/Module.jsx index eb4f0177..4823ab6e 100644 --- a/src/components/floor-plan/modal/basic/step/Module.jsx +++ b/src/components/floor-plan/modal/basic/step/Module.jsx @@ -156,7 +156,6 @@ export default function Module({ setTabNum }) {
-
{getMessage('modal.module.basic.setting.module.stuff.info')}
{getMessage('modal.module.basic.setting.module.surface.type')}
@@ -271,7 +270,6 @@ export default function Module({ setTabNum }) {
{/* 설정 오류시 노출 */} -
※ 施工方法が選択できません。 基準風速または基準積雪量を確認してください。
diff --git a/src/components/floor-plan/modal/basic/step/ModuleTabContents.jsx b/src/components/floor-plan/modal/basic/step/ModuleTabContents.jsx index 149ffbd9..75c8dcd9 100644 --- a/src/components/floor-plan/modal/basic/step/ModuleTabContents.jsx +++ b/src/components/floor-plan/modal/basic/step/ModuleTabContents.jsx @@ -203,7 +203,7 @@ export default function ModuleTabContents({ tabIndex, addRoof, setAddedRoofs, ro 強化施工 -
+
{ - let moduleStdQty = 0 - let moduleMaxQty = 0 - const selectedModels = models.filter((m) => m.selected) - - if (selectedModels.length === 0) { - onAutoRecommend() - } else { - moduleStdQty = selectedModels.reduce((acc, model) => { - return acc + parseInt(model.moduleStdQty) - }, 0) - moduleMaxQty = selectedModels.reduce((acc, model) => { - return acc + parseInt(model.moduleMaxQty) - }, 0) - } - // const target = pcsCheck.max ? moduleMaxQty : moduleStdQty - // const placementModules = canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.MODULE) - - // if (placementModules.length > target) { - // swalFire({ - // title: '배치가능 매수를 초과합니다. 파워컨디셔너를 다시 선택해 주세요.', - // type: 'alert', - // }) - // return - // } - - // setAllocationType(ALLOCATION_TYPE.AUTO) - // setTabNum(2) - } - const onPassivityAllocation = () => { if (selectedModels.length === 0) { const params = { @@ -365,6 +336,14 @@ export default function CircuitTrestleSetting({ id }) { }) const result = await apply() + removeNotAllocationModules() + apply() + } + + const removeNotAllocationModules = () => { + const notAllocationModules = canvas.getObjects().filter((obj) => obj.name === POLYGON_TYPE.MODULE && !obj.circuit) + canvas.remove(...notAllocationModules) + canvas.renderAll() } const onClickPrev = () => { @@ -477,7 +456,7 @@ export default function CircuitTrestleSetting({ id }) { {tabNum === 2 && } {tabNum === 1 && allocationType === ALLOCATION_TYPE.AUTO && (
- + {model.goodsNo} ))}
diff --git a/src/components/floor-plan/modal/circuitTrestle/step/type/PassivityCircuitAllocation.jsx b/src/components/floor-plan/modal/circuitTrestle/step/type/PassivityCircuitAllocation.jsx index ded6c61f..7cbca2da 100644 --- a/src/components/floor-plan/modal/circuitTrestle/step/type/PassivityCircuitAllocation.jsx +++ b/src/components/floor-plan/modal/circuitTrestle/step/type/PassivityCircuitAllocation.jsx @@ -14,6 +14,7 @@ export default function PassivityCircuitAllocation(props) { tabNum, setTabNum, selectedModels, + setSelectedModels, getOptYn: getApiProps, getUseModuleItemList: getSelectedModuleList, getSelectModelList: getSelectModelList, @@ -201,6 +202,7 @@ export default function PassivityCircuitAllocation(props) { } } + let tempSelectedPcs = { ...selectedPcs } canvas.discardActiveObject() canvas .getObjects() @@ -229,6 +231,8 @@ export default function PassivityCircuitAllocation(props) { obj.pcsItemId = selectedPcs.itemId obj.circuit = moduleCircuitText obj.circuitNumber = getCircuitNumber() + tempSelectedPcs.used = true + setSelectedPcs(tempSelectedPcs) canvas.add(moduleCircuitText) }) @@ -249,25 +253,47 @@ export default function PassivityCircuitAllocation(props) { }), } }) + console.log('uniqueCircuitNumbers', uniqueCircuitNumbers) - const pcsItemList = selectedModels.map((model, index) => { - return { - pcsMkrCd: model.pcsMkrCd, - pcsSerCd: model.pcsSerCd, - itemId: model.itemId, - itemNm: model.itemNm, - goodsNo: model.goodsNo, - serQtyList: [ - { - serQty: targetModules.length, - paralQty: uniqueCircuitNumbers.length, - rmdYn: 'Y', - usePossYn: 'Y', - roofSurfaceList: roofSurfaceList, - }, - ], - } - }) + const usedPcses = selectedModels.filter((model) => model.isUsed) + const pcsItemList = + usedPcses.length === 0 + ? [ + { + pcsMkrCd: selectedPcs.pcsMkrCd, + pcsSerCd: selectedPcs.pcsSerCd, + itemId: selectedPcs.itemId, + itemNm: selectedPcs.itemNm, + goodsNo: selectedPcs.goodsNo, + serQtyList: [ + { + serQty: targetModules.length, + paralQty: uniqueCircuitNumbers.length, + rmdYn: 'Y', + usePossYn: 'Y', + roofSurfaceList: roofSurfaceList, + }, + ], + }, + ] + : selectedModels.map((model, index) => { + return { + pcsMkrCd: model.pcsMkrCd, + pcsSerCd: model.pcsSerCd, + itemId: model.itemId, + itemNm: model.itemNm, + goodsNo: model.goodsNo, + serQtyList: [ + { + serQty: targetModules.length, + paralQty: uniqueCircuitNumbers.length, + rmdYn: 'Y', + usePossYn: 'Y', + roofSurfaceList: roofSurfaceList, + }, + ], + } + }) const params = { ...getApiProps(), @@ -276,6 +302,7 @@ export default function PassivityCircuitAllocation(props) { } getPcsManualConfChk(params).then((res) => { + console.log('targetModules', targetModules) if (res.resultCode === 'E') { swalFire({ text: res.resultMsg, @@ -295,10 +322,17 @@ export default function PassivityCircuitAllocation(props) { canvas.renderAll() }, }) - + setSelectedPcs({ ...selectedPcs, used: false }) + setTargetModules([]) return } + setSelectedModels( + selectedModels.map((model) => { + return { ...model, isUsed: model.id === selectedPcs.id ? true : model.isUsed } + }), + ) + setTargetModules([]) setCircuitNumber(+circuitNumber + 1) setTableData() @@ -512,7 +546,7 @@ export default function PassivityCircuitAllocation(props) { onChange={() => setSelectedPcs(model)} />