|  |  |  | 
|---|
|  |  |  | 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) => { | 
|---|
|  |  |  | const row = apiRef.current.getItem(nodeId); | 
|---|
|  |  |  | console.log(row); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (row.type === 'warehouseId') { | 
|---|
|  |  |  | // setFilters({ warehouseId: row.id ,areaId:''}); | 
|---|
|  |  |  | } else if (row.type === 'areaId') { | 
|---|
|  |  |  | // setFilters({ areaId: row.id ,warehouseId:''}); | 
|---|
|  |  |  | if (row.flagWare === 1) { | 
|---|
|  |  |  | setFilters({ warehouseId: row.id, areaId: '' }); | 
|---|
|  |  |  | } else if (row.flagWare === 0) { | 
|---|
|  |  |  | setFilters({ areaId: row.id, warehouseId: row.warehouseId }); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | 
|---|
|  |  |  | items={treeData} | 
|---|
|  |  |  | slots={CustomTreeItem} | 
|---|
|  |  |  | apiRef={apiRef} | 
|---|
|  |  |  | getItemId={(item) => item.index} | 
|---|
|  |  |  | getItemLabel={(item) => item.name} | 
|---|
|  |  |  | onItemClick={handleNodeSelect} // 监听节点点击事件 | 
|---|
|  |  |  | /> | 
|---|
|  |  |  |  | 
|---|