|  |  |  | 
|---|
|  |  |  | import { useNavigate } from 'react-router-dom'; | 
|---|
|  |  |  | import { | 
|---|
|  |  |  | ListBase, | 
|---|
|  |  |  | DatagridConfigurable, | 
|---|
|  |  |  | SearchInput, | 
|---|
|  |  |  | TopToolbar, | 
|---|
|  |  |  | SelectColumnsButton, | 
|---|
|  |  |  | EditButton, | 
|---|
|  |  |  | FilterButton, | 
|---|
|  |  |  | CreateButton, | 
|---|
|  |  |  | ExportButton, | 
|---|
|  |  |  | BulkDeleteButton, | 
|---|
|  |  |  | WrapperField, | 
|---|
|  |  |  | useRecordContext, | 
|---|
|  |  |  | useTranslate, | 
|---|
|  |  |  | useListContext, | 
|---|
|  |  |  | useCreatePath, | 
|---|
|  |  |  | TextField, | 
|---|
|  |  |  | NumberField, | 
|---|
|  |  |  | DateField, | 
|---|
|  |  |  | BooleanField, | 
|---|
|  |  |  | ReferenceField, | 
|---|
|  |  |  | TextInput, | 
|---|
|  |  |  | DateTimeInput, | 
|---|
|  |  |  | DateInput, | 
|---|
|  |  |  | SelectInput, | 
|---|
|  |  |  | NumberInput, | 
|---|
|  |  |  | ReferenceInput, | 
|---|
|  |  |  | ReferenceArrayInput, | 
|---|
|  |  |  | AutocompleteInput, | 
|---|
|  |  |  | ListToolbar, | 
|---|
|  |  |  | Title, | 
|---|
|  |  |  | } from 'react-admin'; | 
|---|
|  |  |  | import { matchPath, useLocation } from 'react-router'; | 
|---|
|  |  |  | import { Box, Typography, Card, Stack } from '@mui/material'; | 
|---|
|  |  |  | import { Box, Typography, Card, Stack, LinearProgress } from '@mui/material'; | 
|---|
|  |  |  | import { styled } from '@mui/material/styles'; | 
|---|
|  |  |  | import EmptyData from "../components/EmptyData"; | 
|---|
|  |  |  | import PageDrawer from "../components/PageDrawer"; | 
|---|
|  |  |  | import { PAGE_DRAWER_WIDTH, OPERATE_MODE, DEFAULT_PAGE_SIZE } from '@/config/setting'; | 
|---|
|  |  |  | import * as Common from '@/utils/common'; | 
|---|
|  |  |  | // import { MissionEmpty } from "./MissionEmpty"; | 
|---|
|  |  |  | import MissionShow from "./MissionShow"; | 
|---|
|  |  |  | import { MissionListContent } from "./MissionListContent"; | 
|---|
|  |  |  | import EmptyDataLoader from "../components/EmptyDataLoader"; | 
|---|
|  |  |  | import MissionResend from "./MissionResend"; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const MissionList = () => { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const filters = [ | 
|---|
|  |  |  | <SearchInput source="q" alwaysOn />, | 
|---|
|  |  |  | <ReferenceInput source="agvId" label="table.field.segment.agvId" reference="agv" alwaysOn> | 
|---|
|  |  |  | <AutocompleteInput label="table.field.segment.agvId" optionText="uuid" filterToQuery={(val) => ({ uuid: val })} /> | 
|---|
|  |  |  | </ReferenceInput>, | 
|---|
|  |  |  | <TextInput source="groupNo" label="table.field.segment.groupId" />, | 
|---|
|  |  |  | ]; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const MissionLayout = () => { | 
|---|
|  |  |  | const location = useLocation(); | 
|---|
|  |  |  | const matchShow = matchPath('/mission/:id/show', location.pathname); | 
|---|
|  |  |  | const matchResend = matchPath('/mission/:id/resend', location.pathname); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | const { data, isPending, filterValues } = useListContext(); | 
|---|
|  |  |  | if (isPending) return null; | 
|---|
|  |  |  | console.log(data); | 
|---|
|  |  |  | const hasFilters = filterValues && Object.keys(filterValues).length > 0; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (!data?.length) { | 
|---|
|  |  |  | if (isPending) return <LinearProgress />; | 
|---|
|  |  |  | if (!data?.length && !hasFilters) { | 
|---|
|  |  |  | return ( | 
|---|
|  |  |  | <> | 
|---|
|  |  |  | {/* <MissionEmpty> */} | 
|---|
|  |  |  | <MissionShow open={!!matchShow} id={matchShow?.params.id} /> | 
|---|
|  |  |  | {/* <DealArchivedList /> */} | 
|---|
|  |  |  | {/* </MissionEmpty> */} | 
|---|
|  |  |  | <EmptyDataLoader> | 
|---|
|  |  |  | <MissionShow open={!!matchShow} groupNo={matchShow?.params.id} /> | 
|---|
|  |  |  | </EmptyDataLoader> | 
|---|
|  |  |  | </> | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | <ListToolbar filters={filters} actions={( | 
|---|
|  |  |  | <TopToolbar> | 
|---|
|  |  |  | <FilterButton /> | 
|---|
|  |  |  | <SelectColumnsButton preferenceKey='locSts' /> | 
|---|
|  |  |  | </TopToolbar> | 
|---|
|  |  |  | )} /> | 
|---|
|  |  |  | <Card> | 
|---|
|  |  |  | {/* <DealListContent /> */} | 
|---|
|  |  |  | <MissionListContent /> | 
|---|
|  |  |  | </Card> | 
|---|
|  |  |  | {/* <DealArchivedList /> */} | 
|---|
|  |  |  |  | 
|---|
|  |  |  | <MissionShow open={!!matchShow} id={matchShow?.params.id} /> | 
|---|
|  |  |  | <MissionResend open={!!matchResend} id={matchResend?.params.id} /> | 
|---|
|  |  |  | </Stack> | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | } | 
|---|