| | |
| | | const TITLE = 'menu.matnrGroup'; |
| | | |
| | | const columns = [ |
| | | { |
| | | id: 'name', |
| | | label: 'table.field.matnrGroup.name', |
| | | minWidth: 200, |
| | | }, |
| | | |
| | | { |
| | | id: 'code', |
| | | label: 'table.field.matnrGroup.code', |
| | | minWidth: 80, |
| | | }, |
| | | { |
| | | id: 'name', |
| | | label: 'table.field.matnrGroup.name', |
| | | Width: 100, |
| | | }, |
| | | { |
| | | id: 'parentId', |
| | |
| | | const [createDialog, setCreateDialog] = React.useState(false); |
| | | const [editRecord, setEditRecord] = React.useState(null); |
| | | const [openNodes, setOpenNodes] = React.useState({}); |
| | | const [expandAll, setExpandAll] = React.useState(false); |
| | | const [expandAll, setExpandAll] = React.useState(true); |
| | | |
| | | const http = async () => { |
| | | const res = await request.post(RESOURCE + '/tree', { |
| | |
| | | }); |
| | | }; |
| | | |
| | | // 初始化 openNodes 以展开所有节点 |
| | | React.useEffect(() => { |
| | | if (treeData) { |
| | | const newOpenNodes = {}; |
| | | const updateOpenNodes = (nodes) => { |
| | | nodes.forEach(node => { |
| | | newOpenNodes[node.id] = true; |
| | | if (node.children) { |
| | | updateOpenNodes(node.children); |
| | | } |
| | | }); |
| | | }; |
| | | updateOpenNodes(treeData); |
| | | setOpenNodes(newOpenNodes); |
| | | } |
| | | }, [treeData]); |
| | | |
| | | return ( |
| | | <div> |
| | | <MatnrGroupEdit |
| | |
| | | > |
| | | {expandAll ? translate('common.action.collapseAll') : translate('common.action.expandAll')} |
| | | </Button> |
| | | {/* <TextField |
| | | label="Search" |
| | | <TextField |
| | | label="搜索名称" |
| | | value={filter} |
| | | onChange={({ target }) => { |
| | | setFilter(target.value) |
| | |
| | | size="small" |
| | | margin="dense" |
| | | fullWidth |
| | | /> */} |
| | | /> |
| | | </Box> |
| | | <Box> |
| | | <Button |
| | |
| | | ); |
| | | } |
| | | |
| | | export default MatnrGroupList; |
| | | export default MatnrGroupList; |