From bd2a6a5afb1368c09e1e2f6135241bad7a99a416 Mon Sep 17 00:00:00 2001
From: vincentlu <t1341870251@gmail.com>
Date: 星期三, 17 十二月 2025 08:23:09 +0800
Subject: [PATCH] #

---
 zy-acs-flow/src/map/areaSettings/AreaAdvancedTab.jsx |   48 ++++++++++++++++++++----
 zy-acs-flow/src/map/areaSettings/index.jsx           |   19 +++++++--
 2 files changed, 54 insertions(+), 13 deletions(-)

diff --git a/zy-acs-flow/src/map/areaSettings/AreaAdvancedTab.jsx b/zy-acs-flow/src/map/areaSettings/AreaAdvancedTab.jsx
index cbb8f51..bf7f0b1 100644
--- a/zy-acs-flow/src/map/areaSettings/AreaAdvancedTab.jsx
+++ b/zy-acs-flow/src/map/areaSettings/AreaAdvancedTab.jsx
@@ -9,13 +9,23 @@
     setMaxQty,
     speedLimit,
     setSpeedLimit,
-    shapeData,
-    setShapeData,
+    startPoint,
+    endPoint,
     priority,
     setPriority,
     onSave,
 }) => {
     const translate = useTranslate();
+    const formatCoord = (value) => {
+        if (value === null || value === undefined || value === '') {
+            return '';
+        }
+        const num = Number(value);
+        if (Number.isNaN(num)) {
+            return String(value);
+        }
+        return num.toFixed(2);
+    };
 
     return (
         <Box component="form" onSubmit={(e) => { e.preventDefault(); onSave(); }}>
@@ -46,14 +56,36 @@
                         onChange={(e) => setSpeedLimit(e.target.value)}
                     />
                 </Grid>
-                <Grid item xs={12}>
+                <Grid item xs={12} sm={6}>
                     <TextField
-                        label={translate('page.map.area.shape', { _: '褰㈢姸鏁版嵁' })}
+                        label={translate('page.map.area.startX', { _: '璧风偣 X' })}
                         fullWidth
-                        multiline
-                        minRows={3}
-                        value={shapeData}
-                        onChange={(e) => setShapeData(e.target.value)}
+                        value={formatCoord(startPoint?.x)}
+                        InputProps={{ readOnly: true }}
+                    />
+                </Grid>
+                <Grid item xs={12} sm={6}>
+                    <TextField
+                        label={translate('page.map.area.startY', { _: '璧风偣 Y' })}
+                        fullWidth
+                        value={formatCoord(startPoint?.y)}
+                        InputProps={{ readOnly: true }}
+                    />
+                </Grid>
+                <Grid item xs={12} sm={6}>
+                    <TextField
+                        label={translate('page.map.area.endX', { _: '缁堢偣 X' })}
+                        fullWidth
+                        value={formatCoord(endPoint?.x)}
+                        InputProps={{ readOnly: true }}
+                    />
+                </Grid>
+                <Grid item xs={12} sm={6}>
+                    <TextField
+                        label={translate('page.map.area.endY', { _: '缁堢偣 Y' })}
+                        fullWidth
+                        value={formatCoord(endPoint?.y)}
+                        InputProps={{ readOnly: true }}
                     />
                 </Grid>
                 <Grid item xs={12}>
diff --git a/zy-acs-flow/src/map/areaSettings/index.jsx b/zy-acs-flow/src/map/areaSettings/index.jsx
index 38af2ea..c1f8d9b 100644
--- a/zy-acs-flow/src/map/areaSettings/index.jsx
+++ b/zy-acs-flow/src/map/areaSettings/index.jsx
@@ -63,7 +63,8 @@
     const [code, setCode] = useState('');
     const [maxCount, setMaxCount] = useState('');
     const [speedLimit, setSpeedLimit] = useState('');
-    const [memo, setMemo] = useState('');
+    const [startPoint, setStartPoint] = useState({ x: '', y: '' });
+    const [endPoint, setEndPoint] = useState({ x: '', y: '' });
     const [priority, setPriority] = useState('');
     const [agvOptions, setAgvOptions] = useState([]);
     const [initialBasic, setInitialBasic] = useState({ name: '', agvIds: [] });
@@ -84,7 +85,8 @@
             setCode('');
             setMaxCount('');
             setSpeedLimit('');
-            setMemo('');
+            setStartPoint({ x: '', y: '' });
+            setEndPoint({ x: '', y: '' });
             setPriority('');
             setAgvList([]);
             setCodeList([]);
@@ -107,7 +109,14 @@
             setCode(curAreaInfo.code || '');
             setMaxCount(curAreaInfo.maxCount ?? '');
             setSpeedLimit(curAreaInfo.speedLimit ?? '');
-            setMemo(curAreaInfo.memo || '');
+            setStartPoint({
+                x: curAreaInfo.start?.x ?? '',
+                y: curAreaInfo.start?.y ?? '',
+            });
+            setEndPoint({
+                x: curAreaInfo.end?.x ?? '',
+                y: curAreaInfo.end?.y ?? '',
+            });
             setPriority(curAreaInfo.priority ?? '');
 
             const selected = curAreaInfo.agvList || [];
@@ -243,8 +252,8 @@
                                                 setMaxQty={setMaxCount}
                                                 speedLimit={speedLimit}
                                                 setSpeedLimit={setSpeedLimit}
-                                                shapeData={memo}
-                                                setShapeData={setMemo}
+                                                startPoint={startPoint}
+                                                endPoint={endPoint}
                                                 priority={priority}
                                                 setPriority={setPriority}
                                                 onSave={handleSaveAdvanced}

--
Gitblit v1.9.1