파워컨디션너선택 화면 자동회로할당 시 메시지처리 및 승압설정 화면 수정
This commit is contained in:
parent
c298e31bbd
commit
15b713a939
@ -94,10 +94,18 @@ export default function CircuitTrestleSetting({ id }) {
|
|||||||
setModels(res.data.pcsItemList)
|
setModels(res.data.pcsItemList)
|
||||||
setTabNum(2)
|
setTabNum(2)
|
||||||
} else {
|
} else {
|
||||||
swalFire({
|
// 데이터가 없는 경우 오류 메시지 확인 필요
|
||||||
title: '파워컨디셔너를 추가해 주세요.',
|
if (res.result.resultCode === 'E') {
|
||||||
type: 'alert',
|
swalFire({
|
||||||
})
|
title: res.result.resultMsg,
|
||||||
|
type: 'alert',
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
swalFire({
|
||||||
|
title: '파워컨디셔너를 추가해 주세요.',
|
||||||
|
type: 'alert',
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
@ -24,19 +24,21 @@ export default function StepUp(props) {
|
|||||||
const [stepUpListData, setStepUpListData] = useState([])
|
const [stepUpListData, setStepUpListData] = useState([])
|
||||||
const [optCodes, setOptCodes] = useState([])
|
const [optCodes, setOptCodes] = useState([])
|
||||||
|
|
||||||
useCanvasPopupStatusController(6)
|
const [selectedRows, setSelectedRows] = useState({})
|
||||||
const canvasPopupStatusState = useRecoilValue(canvasPopupStatusStore)
|
const [isManualSelection, setIsManualSelection] = useState({})
|
||||||
if (Object.keys(canvasPopupStatusState[6]).length !== 0) {
|
|
||||||
console.log('🚀 ~ useEffect ~ canvasPopupStatusState :', canvasPopupStatusState)
|
// useCanvasPopupStatusController(6)
|
||||||
}
|
// const canvasPopupStatusState = useRecoilValue(canvasPopupStatusStore)
|
||||||
|
// if (Object.keys(canvasPopupStatusState[6]).length !== 0) {
|
||||||
|
// console.log('🚀 ~ useEffect ~ canvasPopupStatusState :', canvasPopupStatusState)
|
||||||
|
// }
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
console.log('🚀 ~ useEffect ~ >>>>>>>>>>>> props:', props)
|
|
||||||
|
|
||||||
// PCS 승압설정 정보 조회
|
// PCS 승압설정 정보 조회
|
||||||
fetchStepUpData()
|
fetchStepUpData()
|
||||||
}, [])
|
}, [])
|
||||||
|
|
||||||
|
// PCS 승압설정 정보 조회
|
||||||
const fetchStepUpData = async () => {
|
const fetchStepUpData = async () => {
|
||||||
try {
|
try {
|
||||||
const params = {
|
const params = {
|
||||||
@ -46,14 +48,14 @@ export default function StepUp(props) {
|
|||||||
pcsItemList: props.getPcsItemList(), // PCS 아이템 목록
|
pcsItemList: props.getPcsItemList(), // PCS 아이템 목록
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log('🚀 ~ fetchStepUpData ~ params:', params)
|
// PCS 승압설정 정보 조회
|
||||||
|
|
||||||
const res = await getPcsVoltageStepUpList(params)
|
const res = await getPcsVoltageStepUpList(params)
|
||||||
console.log('🚀 ~ fetchStepUpData ~ res:', res)
|
|
||||||
if (res?.result.code === 200 && res?.data) {
|
if (res?.result.code === 200 && res?.data) {
|
||||||
const dataArray = Array.isArray(res.data) ? res.data : [res.data]
|
const dataArray = Array.isArray(res.data) ? res.data : [res.data]
|
||||||
const stepUpListData = formatStepUpListData(dataArray)
|
const stepUpListData = formatStepUpListData(dataArray)
|
||||||
console.log('🚀 ~ useEffect ~ getPcsVoltageStepUpList ~ stepUpListData:', stepUpListData)
|
|
||||||
|
// PCS 승압설정 정보 SET
|
||||||
setStepUpListData(stepUpListData)
|
setStepUpListData(stepUpListData)
|
||||||
|
|
||||||
// PCS 옵션 조회
|
// PCS 옵션 조회
|
||||||
@ -80,6 +82,7 @@ export default function StepUp(props) {
|
|||||||
...stepUps,
|
...stepUps,
|
||||||
optionList: formatOptionList(stepUps.optionList),
|
optionList: formatOptionList(stepUps.optionList),
|
||||||
pcsItemList: formatPcsItemList(stepUps.pcsItemList),
|
pcsItemList: formatPcsItemList(stepUps.pcsItemList),
|
||||||
|
selectedPcsItem: formatPcsItemList(stepUps.pcsItemList),
|
||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -107,6 +110,8 @@ export default function StepUp(props) {
|
|||||||
|
|
||||||
// PCS 연결 포맷
|
// PCS 연결 포맷
|
||||||
const formatConnList = (connList = []) => {
|
const formatConnList = (connList = []) => {
|
||||||
|
if (!connList) return [] // null인 경우 빈 배열 반환
|
||||||
|
|
||||||
return connList?.map((conn) => ({
|
return connList?.map((conn) => ({
|
||||||
connAllowCur: conn.connAllowCur ? conn.connAllowCur : 0,
|
connAllowCur: conn.connAllowCur ? conn.connAllowCur : 0,
|
||||||
connMaxParalCnt: conn.connMaxParalCnt ? conn.connMaxParalCnt : 0,
|
connMaxParalCnt: conn.connMaxParalCnt ? conn.connMaxParalCnt : 0,
|
||||||
@ -122,6 +127,8 @@ export default function StepUp(props) {
|
|||||||
return serQtyList?.map((qty) => ({
|
return serQtyList?.map((qty) => ({
|
||||||
serQty: qty.serQty ? qty.serQty : 0,
|
serQty: qty.serQty ? qty.serQty : 0,
|
||||||
paralQty: qty.paralQty ? qty.paralQty : 0,
|
paralQty: qty.paralQty ? qty.paralQty : 0,
|
||||||
|
rmdYn: qty.rmdYn ? qty.rmdYn : 'N',
|
||||||
|
usePossYn: qty.usePossYn ? qty.usePossYn : 'Y',
|
||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -133,6 +140,39 @@ export default function StepUp(props) {
|
|||||||
}))
|
}))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 행 선택 핸들러 함수 추가
|
||||||
|
const handleRowClick = (stepUpId, pcsIdx, serQtyIdx) => {
|
||||||
|
const rowKey = `${stepUpId}_${pcsIdx}_${serQtyIdx}`
|
||||||
|
const pcsKey = `${stepUpId}_${pcsIdx}`
|
||||||
|
|
||||||
|
setSelectedRows((prev) => {
|
||||||
|
// 현재 stepUpId에 대한 선택 상태가 없으면 빈 객체로 초기화
|
||||||
|
const currentStepUpSelections = prev[stepUpId] || {}
|
||||||
|
|
||||||
|
// 이미 선택된 행을 다시 클릭하는 경우, 선택을 해제하지 않음
|
||||||
|
if (currentStepUpSelections[pcsKey] === rowKey) {
|
||||||
|
return prev
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
...prev,
|
||||||
|
[stepUpId]: {
|
||||||
|
...currentStepUpSelections,
|
||||||
|
[pcsKey]: rowKey,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
// 수동 선택 상태를 업데이트하되, 기존 추천 선택은 유지
|
||||||
|
setIsManualSelection((prev) => ({
|
||||||
|
...prev,
|
||||||
|
[stepUpId]: {
|
||||||
|
...prev[stepUpId],
|
||||||
|
[pcsKey]: true,
|
||||||
|
},
|
||||||
|
}))
|
||||||
|
}
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<div className="properties-setting-wrap outer">
|
<div className="properties-setting-wrap outer">
|
||||||
@ -143,9 +183,7 @@ export default function StepUp(props) {
|
|||||||
{stepUp?.pcsItemList.map((_, idx) => (
|
{stepUp?.pcsItemList.map((_, idx) => (
|
||||||
<div key={idx} className="module-table-inner">
|
<div key={idx} className="module-table-inner">
|
||||||
<div className="mb-box">
|
<div className="mb-box">
|
||||||
<div key={idx} className="circuit-table-tit">
|
<div className="circuit-table-tit">{stepUp.pcsItemList[idx].goodsNo}</div>
|
||||||
{stepUp.pcsItemList[idx].goodsNo}
|
|
||||||
</div>
|
|
||||||
<div className="roof-module-table overflow-y min">
|
<div className="roof-module-table overflow-y min">
|
||||||
<table>
|
<table>
|
||||||
<thead>
|
<thead>
|
||||||
@ -155,9 +193,21 @@ export default function StepUp(props) {
|
|||||||
</tr>
|
</tr>
|
||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
{stepUp.pcsItemList[idx].serQtyList.map((item) => {
|
{stepUp.pcsItemList[idx].serQtyList.map((item, serQtyIdx) => {
|
||||||
|
const rowKey = `${stepUp.id}_${idx}_${serQtyIdx}`
|
||||||
|
const pcsKey = `${stepUp.id}_${idx}`
|
||||||
return (
|
return (
|
||||||
<tr className="on">
|
<tr
|
||||||
|
key={rowKey}
|
||||||
|
className={`${
|
||||||
|
(!isManualSelection[stepUp.id]?.[pcsKey] && item.rmdYn === 'Y') ||
|
||||||
|
(selectedRows[stepUp.id] && selectedRows[stepUp.id][pcsKey] === rowKey)
|
||||||
|
? 'on'
|
||||||
|
: ''
|
||||||
|
}`}
|
||||||
|
onClick={() => handleRowClick(stepUp.id, idx, serQtyIdx)}
|
||||||
|
style={{ cursor: 'pointer' }}
|
||||||
|
>
|
||||||
<td className="al-r">{item.serQty}</td>
|
<td className="al-r">{item.serQty}</td>
|
||||||
<td className="al-r">{item.paralQty}</td>
|
<td className="al-r">{item.paralQty}</td>
|
||||||
</tr>
|
</tr>
|
||||||
@ -195,9 +245,17 @@ export default function StepUp(props) {
|
|||||||
</thead>
|
</thead>
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
<td className="al-c">{stepUp.pcsItemList[idx].connList?.goodsNo}</td>
|
<td className="al-c">
|
||||||
<td className="al-r">{stepUp.pcsItemList[idx].connList?.connMaxParalCnt}</td>
|
{stepUp.pcsItemList[idx].connList?.[0]?.goodsNo ? stepUp.pcsItemList[idx].connList?.[0]?.goodsNo : '-'}
|
||||||
<td className="al-r">{stepUp.pcsItemList[idx].connList?.vstuParalCnt}</td>
|
</td>
|
||||||
|
<td className="al-c">
|
||||||
|
{stepUp.pcsItemList[idx].connList?.[0]?.connMaxParalCnt
|
||||||
|
? (stepUp.pcsItemList[idx].connList?.[0]?.connMaxParalCnt ?? '-')
|
||||||
|
: '-'}
|
||||||
|
</td>
|
||||||
|
<td className="al-c">
|
||||||
|
{stepUp.pcsItemList[idx].connList?.[0]?.vstuParalCnt ? stepUp.pcsItemList[idx].connList?.[0]?.vstuParalCnt : '-'}
|
||||||
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user