diff --git a/src/app/[locale]/roof2/RoofSelect.jsx b/src/app/[locale]/roof2/RoofSelect.jsx index 0dc5645d..4693a881 100644 --- a/src/app/[locale]/roof2/RoofSelect.jsx +++ b/src/app/[locale]/roof2/RoofSelect.jsx @@ -8,10 +8,12 @@ export default function RoofSelect() { const [roofMaterials, setRoofMaterials] = useState([]) const [manufacturers, setManufacturers] = useState([]) const [trestles, setTrestles] = useState([]) + const [modules, setModules] = useState([]) const [originTrestles, setOriginTrestles] = useState([]) const [roofMaterialId, setRoofMaterialId] = useState(null) const [manufacturerId, setManufacturerId] = useState(null) + const [trestleId, setTrestleId] = useState(null) const { get } = useAxios() @@ -55,44 +57,73 @@ export default function RoofSelect() { setTrestles(trestles) }, [manufacturerId]) + useEffect(() => { + if (!trestleId) { + return + } + console.log(roofMaterialId, trestleId) + get({ url: `/api/module/v1.0/modules/${roofMaterialId}/${trestleId}` }).then((res) => { + if (res.length === 0) { + return + } + setModules(res) + }) + }, [trestleId]) + const handleRoofMaterialOnChange = (e) => { - const id = e.target.value - setRoofMaterialId(id) + const roofMaterialId = e.target.value + setRoofMaterialId(roofMaterialId) setManufacturers([]) setManufacturerId(null) + setTrestleId(null) setTrestles([]) + setModules([]) } const handleManufacturersOnChange = (e) => { - const id = Number(e.target.value) + const manufacturerId = Number(e.target.value) setTrestles([]) - setManufacturerId(id) + setManufacturerId(manufacturerId) + setTrestleId(null) + setModules([]) } + + const handleTrestlesOnChange = (e) => { + const trestleId = Number(e.target.value) + setTrestleId(trestleId) + setModules([]) + } + return ( - <> -