From 21b80e79792b800eb3e409340d31be1354878a24 Mon Sep 17 00:00:00 2001
From: zhang <zc857179121@qq.com>
Date: 星期二, 17 六月 2025 12:03:34 +0800
Subject: [PATCH] 1
---
zy-acs-flow/src/map/header/MapSearch.jsx | 41 +++++++++++++++++++++++------------------
1 files changed, 23 insertions(+), 18 deletions(-)
diff --git a/zy-acs-flow/src/map/header/MapSearch.jsx b/zy-acs-flow/src/map/header/MapSearch.jsx
index 3a866e5..6d473b1 100644
--- a/zy-acs-flow/src/map/header/MapSearch.jsx
+++ b/zy-acs-flow/src/map/header/MapSearch.jsx
@@ -1,4 +1,3 @@
-// MapSearch.js
import React, { useState, useEffect } from 'react';
import {
Select,
@@ -19,10 +18,10 @@
const deviceTypeSelectOptionsFn = (translate) => {
const deviceTypes = [
{ key: DEVICE_TYPE.SHELF, id: 'page.map.devices.shelf' },
- { key: DEVICE_TYPE.STATION, id: 'page.map.devices.station' },
{ key: DEVICE_TYPE.AGV, id: 'page.map.devices.agv' },
+ { key: DEVICE_TYPE.STATION, id: 'page.map.devices.station' },
{ key: DEVICE_TYPE.POINT, id: 'page.map.devices.point' },
- // 娣诲姞鍏朵粬璁惧绫诲瀷
+ // ... other devices
];
return deviceTypes.map(({ key, id }) => ({
@@ -35,9 +34,10 @@
const {
mode,
setMode,
+ dataFetched,
curZone,
+ curSprite,
setCurSprite,
- setSpriteSettings,
} = props;
const theme = useTheme();
@@ -59,11 +59,16 @@
};
useEffect(() => {
- if (!Tool.getMapContainer()) return;
- setTimeout(() => {
+ if (dataFetched) {
resetSearch();
- }, 200);
- }, [curDeviceType, curZone]);
+ }
+ }, [curDeviceType, dataFetched, curZone]);
+
+ useEffect(() => {
+ if (!curSprite) {
+ resetSearch();
+ }
+ }, [curSprite]);
useEffect(() => {
if (!Tool.getMapContainer()) return;
@@ -84,19 +89,17 @@
Tool.focusSprite(selectSprite);
}
switch (mode) {
- case MAP_MODE.OBSERVER_MODE:
- setCurSprite(selectSprite);
- break;
+ // case MAP_MODE.OBSERVER_MODE:
+ // case MAP_MODE.SETTINGS_MODE:
+ // break;
case MAP_MODE.MOVABLE_MODE:
setMode(MAP_MODE.SETTINGS_MODE);
setTimeout(() => {
- setSpriteSettings(selectSprite);
+ setCurSprite(selectSprite);
}, 200);
break;
- case MAP_MODE.SETTINGS_MODE:
- setSpriteSettings(selectSprite);
- break;
default:
+ setCurSprite(selectSprite);
break;
}
};
@@ -139,10 +142,10 @@
size="small"
options={filterDeviceList}
getOptionLabel={(option) => option.value}
- renderOption={(props, option) => {
- const { key, ...otherProps } = props;
+ renderOption={(optionProps, option) => {
+ const { key, ...otherProps } = optionProps;
return (
- <li key={Number(key)} {...otherProps}>
+ <li key={option.uuid} {...otherProps}>
<Stack direction="row" justifyContent="space-between" width="100%">
<Typography variant="body1" fontWeight="bold">
{option.label}
@@ -171,6 +174,7 @@
onClick={() => {
setInputValue('');
setSelectedOption(null);
+ setCurSprite(null);
}}
>
<CloseIcon fontSize="small" />
@@ -195,6 +199,7 @@
onInputChange={(event, newInputValue) => {
setInputValue(newInputValue);
}}
+ disableClearable
/>
</Stack>
);
--
Gitblit v1.9.1