From 585b14712879ab9412b9749723819202093d2520 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期日, 29 九月 2024 10:00:07 +0800 Subject: [PATCH] # --- /dev/null | 77 ------------------------- zy-acs-flow/src/page/components/useAppBarHeight.js | 12 ++++ zy-acs-flow/src/page/components/EmptyDataLoader.jsx | 41 +++++++++++++ zy-acs-flow/src/page/mission/MissionList.jsx | 17 ++++- zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/MissionServiceImpl.java | 2 5 files changed, 66 insertions(+), 83 deletions(-) diff --git a/zy-acs-flow/src/page/components/EmptyDataLoader.jsx b/zy-acs-flow/src/page/components/EmptyDataLoader.jsx new file mode 100644 index 0000000..c33619d --- /dev/null +++ b/zy-acs-flow/src/page/components/EmptyDataLoader.jsx @@ -0,0 +1,41 @@ +import { LinearProgress, Stack, Typography } from '@mui/material'; +import { CreateButton, useGetList } from 'react-admin'; +import useAppBarHeight from './useAppBarHeight'; +import { matchPath, useLocation } from 'react-router'; +import { Link } from 'react-router-dom'; + +const EmptyDataLoader = ({ children }) => { + const location = useLocation(); + const matchCreate = matchPath('/mission/create', location.pathname); + const appBarHeight = useAppBarHeight(); + + return ( + <Stack + justifyContent="center" + alignItems="center" + gap={3} + sx={{ + height: `calc(100dvh - ${appBarHeight}px)`, + }} + > + <img src="/empty.svg" alt="No contacts found" /> + <Stack gap={0} alignItems="center"> + <Typography variant="h6" fontWeight="bold"> + No data found + </Typography> + <Typography + variant="body2" + align="center" + color="text.secondary" + gutterBottom + > + It seems your server data is empty. + <br /> + {children} + </Typography> + </Stack> + </Stack> + ); +}; + +export default EmptyDataLoader; \ No newline at end of file diff --git a/zy-acs-flow/src/page/components/useAppBarHeight.js b/zy-acs-flow/src/page/components/useAppBarHeight.js new file mode 100644 index 0000000..12437a0 --- /dev/null +++ b/zy-acs-flow/src/page/components/useAppBarHeight.js @@ -0,0 +1,12 @@ +import { useMediaQuery, useTheme } from '@mui/material'; + +const DENSE_NAVBAR_HEIGHT = 48; +const DENSE_NAVBAR_HEIGHT_MOBILE = 64; + +export default function useAppBarHeight() { + const { breakpoints } = useTheme(); + const queryDesktop = breakpoints.up('sm'); + return useMediaQuery(queryDesktop) + ? DENSE_NAVBAR_HEIGHT + : DENSE_NAVBAR_HEIGHT_MOBILE; +} diff --git a/zy-acs-flow/src/page/mission/MissionEmpty.jsx b/zy-acs-flow/src/page/mission/MissionEmpty.jsx deleted file mode 100644 index c7286dd..0000000 --- a/zy-acs-flow/src/page/mission/MissionEmpty.jsx +++ /dev/null @@ -1,77 +0,0 @@ -import { LinearProgress, Stack, Typography } from '@mui/material'; -import { CreateButton, useGetList } from 'react-admin'; -import useAppBarHeight from '../misc/useAppBarHeight'; -import { matchPath, useLocation } from 'react-router'; -import { DealCreate } from './DealCreate'; -import { Contact } from '../types'; -import { Link } from 'react-router-dom'; - -export const MissionEmpty = ({ children }) => { - const location = useLocation(); - const matchCreate = matchPath('/mission/create', location.pathname); - const appBarHeight = useAppBarHeight(); - - // get Contact data - const { data: contacts, isPending: contactsLoading } = useGetList( - 'contacts', - { - pagination: { page: 1, perPage: 1 }, - } - ); - - if (contactsLoading) return <LinearProgress />; - - return ( - <Stack - justifyContent="center" - alignItems="center" - gap={3} - sx={{ - height: `calc(100dvh - ${appBarHeight}px)`, - }} - > - <img src="./img/empty.svg" alt="No contacts found" /> - {contacts && contacts.length > 0 ? ( - <> - <Stack gap={0} alignItems="center"> - <Typography variant="h6" fontWeight="bold"> - No deals found - </Typography> - <Typography - variant="body2" - align="center" - color="text.secondary" - gutterBottom - > - It seems your deal list is empty. - </Typography> - </Stack> - <Stack spacing={2} direction="row"> - <CreateButton variant="contained" label="Create deal" /> - </Stack> - <DealCreate open={!!matchCreate} /> - {children} - </> - ) : ( - <Stack gap={0} alignItems="center"> - <Typography variant="h6" fontWeight="bold"> - No deals found - </Typography> - <Typography - variant="body2" - align="center" - color="text.secondary" - gutterBottom - > - It seems your contact list is empty. - <br /> - <Link to="/contacts/create"> - Add your first contact - </Link>{' '} - before creating a deal. - </Typography> - </Stack> - )} - </Stack> - ); -}; diff --git a/zy-acs-flow/src/page/mission/MissionList.jsx b/zy-acs-flow/src/page/mission/MissionList.jsx index 4e65cc9..6e74606 100644 --- a/zy-acs-flow/src/page/mission/MissionList.jsx +++ b/zy-acs-flow/src/page/mission/MissionList.jsx @@ -39,9 +39,9 @@ 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"; const MissionList = () => { @@ -77,10 +77,17 @@ if (!data?.length && !hasFilters) { return ( <> - {/* <MissionEmpty> */} - <MissionShow open={!!matchShow} id={matchShow?.params.id} /> - {/* <DealArchivedList /> */} - {/* </MissionEmpty> */} + <EmptyDataLoader> + <Typography + variant="body2" + align="center" + color="text.secondary" + gutterBottom + > + sss + </Typography> + <MissionShow open={!!matchShow} id={matchShow?.params.id} /> + </EmptyDataLoader> </> ); } diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/MissionServiceImpl.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/MissionServiceImpl.java index 7b50ca0..7ac7160 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/MissionServiceImpl.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/service/impl/MissionServiceImpl.java @@ -26,7 +26,7 @@ @Override public List<MissionVo> getList(Long agvId, String groupNo) { List<MissionVo> result = new ArrayList<>(); - List<String> runningGroupNos = segmentService.getGroupNo(SegmentStateType.RUNNING, agvId, groupNo); + List<String> runningGroupNos = segmentService.getGroupNo(SegmentStateType.WAITING, agvId, groupNo); for (String runningGroupNo : runningGroupNos) { MissionVo vo = generate(runningGroupNo); if (null != vo) { -- Gitblit v1.9.1