| | |
| | | const { setFilters } = useListContext(); // 获取列表上下文 |
| | | const [selectedOption, setSelectedOption] = useState(null); |
| | | const [treeData, setTreeData] = useState([]); |
| | | const [defaultIds, setDefaultIds] = useState(['65']); |
| | | const [defaultIds, setDefaultIds] = useState([]); |
| | | const [condition, setCondition] = useState(''); |
| | | |
| | | const haveChildren = (item) => { |
| | |
| | | } |
| | | |
| | | if (item && typeof item === 'object') { |
| | | if (item.id !== undefined) { |
| | | item.id = item.id.toString(); |
| | | if (item.index !== undefined) { |
| | | item.index = item.index.toString(); |
| | | } |
| | | |
| | | if (item.children && Array.isArray(item.children)) { |
| | |
| | | }, [condition]); |
| | | |
| | | const http = () => { |
| | | request.post('/matnrGroup/tree', { condition }) |
| | | request.post('/warehouse/areas', { condition }) |
| | | .then(res => { |
| | | if (res?.data?.code === 200) { |
| | | let data = res.data.data; |
| | | let items = haveChildren(data) |
| | | setTreeData(items) |
| | | setDefaultIds([items.at(0).id]) |
| | | // setDefaultIds([items.at(0).id]) |
| | | |
| | | } else { |
| | | notify(res.data.msg); |
| | |
| | | |
| | | } |
| | | const handleNodeSelect = (event, nodeId) => { |
| | | console.log(nodeId); |
| | | // setFilters({ groupId: nodeId }); |
| | | const row = apiRef.current.getItem(nodeId); |
| | | |
| | | if (row.flagWare === 1) { |
| | | setFilters({ warehouseId: row.id, areaId: '' }); |
| | | } else if (row.flagWare === 0) { |
| | | setFilters({ areaId: row.id, warehouseId: '' }); |
| | | } |
| | | |
| | | }; |
| | | const handleSearch = (e) => { |
| | | setCondition(e.target.value) |
| | |
| | | items={treeData} |
| | | slots={CustomTreeItem} |
| | | apiRef={apiRef} |
| | | getItemId={(item) => item.index} |
| | | getItemLabel={(item) => item.name} |
| | | onItemClick={handleNodeSelect} // 监听节点点击事件 |
| | | /> |
| | | |