| | |
| | | ReferenceArrayInput, |
| | | AutocompleteInput, |
| | | DeleteButton, |
| | | useGetIdentity, |
| | | ListBase, |
| | | Title, |
| | | Pagination, |
| | | } from 'react-admin'; |
| | | import { Box, Typography, Card, Stack } from '@mui/material'; |
| | | import { styled } from '@mui/material/styles'; |
| | |
| | | import MyField from "../components/MyField"; |
| | | import { PAGE_DRAWER_WIDTH, OPERATE_MODE } from '@/config/setting'; |
| | | import * as Common from '@/utils/common'; |
| | | import { ImageList } from "./GridList"; |
| | | |
| | | |
| | | export const AgvGrid = () => { |
| | | const { identity } = useGetIdentity(); |
| | | if (!identity) return null; |
| | | const [createDialog, setCreateDialog] = useState(false); |
| | | |
| | | return ( |
| | | <> |
| | | <ListBase perPage={50} sort={{ field: "uuid", order: "asc" }}> |
| | | <AgvGridLayout |
| | | setCreateDialog={setCreateDialog} |
| | | /> |
| | | </ListBase> |
| | | <AgvCreate |
| | | open={createDialog} |
| | | setOpen={setCreateDialog} |
| | | /> |
| | | </> |
| | | ) |
| | | } |
| | | |
| | | const AgvGridLayout = (props) => { |
| | | const { data, isPending, filterValues } = useListContext(); |
| | | const hasFilters = filterValues && Object.keys(filterValues).length > 0; |
| | | |
| | | if (isPending) return null; |
| | | if (!data?.length && !hasFilters) return <EmptyData onClick={() => { props.setCreateDialog(true) }} />; |
| | | |
| | | return ( |
| | | <Stack direction="row" component="div"> |
| | | <Stack sx={{ width: '100%' }}> |
| | | <Title title={'Companies'} /> |
| | | <ListToolbar actions={( |
| | | <TopToolbar> |
| | | <FilterButton /> |
| | | <MyCreateButton onClick={() => { setCreateDialog(true) }} /> |
| | | <MyExportButton /> |
| | | </TopToolbar> |
| | | )} /> |
| | | <ImageList /> |
| | | <Pagination rowsPerPageOptions={[10, 25, 50, 100]} /> |
| | | </Stack> |
| | | </Stack> |
| | | ); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | const StyledDatagrid = styled(DatagridConfigurable)(({ theme }) => ({ |
| | | '& .css-1vooibu-MuiSvgIcon-root': { |
| | |
| | | />, |
| | | ] |
| | | |
| | | const AgvList = () => { |
| | | export const AgvList = () => { |
| | | const translate = useTranslate(); |
| | | |
| | | const [createDialog, setCreateDialog] = useState(false); |
| | |
| | | </Box> |
| | | ) |
| | | } |
| | | |
| | | export default AgvList; |