From 764834e18ac2dbe928a4eb255c8eed89f631340c Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期四, 04 九月 2025 16:15:02 +0800
Subject: [PATCH] 1
---
zy-acs-flow/src/map/header/MoreOperate.jsx | 60 ++++++++++++++++++++++++++++++++++++++++++++++--------------
1 files changed, 46 insertions(+), 14 deletions(-)
diff --git a/zy-acs-flow/src/map/header/MoreOperate.jsx b/zy-acs-flow/src/map/header/MoreOperate.jsx
index 49c7d9c..c210132 100644
--- a/zy-acs-flow/src/map/header/MoreOperate.jsx
+++ b/zy-acs-flow/src/map/header/MoreOperate.jsx
@@ -10,9 +10,11 @@
ListItemText,
CircularProgress,
} from '@mui/material';
-import { handleLocateAllAgv } from "../http";
+import { locateAllAgv, startPatrolBatch, cancelPatrolBatch } from "../http";
import GpsFixedIcon from '@mui/icons-material/GpsFixed';
import { VERIFY_PASSWORD } from '@/config/setting';
+import TimelineIcon from '@mui/icons-material/Timeline';
+import CloseIcon from '@mui/icons-material/Close';
const MoreOperate = ({ }) => {
const translate = useTranslate();
@@ -37,13 +39,25 @@
}
}
- const handleLocateAll = async () => {
- setLoading(true)
+ const debounced = async (fn) => {
+ setLoading(true);
try {
- await handleLocateAllAgv();
+ await fn();
} finally {
setLoading(false);
}
+ }
+
+ const handleLocateAll = () => {
+ debounced(locateAllAgv);
+ }
+
+ const handleStartPatrolBatch = () => {
+ debounced(startPatrolBatch);
+ }
+
+ const handleCancelPatrolBatch = () => {
+ debounced(cancelPatrolBatch);
}
return (
@@ -51,7 +65,6 @@
<Select
value={translate('page.map.action.moreOperation')}
onChange={(event) => {
- console.log(event.target.value);
}}
renderValue={() => (
<Box sx={{ display: 'flex', alignItems: 'center' }}>
@@ -86,17 +99,36 @@
</ListItemIcon>
<ListItemText>{translate('page.map.action.oneClickLocate')}</ListItemText>
</MenuItem>
+ <MenuItem
+ onClick={() => {
+ verifyPassword(handleStartPatrolBatch);
+ }}
+ disabled={loading}
+ >
+ <ListItemIcon>
+ {loading
+ ? <CircularProgress size={20} />
+ : <TimelineIcon fontSize="small" />
+ }
+ </ListItemIcon>
+ <ListItemText>{translate('page.map.action.oneClickPatrol')}</ListItemText>
+ </MenuItem>
+ <MenuItem
+ onClick={() => {
+ verifyPassword(handleCancelPatrolBatch);
+ }}
+ disabled={loading}
+ >
+ <ListItemIcon>
+ {loading
+ ? <CircularProgress size={20} />
+ : <CloseIcon fontSize="small" />
+ }
+ </ListItemIcon>
+ <ListItemText>{translate('page.map.action.cancelPatrol')}</ListItemText>
+ </MenuItem>
</Select>
- {/* <Button
- variant="contained"
- color="primary"
- onClick={handleToggle}
- sx={{ mr: 2 }}
- >
- 閲嶆柊瀹氫綅
- </Button> */}
</>
-
);
}
--
Gitblit v1.9.1