From 42b108daf16fd969696a23638481111432ae8ebe Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期六, 21 九月 2024 16:19:38 +0800 Subject: [PATCH] # --- zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Agv.java | 3 + zy-acs-flow/src/page/components/PulseSignal.jsx | 63 +++++++++++++++++++------------ zy-acs-flow/src/page/agv/AgvShow.jsx | 9 ++++ zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/AgvController.java | 1 4 files changed, 50 insertions(+), 26 deletions(-) diff --git a/zy-acs-flow/src/page/agv/AgvShow.jsx b/zy-acs-flow/src/page/agv/AgvShow.jsx index 6c0475a..3b25088 100644 --- a/zy-acs-flow/src/page/agv/AgvShow.jsx +++ b/zy-acs-flow/src/page/agv/AgvShow.jsx @@ -19,9 +19,9 @@ import { AgvShowTask } from "./show/AgvShowTask"; import CustomerTopToolBar from "../components/EditTopToolBar"; import { useTheme } from '@mui/material/styles'; +import PulseSignal from "../components/PulseSignal"; export const AgvShow = () => { - return ( <> <ShowBase> @@ -49,6 +49,13 @@ <CustomerTopToolBar /> <Box mt={1} mr={1}> <Stack direction='row'> + <Box mt={.8} mr={2}> + <PulseSignal + flag={record.online} + width={10} + negative={!record.online} + /> + </Box> <Typography variant="h5" sx={{ diff --git a/zy-acs-flow/src/page/components/PulseSignal.jsx b/zy-acs-flow/src/page/components/PulseSignal.jsx index 1b98d49..e79c7c2 100644 --- a/zy-acs-flow/src/page/components/PulseSignal.jsx +++ b/zy-acs-flow/src/page/components/PulseSignal.jsx @@ -3,35 +3,48 @@ import { teal } from '@mui/material/colors'; const PulseSignal = (props) => { - const { flag = true, width = 8, ...rest } = props; + const { flag = true, width = 8, negative = false, ...rest } = props; return ( <> - <Box - {...rest} - sx={{ - width: width, - height: width, - borderRadius: '50%', - backgroundColor: flag ? `${teal[400]}` : '#f44336', - display: 'inline-block', - animation: 'pulse 1.2s infinite', - '@keyframes pulse': { - '0%': { - transform: 'scale(1)', - opacity: 1, + {flag ? ( + <Box + {...rest} + sx={{ + width: width, + height: width, + borderRadius: '50%', + backgroundColor: `${teal[400]}`, + display: 'inline-block', + animation: `pulse ${negative ? '2' : '1.2'}s infinite`, + '@keyframes pulse': { + '0%': { + transform: 'scale(1)', + opacity: 1, + }, + '50%': { + transform: 'scale(1.3)', + opacity: 0.7, + }, + '100%': { + transform: 'scale(1)', + opacity: 1, + }, }, - '50%': { - transform: 'scale(1.2)', - opacity: 0.7, - }, - '100%': { - transform: 'scale(1)', - opacity: 1, - }, - }, - }} - /> + }} + /> + ) : ( + <Box + {...rest} + sx={{ + width: width + width / 10, + height: width + width / 10, + borderRadius: '50%', + backgroundColor: '#f44336', + display: 'inline-block', + }} + /> + )} </> ) diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/AgvController.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/AgvController.java index 3b1f858..26d2215 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/AgvController.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/controller/AgvController.java @@ -82,6 +82,7 @@ public R get(@PathVariable("id") Long id) { Agv agv = agvService.getById(id); if (null != agv) { + agv.setOnline(agvService.judgeOnline(agv.getId())); AgvDetail agvDetail = agvDetailService.selectByAgvId(agv.getId()); if (null != agvDetail) { agv.setAgvDetail(agvDetail); diff --git a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Agv.java b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Agv.java index 942bbb9..b2cc14c 100644 --- a/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Agv.java +++ b/zy-acs-manager/src/main/java/com/zy/acs/manager/manager/entity/Agv.java @@ -82,6 +82,9 @@ @TableField(exist = false) private AgvModel agvModelData; + @TableField(exist = false) + private Boolean online = Boolean.FALSE; + public String getAgvSts$(){ AgvStsService service = SpringUtils.getBean(AgvStsService.class); AgvSts agvSts = service.getById(this.agvSts); -- Gitblit v1.9.1