Junjie
2024-03-19 ec2e79e0d510568d51714a7121e4a32c026e6d44
zy-asrs-flow/src/pages/map/components/mapSettings.jsx
@@ -1,5 +1,5 @@
import React, { useState, useRef, useEffect } from 'react';
import { Col, Form, Input, Row, Checkbox, Slider, Select, Drawer, Space, Button, InputNumber, Card } from 'antd';
import { Col, Form, Input, Row, message, Slider, Select, Drawer, Space, Button, InputNumber, Card } from 'antd';
import { FormattedMessage, useIntl, useModel } from '@umijs/max';
import { createStyles } from 'antd-style';
import * as Utils from '../utils'
@@ -99,6 +99,42 @@
        setLastCopiedSprites([]);
        for (let i = 0; i < values.copyCount; i++) {
            const copiedSprite = Utils.copySprite(curSprite);
            // auto-increment-value
            if (values.autoIncrement && values.type) {
                switch (values.type) {
                    case Utils.SENSOR_TYPE.SHELF:
                        if (values.incrementValue === 'row') {
                            if (values.incrementMode === 'descending') {
                                copiedSprite.data.row = curSprite.data.row - i - 1;
                            } else {
                                copiedSprite.data.row = curSprite.data.row + i + 1;
                            }
                        }
                        if (values.incrementValue === 'bay') {
                            if (values.incrementMode === 'descending') {
                                copiedSprite.data.bay = curSprite.data.bay - i - 1;
                            } else {
                                copiedSprite.data.bay = curSprite.data.bay + i + 1;
                            }
                        }
                        if (copiedSprite.data.row && copiedSprite.data.bay) {
                            copiedSprite.data.no = Utils.pureNumStr(copiedSprite.data.row) + '-' + Utils.pureNumStr(copiedSprite.data.bay);
                        }
                        break;
                    case Utils.SENSOR_TYPE.AGV:
                        if (values.incrementValue === 'no') {
                            if (values.incrementMode === 'descending') {
                                copiedSprite.data.no = Number(curSprite.data.no) - i - 1;
                            } else {
                                copiedSprite.data.no = Number(curSprite.data.no) + i + 1;
                            }
                        }
                        break;
                    default:
                        break;
                }
            }
            // graph copy
            switch (values.copyDire) {
                case 'left':
                    copiedSprite.position.x -= (i + 1) * (values.copyGap + copiedSprite.width);
@@ -339,7 +375,7 @@
                                    </Form.Item>
                                    <Form.Item>
                                        <Button
                                            type="dashed"
                                            type="link"
                                            onClick={() => {
                                                if (lastCopiedSprites) {
                                                    lastCopiedSprites.forEach(copiedSprite => {