From 3fa7cdec6ce44f07a0dc7e1910511ead606990f3 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期四, 11 九月 2025 08:19:53 +0800
Subject: [PATCH] 1
---
zy-acs-flow/src/page/agv/show/AgvShowDetail.jsx | 75 ++++++++++++++++++++++---------------
1 files changed, 45 insertions(+), 30 deletions(-)
diff --git a/zy-acs-flow/src/page/agv/show/AgvShowDetail.jsx b/zy-acs-flow/src/page/agv/show/AgvShowDetail.jsx
index 5c4c26a..6df36d8 100644
--- a/zy-acs-flow/src/page/agv/show/AgvShowDetail.jsx
+++ b/zy-acs-flow/src/page/agv/show/AgvShowDetail.jsx
@@ -25,23 +25,28 @@
const GRID_CONTAINER_MAX_WIDTH = '100%';
export const AgvShowDetail = (props) => {
- const { agvId } = props;
+ const { agvId, setOnline } = props;
const [record, setRecord] = useState(null);
const resource = useResourceContext();
useEffect(() => {
const http = async (agvId) => {
- const res = await request.get(resource + '/' + agvId);
- const { code, msg, data } = res.data;
- if (code === 200) {
- setRecord(data);
- } else {
- setRecord(null);
+ if (agvId) {
+ const res = await request.get(resource + '/' + agvId);
+ const { code, msg, data } = res.data;
+ if (code === 200) {
+ setOnline(data.online);
+ setRecord(data);
+ } else {
+ setRecord(null);
+ }
}
}
- if (agvId) {
+ const intervalId = setInterval(() => {
http(agvId);
- }
+ }, 1000);
+ http(agvId);
+ return () => clearInterval(intervalId);
}, [agvId]);
if (!record) {
@@ -73,30 +78,40 @@
<>
<Box m={2}>
<AgvMainDetail record={record} />
- <Divider sx={{ m: 2 }} />
+ <Divider sx={{ mt: 2, mb: 2 }} />
<AgvMoreDetail record={record} />
- <Divider sx={{ m: 2 }} />
+ <Divider sx={{ mt: 2, mb: 2 }} />
<AgvModelDetail record={record} />
</Box>
</>
)
}
-const DetailTitle = ({ title }) => {
+const DetailTitle = ({ title, ...rest }) => {
const translate = useTranslate();
return (
<Typography
color="textSecondary"
variant="caption"
+ {...rest}
>
{translate(title)}
</Typography>
)
}
-const DetailValue = ({ value }) => {
+const DetailValue = ({ value, fontBold = false }) => {
return (
- <Typography variant="body2">
+ <Typography
+ variant="body2"
+ color={fontBold ? 'textSecondary' : 'textPrimary'}
+ width='80%'
+ sx={{
+ wordWrap: 'break-word',
+ whiteSpace: 'normal',
+ fontWeight: fontBold && 'bold',
+ }}
+ >
{value}
</Typography>
)
@@ -104,8 +119,21 @@
const AgvMainDetail = ({ record }) => {
+ const translate = useTranslate();
return (
<Grid container spacing={1} sx={{ maxWidth: GRID_CONTAINER_MAX_WIDTH }}>
+ <Grid item xs={ITEM_COL}>
+ <DetailTitle title='common.field.status' />
+ <DetailValue fontBold value={record.agvDetail.statusDesc} />
+ </Grid>
+ <Grid item xs={ITEM_COL}>
+ <DetailTitle title='table.field.agvDetail.pos' />
+ <DetailValue value={record.agvDetail.pos === 1 ? translate('common.enums.true') : translate('common.enums.false')} />
+ </Grid >
+ <Grid item xs={ITEM_COL}>
+ <DetailTitle title='table.field.agvDetail.code' />
+ <DetailValue value={record.agvDetail.code$} />
+ </Grid>
<Grid item xs={ITEM_COL}>
<DetailTitle title='table.field.agv.ip' />
<DetailValue value={record.ip} />
@@ -118,14 +146,7 @@
const translate = useTranslate();
return (
<Grid container spacing={1} sx={{ maxWidth: GRID_CONTAINER_MAX_WIDTH }}>
- <Grid item xs={ITEM_COL}>
- <DetailTitle title='table.field.agvDetail.pos' />
- <DetailValue value={record.agvDetail.pos === 1 ? translate('common.enums.true') : translate('common.enums.false')} />
- </Grid >
- <Grid item xs={ITEM_COL}>
- <DetailTitle title='table.field.agvDetail.code' />
- <DetailValue value={record.agvDetail.code$} />
- </Grid>
+
<Grid item xs={ITEM_COL}>
<DetailTitle title='table.field.agvDetail.agvAngle' />
<DetailValue value={record.agvDetail.agvAngle} />
@@ -168,22 +189,16 @@
<DetailTitle title='table.field.agvDetail.workDistance' />
<DetailValue value={record.agvDetail.workDistance} />
</Grid>
- <Grid item xs={ITEM_COL}>
- <DetailTitle title='common.field.status' />
- <DetailValue value={record.agvDetail.statusDesc} />
- </Grid>
</Grid >
)
}
const AgvModelDetail = ({ record }) => {
const translate = useTranslate();
- console.log(record);
-
return (
<Grid container spacing={1} sx={{ maxWidth: GRID_CONTAINER_MAX_WIDTH }}>
<Grid item xs={ITEM_COL}>
<DetailTitle title='table.field.agvModel.name' />
- <DetailValue value={record.agvModelData.name} />
+ <DetailValue fontBold value={record.agvModelData.name} />
</Grid>
<Grid item xs={ITEM_COL}>
<DetailTitle title='table.field.agvModel.length' />
@@ -227,7 +242,7 @@
</Grid>
<Grid item xs={ITEM_COL}>
<DetailTitle title='table.field.agvModel.allDirection' />
- <DetailValue value={record.agvModelData.allDirection} />
+ <DetailValue value={record.agvModelData.allDirection === 1 ? translate('common.enums.true') : translate('common.enums.false')} />
</Grid>
<Grid item xs={ITEM_COL}>
<DetailTitle title='table.field.agvModel.protocol' />
--
Gitblit v1.9.1