클릭시 배치면 데이터 validation 추가

This commit is contained in:
yjnoh 2025-03-24 10:23:35 +09:00
parent 70c706341e
commit 943fd16e4b
2 changed files with 12 additions and 21 deletions

View File

@ -168,6 +168,7 @@ export default function BasicSetting({ id, pos = { x: 50, y: 230 } }) {
useEffect(() => { useEffect(() => {
setIsManualModuleSetup(false) setIsManualModuleSetup(false)
setIsManualModuleLayoutSetup(false) setIsManualModuleLayoutSetup(false)
setManualSetupMode(`off`)
}, [checkedModules]) }, [checkedModules])
return ( return (

View File

@ -1250,31 +1250,21 @@ export function useModuleBasicSetting(tabNum) {
if (!inside) return if (!inside) return
//입력받은 값의 합 //입력받은 값의 합
let sumRowCount = layoutSetupRef.reduce((acc, cur) => acc + cur.row, 0)
let sumColCount = layoutSetupRef.reduce((acc, cur) => acc + cur.col, 0) let sumColCount = layoutSetupRef.reduce((acc, cur) => acc + cur.col, 0)
let maxRow = 0
let maxCol = trestlePolygon.trestleDetail.moduleMaxCols
if (checkedModule.length > 1) { const isMultipleModules = checkedModule.length > 1
//모듈이 여러개일때 const maxRow = isMultipleModules
maxRow = trestlePolygon.trestleDetail.moduleMaxRows ? trestlePolygon.trestleDetail.moduleMaxRows
: trestlePolygon.trestleDetail.module.find((item) => item.moduleTpCd === checkedModule[0].moduleTpCd).moduleMaxRows
if (sumRowCount > maxRow || sumColCount > maxCol) { const sumRowCount = isMultipleModules
swalFire({ text: getMessage('module.layout.setup.max.count', [maxRow, maxCol]) }) ? layoutSetupRef.reduce((acc, cur) => acc + cur.row, 0)
return : layoutSetupRef.find((item) => item.moduleId === checkedModule[0].itemId).row
}
} else {
//모듈이 하나일때는 module에 list를 조회
const checkModuleId = checkedModule[0].itemId
const targetModuleRows = trestlePolygon.trestleDetail.module.find((item) => item.itemId === checkModuleId).modulemaxRows
const refOption = layoutSetupRef.find((item) => item.moduleId === checkModuleId)
sumRowCount = refOption.row if (sumRowCount > maxRow || sumColCount > trestlePolygon.trestleDetail.moduleMaxCols) {
swalFire({ text: getMessage('module.layout.setup.max.count', [maxRow, trestlePolygon.trestleDetail.moduleMaxCols]) })
if (sumRowCount > targetModuleRows || sumColCount > maxCol) { return
swalFire({ text: getMessage('module.layout.setup.max.count', [targetModuleRows, maxCol]) })
return
}
} }
if (tempModule) { if (tempModule) {