From f4d50b49b828b9722d6e6cd63e7bdacf5cf05bea Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期三, 09 十月 2024 10:45:49 +0800
Subject: [PATCH] #
---
zy-acs-flow/src/page/agv/AgvCard.jsx | 51 +++++++++++++++++++++++++++++++++++++--------------
1 files changed, 37 insertions(+), 14 deletions(-)
diff --git a/zy-acs-flow/src/page/agv/AgvCard.jsx b/zy-acs-flow/src/page/agv/AgvCard.jsx
index 53e4a00..04e7e75 100644
--- a/zy-acs-flow/src/page/agv/AgvCard.jsx
+++ b/zy-acs-flow/src/page/agv/AgvCard.jsx
@@ -1,11 +1,8 @@
import * as React from 'react';
import { useState } from 'react';
import { Paper, Typography, Box, AvatarGroup, Avatar } from '@mui/material';
-import ContactsIcon from '@mui/icons-material/AccountCircle';
-import DealIcon from '@mui/icons-material/MonetizationOn';
import {
useCreatePath,
- SelectField,
useRecordContext,
Link,
useResourceContext,
@@ -13,7 +10,7 @@
} from 'react-admin';
import PulseSignal from '../components/PulseSignal';
import { AgvAvatar } from './AgvAvatar';
-import { red } from '@mui/material/colors';
+import { red, blue, blueGrey } from '@mui/material/colors';
export const AgvCard = (props) => {
const resource = useResourceContext();
@@ -21,7 +18,7 @@
const createPath = useCreatePath();
const record = useRecordContext(props);
if (!record) return null;
- console.log(record);
+
return (
<Link
to={createPath({
@@ -40,12 +37,26 @@
flexDirection: 'column',
justifyContent: 'space-between',
padding: '1em',
+ ...(!record.online && {
+ animation: 'cardBorderPulse 2s infinite',
+ '@keyframes cardBorderPulse': {
+ '0%': {
+ boxShadow: '0 0 2px 1px rgba(255, 0, 0, 0.1)',
+ },
+ '50%': {
+ boxShadow: '0 0 3px 2px rgba(255, 0, 0, 0.3)',
+ },
+ '100%': {
+ boxShadow: '0 0 2px 1px rgba(255, 0, 0, 0.1)',
+ },
+ },
+ })
}}
elevation={elevation}
>
<Box display="flex" flexDirection="row" alignItems="center" justifyContent='space-between'>
<PulseSignal
- flag={true}
+ flag={record.online}
/>
<Typography variant="caption" >
vol:
@@ -61,7 +72,12 @@
<Box display="flex" flexDirection="column" alignItems="center">
<AgvAvatar />
<Box textAlign="center" marginTop={2}>
- <Typography variant="subtitle2">
+ <Typography
+ variant="subtitle2"
+ color="textSecondary"
+ component="div"
+ sx={{ fontWeight: 'bold' }}
+ >
{record.agvStatus}
</Typography>
<Typography variant="overline" sx={{ opacity: .7 }}>
@@ -108,14 +124,21 @@
},
}}
>
- {data.map((record) => (
- <Avatar
- key={record.id}
- title={`${record.seqNum}`}
- >
- {record.seqNum}
+ {data.length > 0 ? (
+ data.map((record) => (
+ <Avatar
+ key={record.id}
+ title={`${record.seqNum}`}
+ sx={{ bgcolor: blueGrey[500] }}
+ >
+ {record.seqNum.slice(0, 4)}
+ </Avatar>
+ ))
+ ) : (
+ <Avatar title="No tasks" >
+ N/A
</Avatar>
- ))}
+ )}
</AvatarGroup>
);
}
--
Gitblit v1.9.1