From 0773d66c559f2d648b62ed8f7db80c7ffc47ce1c Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期六, 02 三月 2024 15:39:31 +0800
Subject: [PATCH] #

---
 zy-asrs-flow/src/pages/map/components/edit.jsx |   28 +++++++++++++++++++++++++++-
 1 files changed, 27 insertions(+), 1 deletions(-)

diff --git a/zy-asrs-flow/src/pages/map/components/edit.jsx b/zy-asrs-flow/src/pages/map/components/edit.jsx
index 2345e13..3a3600f 100644
--- a/zy-asrs-flow/src/pages/map/components/edit.jsx
+++ b/zy-asrs-flow/src/pages/map/components/edit.jsx
@@ -1,10 +1,34 @@
 import React, { useState, useRef, useEffect } from 'react';
 import { Col, Form, Modal, Row, Checkbox, Image, Tree, Drawer, Space, Button, Card } from 'antd';
 import { FormattedMessage, useIntl, useModel } from '@umijs/max';
+import * as PIXI from 'pixi.js';
 
 import agv from '/public/img/map/agv.svg'
 
 const Edit = (props) => {
+    const [dragging, setDragging] = useState(false);
+    const [dragSprite, setDragSprite] = useState(null);
+    const { mapContainer } = props;
+
+    useEffect(() => {
+        const handleMouseMove = (e) => {
+            if (dragging) {
+                props.onDrop(dragSprite, e.clientX, e.clientY);
+                setDragging(false);
+            }
+        };
+        window.addEventListener('mousemove', handleMouseMove);
+        return () => window.removeEventListener('mousemove', handleMouseMove);
+    }, [dragging, props.onDrop, props.onCancel]);
+
+    const onDragStart = (e) => {
+        setDragging(true)
+        props.onCancel();
+        const sprite = PIXI.Sprite.from(agv);
+        sprite.anchor.set(0.5);
+        setDragSprite(sprite);
+    };
+
     return (
         <>
             <Drawer
@@ -23,10 +47,12 @@
                 }
             >
                 <Card>
-                    <Image 
+                    <Image
                         src={agv}
                         width='50px'
                         preview={false}
+                        draggable="true"
+                        onDragStart={onDragStart}
                     />
                 </Card>
             </Drawer>

--
Gitblit v1.9.1