From 9d0acfb65c80c4948c305ca01338f894b87346a0 Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期一, 08 四月 2024 09:44:37 +0800
Subject: [PATCH] Merge branch 'Four-Way-Rack' of http://47.97.1.152:5880/r/zy-asrs-master into Four-Way-Rack
---
zy-asrs-flow/src/pages/map/components/device.jsx | 246 +++++++++++++++++++++++++++---------------------
1 files changed, 138 insertions(+), 108 deletions(-)
diff --git a/zy-asrs-flow/src/pages/map/components/device.jsx b/zy-asrs-flow/src/pages/map/components/device.jsx
index 21c5f77..0c1df85 100644
--- a/zy-asrs-flow/src/pages/map/components/device.jsx
+++ b/zy-asrs-flow/src/pages/map/components/device.jsx
@@ -3,7 +3,7 @@
import { FormattedMessage, useIntl, useModel } from '@umijs/max';
import * as PIXI from 'pixi.js';
import { createStyles } from 'antd-style';
-import './index.css'
+import * as Utils from '../utils'
const useStyles = createStyles(({ token, css }) => {
let dark = token.colorBgBase === '#000';
@@ -28,34 +28,43 @@
transition: all 0.3s ease !important;
}
`,
- color: dark ? '#303030' : '#f0f0f0'
+ color: dark ? '#303030' : '#f0f0f0',
+ title: {
+ color: dark ? '#f0f0f0' : '#303030'
+ }
};
});
+import shuttle from '/public/img/map/shuttle.svg'
import agv from '/public/img/map/agv.svg'
+import shelf from '/public/img/map/shelf.png'
+import point from '/public/img/map/point.svg'
const Device = (props) => {
+ const intl = useIntl();
const { styles } = useStyles();
const [dragging, setDragging] = useState(false);
const [dragSprite, setDragSprite] = useState(null);
+ const [dragSpriteType, setDragSpriteType] = useState(null);
+
+ const onDragStart = (e, type) => {
+ setDragging(true);
+ setDragSpriteType(type);
+ const sprite = Utils.generateSprite(type);
+ setDragSprite(sprite);
+ };
useEffect(() => {
const handleMouseMove = (e) => {
if (dragging) {
- props.onDrop(dragSprite, e.clientX, e.clientY);
+ props.onDrop(dragSprite, dragSpriteType, e.clientX, e.clientY);
setDragging(false);
+ setDragSpriteType(null);
}
};
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);
- setDragSprite(sprite);
- };
return (
<>
@@ -68,110 +77,131 @@
rootStyle={{ position: "absolute" }}
mask={false}
width={378}
+ style={{
+ opacity: .8
+ }}
extra={
<Space>
<Button onClick={() => props.onCancel()}><FormattedMessage id='common.cancel' defaultMessage='鍙栨秷' /></Button>
</Space>
}
>
- <Card className={styles.mapCard}>
- <Row className={styles.mapRow}>
- <Col className={styles.mapCol} span={8} >
- <Image
- src={agv}
- width='50px'
- preview={false}
- draggable="true"
- onDragStart={onDragStart}
- />
- <div>AGV</div>
- </Col>
- <Col className={styles.mapCol} span={8} >
- <Image
- src={agv}
- width='50px'
- preview={false}
- draggable="true"
- onDragStart={onDragStart}
- />
- <div>AGV</div>
- </Col>
- <Col className={styles.mapCol} span={8} >
- <Image
- src={agv}
- width='50px'
- preview={false}
- draggable="true"
- onDragStart={onDragStart}
- />
- <div>AGV</div>
- </Col>
- </Row>
- <Row className={styles.mapRow}>
- <Col className={styles.mapCol} span={8} >
- <Image
- src={agv}
- width='50px'
- preview={false}
- draggable="true"
- onDragStart={onDragStart}
- />
- <div>AGV</div>
- </Col>
- <Col className={styles.mapCol} span={8} >
- <Image
- src={agv}
- width='50px'
- preview={false}
- draggable="true"
- onDragStart={onDragStart}
- />
- <div>AGV</div>
- </Col>
- <Col className={styles.mapCol} span={8} >
- <Image
- src={agv}
- width='50px'
- preview={false}
- draggable="true"
- onDragStart={onDragStart}
- />
- <div>AGV</div>
- </Col>
- </Row>
- <Row className={styles.mapRow}>
- <Col className={styles.mapCol} span={8} >
- <Image
- src={agv}
- width='50px'
- preview={false}
- draggable="true"
- onDragStart={onDragStart}
- />
- <div>AGV</div>
- </Col>
- <Col className={styles.mapCol} span={8} >
- <Image
- src={agv}
- width='50px'
- preview={false}
- draggable="true"
- onDragStart={onDragStart}
- />
- <div>AGV</div>
- </Col>
- <Col className={styles.mapCol} span={8} >
- <Image
- src={agv}
- width='50px'
- preview={false}
- draggable="true"
- onDragStart={onDragStart}
- />
- <div>AGV</div>
- </Col>
- </Row>
- </Card>
+ <Row className={styles.mapRow}>
+ <Col className={styles.mapCol} span={8} >
+ <Image
+ src={shuttle}
+ width='50px'
+ preview={false}
+ draggable="true"
+ onDragStart={(e) => onDragStart(e, Utils.SENSOR_TYPE.SHUTTLE)}
+ />
+ <div className={styles.title}>
+ <FormattedMessage id='map.sensor.type.shuttle' defaultMessage='绌挎杞�' />
+ </div>
+ </Col>
+ <Col className={styles.mapCol} span={8} >
+ <Image
+ src={shelf}
+ width='35px'
+ preview={false}
+ draggable="true"
+ onDragStart={(e) => onDragStart(e, Utils.SENSOR_TYPE.SHELF)}
+ />
+ <div className={styles.title}>
+ <FormattedMessage id='map.sensor.type.shelf' defaultMessage='璐ф灦' />
+ </div>
+ </Col>
+ <Col className={styles.mapCol} span={8}>
+ <Image
+ src={point}
+ style={{
+ }}
+ width='50px'
+ preview={false}
+ draggable="true"
+ onDragStart={(e) => onDragStart(e, Utils.SENSOR_TYPE.POINT)}
+ />
+ <div className={styles.title}>
+ <FormattedMessage id='map.sensor.type.point' defaultMessage='瀹氫綅鐐�' />
+ </div>
+ </Col>
+ </Row>
+ <Row className={styles.mapRow}>
+ <Col className={styles.mapCol} span={8} >
+ <Image
+ src={agv}
+ width='50px'
+ preview={false}
+ draggable="true"
+ onDragStart={(e) => onDragStart(e, Utils.SENSOR_TYPE.AGV)}
+ />
+ <div className={styles.title}>
+ <FormattedMessage id='map.sensor.type.agv' defaultMessage='鏃犱汉灏忚溅' />
+ </div>
+ </Col>
+ <Col className={styles.mapCol} span={8} >
+ <Image
+ src={shelf}
+ width='35px'
+ preview={false}
+ draggable="true"
+ onDragStart={(e) => onDragStart(e, Utils.SENSOR_TYPE.SHELF)}
+ />
+ <div className={styles.title}>
+ <FormattedMessage id='map.sensor.type.shelf' defaultMessage='璐ф灦' />
+ </div>
+ </Col>
+ <Col className={styles.mapCol} span={8} >
+ <Image
+ src={agv}
+ width='50px'
+ preview={false}
+ draggable="true"
+ onDragStart={(e) => onDragStart(e, Utils.SENSOR_TYPE.AGV)}
+ />
+ <div className={styles.title}>
+ <FormattedMessage id='map.sensor.type.agv' defaultMessage='鏃犱汉灏忚溅' />
+ </div>
+ </Col>
+ </Row>
+ <Row className={styles.mapRow}>
+ <Col className={styles.mapCol} span={8} >
+ <Image
+ src={agv}
+ width='50px'
+ preview={false}
+ draggable="true"
+ onDragStart={(e) => onDragStart(e, Utils.SENSOR_TYPE.AGV)}
+ />
+ <div className={styles.title}>
+ <FormattedMessage id='map.sensor.type.agv' defaultMessage='鏃犱汉灏忚溅' />
+ </div>
+ </Col>
+ <Col className={styles.mapCol} span={8} >
+ <Image
+ src={shelf}
+ width='35px'
+ preview={false}
+ draggable="true"
+ onDragStart={(e) => onDragStart(e, Utils.SENSOR_TYPE.SHELF)}
+ />
+ <div className={styles.title}>
+ <FormattedMessage id='map.sensor.type.shelf' defaultMessage='璐ф灦' />
+ </div>
+ </Col>
+ <Col className={styles.mapCol} span={8} >
+ <Image
+ src={agv}
+ width='50px'
+ preview={false}
+ draggable="true"
+ onDragStart={(e) => onDragStart(e, Utils.SENSOR_TYPE.AGV)}
+ />
+ <div className={styles.title}>
+ <FormattedMessage id='map.sensor.type.agv' defaultMessage='鏃犱汉灏忚溅' />
+ </div>
+ </Col>
+ </Row>
</Drawer>
</>
)
--
Gitblit v1.9.1