From 1e465fcab874dd5bf60fdff4151a3742b5a755b0 Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期四, 17 十月 2024 14:21:12 +0800 Subject: [PATCH] # --- zy-acs-flow/src/map/insight/agv/index.jsx | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 55 insertions(+), 4 deletions(-) diff --git a/zy-acs-flow/src/map/insight/agv/index.jsx b/zy-acs-flow/src/map/insight/agv/index.jsx index 5d678c0..916f6ff 100644 --- a/zy-acs-flow/src/map/insight/agv/index.jsx +++ b/zy-acs-flow/src/map/insight/agv/index.jsx @@ -1,11 +1,62 @@ - +import React, { useState, useRef, useEffect } from 'react'; +import { useTranslate } from "react-admin"; +import { Box, Typography, Tabs, Tab, Stack, useTheme, Divider } from '@mui/material'; +import AgvMain from './AgvMain'; +import JsonShow from '../../JsonShow'; const AgvInsight = (props) => { + const { sprite, setTitle } = props; + const theme = useTheme(); + const themeMode = theme.palette.mode; + const translate = useTranslate(); + + const [activeTab, setActiveTab] = useState(0); + const [curAgvNo, setCurAgvNo] = useState(null); + + const handleTabChange = (event, newValue) => { + setActiveTab(newValue); + }; + + useEffect(() => { + if (curAgvNo) { + setTitle(translate('page.map.devices.agv') + ' - ' + curAgvNo); + } + + return () => { + setTitle(null); + } + }, [curAgvNo]) return ( - <> - <h1>Agv</h1> - </> + <Box sx={{ height: '100%', display: 'flex', flexDirection: 'column' }}> + <Tabs + value={activeTab} + onChange={handleTabChange} + centered + sx={{ mb: 0 }} + > + <Tab label={translate('page.map.insight.title')} /> + <Tab label={'JSON'} /> + </Tabs> + + <Divider /> + + <Box flex={1} pt={2}> + {activeTab === 0 && ( + <AgvMain + data={sprite?.data} + curAgvNo={curAgvNo} + setCurAgvNo={setCurAgvNo} + /> + )} + {activeTab === 1 && ( + <JsonShow + data={sprite?.data} + height={550} + /> + )} + </Box> + </Box> ) } -- Gitblit v1.9.1