From 233ff9e9e82c67ac33695b479fd31df6ffb77b22 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期一, 02 十二月 2024 15:44:30 +0800
Subject: [PATCH] #
---
zy-acs-flow/src/map/insight/agv/index.jsx | 39 +++++++++++++++++++++++++++------------
1 files changed, 27 insertions(+), 12 deletions(-)
diff --git a/zy-acs-flow/src/map/insight/agv/index.jsx b/zy-acs-flow/src/map/insight/agv/index.jsx
index bfe531e..8cd484e 100644
--- a/zy-acs-flow/src/map/insight/agv/index.jsx
+++ b/zy-acs-flow/src/map/insight/agv/index.jsx
@@ -1,38 +1,53 @@
import React, { useState, useRef, useEffect } from 'react';
import { useTranslate } from "react-admin";
import { Box, Typography, Tabs, Tab, Stack, useTheme, Divider } from '@mui/material';
+import { CUSTOM_PAGES_DATA_INTERVAL } from '@/config/setting';
import AgvMain from './AgvMain';
import AgvControl from './AgvControl';
import JsonShow from '../../JsonShow';
+import { getAgvInfo } from '../../http';
const AgvInsight = (props) => {
const { sprite, setTitle } = props;
- const theme = useTheme();
- const themeMode = theme.palette.mode;
const translate = useTranslate();
+ const theme = useTheme();
const [activeTab, setActiveTab] = useState(0);
const [curAgvNo, setCurAgvNo] = useState(null);
- const [jsonData, setJsonData] = useState(null);
+ const [curAgvInfo, setCurAgvInfo] = useState(null);
- const handleTabChange = (event, newValue) => {
- setActiveTab(newValue);
- };
+ const fetchAgvInfo = (agvNo) => {
+ setTitle(translate('page.map.devices.agv') + ' - ' + agvNo);
+ setCurAgvNo(agvNo);
+ getAgvInfo(agvNo, (response) => {
+ setCurAgvInfo(response);
+ });
+ }
useEffect(() => {
+ let intervalId;
if (sprite) {
const agvNo = sprite.data.no;
if (agvNo) {
- setCurAgvNo(agvNo);
- setTitle(translate('page.map.devices.agv') + ' - ' + agvNo);
+ fetchAgvInfo(agvNo);
+ intervalId = setInterval(() => {
+ fetchAgvInfo(agvNo);
+ }, CUSTOM_PAGES_DATA_INTERVAL);
}
}
return () => {
setTitle(null);
- setJsonData(null);
+ setCurAgvInfo(null);
+ if (intervalId) {
+ clearInterval(intervalId)
+ }
}
}, [sprite])
+
+ const handleTabChange = (event, newValue) => {
+ setActiveTab(newValue);
+ };
return (
<Box sx={{ height: '100%', display: 'flex', flexDirection: 'column' }}>
@@ -53,8 +68,8 @@
{activeTab === 0 && (
<AgvMain
curAgvNo={curAgvNo}
- setCurAgvNo={setCurAgvNo}
- setJsonData={setJsonData}
+ curAgvInfo={curAgvInfo}
+ fetchAgvInfo={fetchAgvInfo}
/>
)}
{activeTab === 1 && (
@@ -64,7 +79,7 @@
)}
{activeTab === 2 && (
<JsonShow
- data={jsonData || sprite?.data}
+ data={curAgvInfo || sprite?.data}
height={550}
/>
)}
--
Gitblit v1.9.1