Compare commits
No commits in common. "512f7cb35558a97bc5a0a1d4832892346c8524d0" and "8b76df44cb9e33b558c35a6b512589753fa58b2d" have entirely different histories.
512f7cb355
...
8b76df44cb
@ -831,23 +831,9 @@ export default function CircuitTrestleSetting({ id }) {
|
|||||||
|
|
||||||
// 승압설정 목록 조회
|
// 승압설정 목록 조회
|
||||||
const getStepUpListData = () => {
|
const getStepUpListData = () => {
|
||||||
// PCS 인스턴스별 실제 담당 모듈 타입 집합 수집 (Cross Mix DC3 접속함 분리용)
|
|
||||||
const pcsModuleTpCds = {}
|
|
||||||
canvas
|
|
||||||
.getObjects()
|
|
||||||
.filter((obj) => obj.name === POLYGON_TYPE.MODULE && obj.circuit && obj.pcsItemId)
|
|
||||||
.forEach((module) => {
|
|
||||||
const pcsInstanceId = module.circuit?.circuitInfo?.id
|
|
||||||
const tpCd = module.moduleInfo?.moduleTpCd
|
|
||||||
if (!pcsInstanceId || !tpCd) return
|
|
||||||
if (!pcsModuleTpCds[pcsInstanceId]) pcsModuleTpCds[pcsInstanceId] = new Set()
|
|
||||||
pcsModuleTpCds[pcsInstanceId].add(tpCd)
|
|
||||||
})
|
|
||||||
|
|
||||||
const pcs = []
|
const pcs = []
|
||||||
console.log(stepUpListData)
|
console.log(stepUpListData)
|
||||||
stepUpListData[0].pcsItemList.map((item, index) => {
|
stepUpListData[0].pcsItemList.map((item, index) => {
|
||||||
const targetTpCds = pcsModuleTpCds[selectedModels[index]?.id]
|
|
||||||
return item.serQtyList
|
return item.serQtyList
|
||||||
.filter((serQty) => serQty.selected && serQty.paralQty > 0)
|
.filter((serQty) => serQty.selected && serQty.paralQty > 0)
|
||||||
.forEach((serQty) => {
|
.forEach((serQty) => {
|
||||||
@ -857,17 +843,14 @@ export default function CircuitTrestleSetting({ id }) {
|
|||||||
pcsItemId: item.itemId,
|
pcsItemId: item.itemId,
|
||||||
pscOptCd: getPcsOptCd(index),
|
pscOptCd: getPcsOptCd(index),
|
||||||
paralQty: serQty.paralQty,
|
paralQty: serQty.paralQty,
|
||||||
// 접속함: PCS가 실제 담당하는 모듈 타입으로 필터 후 itemId 기준 dedupe
|
// 접속함 중복 체크: (itemId, moduleTpCd) 조합 기준으로 dedupe (Cross Mix 구분)
|
||||||
// (Cross Mix 시 다른 모듈 계열의 conn 제외 / 단일·동계열 Mix는 기존과 동일 결과)
|
|
||||||
connections: item.connList?.length
|
connections: item.connList?.length
|
||||||
? [
|
? [
|
||||||
...new Map(
|
...new Map(
|
||||||
item.connList
|
item.connList.map((conn) => [
|
||||||
.filter((conn) => !targetTpCds || !conn.moduleTpCd || targetTpCds.has(conn.moduleTpCd))
|
`${conn.itemId}_${conn.moduleTpCd}`,
|
||||||
.map((conn) => [
|
{ connItemId: conn.itemId, connMaxParalCnt: conn.connMaxParalCnt, moduleTpCd: conn.moduleTpCd },
|
||||||
conn.itemId,
|
]),
|
||||||
{ connItemId: conn.itemId, connMaxParalCnt: conn.connMaxParalCnt, moduleTpCd: conn.moduleTpCd },
|
|
||||||
]),
|
|
||||||
).values(),
|
).values(),
|
||||||
]
|
]
|
||||||
: [],
|
: [],
|
||||||
|
|||||||
@ -577,21 +577,7 @@ export default function StepUp(props) {
|
|||||||
* 현재 선택된 값들을 가져오는 함수 추가
|
* 현재 선택된 값들을 가져오는 함수 추가
|
||||||
*/
|
*/
|
||||||
const getCurrentSelections = () => {
|
const getCurrentSelections = () => {
|
||||||
// PCS 인스턴스별 실제 담당 모듈 타입 집합 수집 (Cross Mix DC3 접속함 분리용)
|
const selectedValues = stepUpListData[0].pcsItemList.forEach((item) => {
|
||||||
const pcsModuleTpCds = {}
|
|
||||||
canvas
|
|
||||||
.getObjects()
|
|
||||||
.filter((obj) => obj.name === POLYGON_TYPE.MODULE && obj.circuit && obj.pcsItemId)
|
|
||||||
.forEach((module) => {
|
|
||||||
const pcsInstanceId = module.circuit?.circuitInfo?.id
|
|
||||||
const tpCd = module.moduleInfo?.moduleTpCd
|
|
||||||
if (!pcsInstanceId || !tpCd) return
|
|
||||||
if (!pcsModuleTpCds[pcsInstanceId]) pcsModuleTpCds[pcsInstanceId] = new Set()
|
|
||||||
pcsModuleTpCds[pcsInstanceId].add(tpCd)
|
|
||||||
})
|
|
||||||
|
|
||||||
const selectedValues = stepUpListData[0].pcsItemList.forEach((item, index) => {
|
|
||||||
const targetTpCds = pcsModuleTpCds[selectedModels[index]?.id]
|
|
||||||
item.serQtyList.filter((serQty) => serQty.selected)
|
item.serQtyList.filter((serQty) => serQty.selected)
|
||||||
return item.serQtyList.map((serQty) => {
|
return item.serQtyList.map((serQty) => {
|
||||||
return {
|
return {
|
||||||
@ -600,21 +586,18 @@ export default function StepUp(props) {
|
|||||||
pcsItemId: serQty.itemId,
|
pcsItemId: serQty.itemId,
|
||||||
pcsOptCd: seletedOption,
|
pcsOptCd: seletedOption,
|
||||||
paralQty: serQty.paralQty,
|
paralQty: serQty.paralQty,
|
||||||
// 접속함: PCS가 실제 담당하는 모듈 타입으로 필터 후 itemId 기준 dedupe
|
// 접속함 중복 체크: (itemId, moduleTpCd) 조합 기준으로 dedupe
|
||||||
// (Cross Mix 시 다른 모듈 계열의 conn 제외 / 단일·동계열 Mix는 기존과 동일 결과)
|
|
||||||
connections: item.connList?.length
|
connections: item.connList?.length
|
||||||
? [
|
? [
|
||||||
...new Map(
|
...new Map(
|
||||||
item.connList
|
item.connList.map((conn) => [
|
||||||
.filter((conn) => !targetTpCds || !conn.moduleTpCd || targetTpCds.has(conn.moduleTpCd))
|
`${conn.itemId}_${conn.moduleTpCd}`,
|
||||||
.map((conn) => [
|
{
|
||||||
conn.itemId,
|
connItemId: conn.itemId,
|
||||||
{
|
connMaxParalCnt: conn.connMaxParalCnt,
|
||||||
connItemId: conn.itemId,
|
moduleTpCd: conn.moduleTpCd,
|
||||||
connMaxParalCnt: conn.connMaxParalCnt,
|
},
|
||||||
moduleTpCd: conn.moduleTpCd,
|
]),
|
||||||
},
|
|
||||||
]),
|
|
||||||
).values(),
|
).values(),
|
||||||
]
|
]
|
||||||
: [],
|
: [],
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user