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/mapSettings.jsx |  268 ++++++++++++++++++++++++++++++++---------------------
 1 files changed, 160 insertions(+), 108 deletions(-)

diff --git a/zy-asrs-flow/src/pages/map/components/mapSettings.jsx b/zy-asrs-flow/src/pages/map/components/mapSettings.jsx
index c260a46..c88ac58 100644
--- a/zy-asrs-flow/src/pages/map/components/mapSettings.jsx
+++ b/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,70 @@
         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.POINT:
+                        if (values.incrementValue === 'vertical') {
+                            if (values.incrementMode === 'descending') {
+                                copiedSprite.data.vertical = curSprite.data.vertical - i - 1;
+                            } else {
+                                copiedSprite.data.vertical = curSprite.data.vertical + i + 1;
+                            }
+                        }
+                        if (values.incrementValue === 'horizontal') {
+                            if (values.incrementMode === 'descending') {
+                                copiedSprite.data.horizontal = curSprite.data.horizontal - i - 1;
+                            } else {
+                                copiedSprite.data.horizontal = curSprite.data.horizontal + i + 1;
+                            }
+                        }
+                        if (copiedSprite.data.vertical && copiedSprite.data.horizontal) {
+                            copiedSprite.data.no = Utils.pureNumStr(copiedSprite.data.vertical) + '-' + Utils.pureNumStr(copiedSprite.data.horizontal);
+                        }
+                        break;
+                    case Utils.SENSOR_TYPE.SHUTTLE:
+                        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;
+                    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);
@@ -116,7 +180,7 @@
                     break;
             }
             Utils.getMapContainer().addChild(copiedSprite);
-            Utils.beSettings(copiedSprite, props.setSpriteBySettings, props.setDidClickSprite);
+            Utils.beSettings(copiedSprite, props.setSpriteBySettings);
 
             setLastCopiedSprites(prevArr => [...prevArr, copiedSprite]);
         }
@@ -128,8 +192,6 @@
             <Form
                 form={form}
                 onFieldsChange={formValuesChange}
-                initialValues={{
-                }}
                 onFinish={handleFinish}
                 onFinishFailed={onFinishFailed}
                 autoComplete="off"
@@ -147,8 +209,13 @@
                 wrapperCol={{
                     span: 20,
                 }}
+                initialValues={{
+                    scale: 1,
+                    rotation: 1
+                }}
             >
                 <Row gutter={[24, 16]}>
+                    <Col span={24} />
 
                     <Col span={24}>
                         <Form.Item
@@ -227,8 +294,7 @@
                             name="scale"
                         >
                             <InputNumber
-                                changeOnWheel
-                                min={0.1} max={10} defaultValue={1} step={0.1}
+                                min={0.1} max={10} step={0.1}
                                 rules={[
                                     {
                                         required: true,
@@ -267,8 +333,7 @@
                             name="rotation"
                         >
                             <InputNumber
-                                changeOnWheel
-                                min={0} max={360} defaultValue={0}
+                                min={0} max={360}
                                 rules={[
                                     {
                                         required: true,
@@ -281,112 +346,99 @@
                     {/* copy */}
                     <Col span={24}>
                         <Row gutter={0}>
-                            <Col span={20}>
-                                <Form.Item
-                                    label={intl.formatMessage({ id: 'map.settings.copy', defaultMessage: '澶嶅埗' })}
-                                    labelCol={{ span: 4 }}
-                                >
-                                    <Space.Compact>
-                                        <Form.Item
-                                            noStyle
-                                            name="copyDire"
-                                        >
-                                            <Select
-                                                style={{ width: 100 }}
-                                                options={[
-                                                    { value: 'left', label: intl.formatMessage({ id: 'map.settings.left', defaultMessage: '宸�' }) },
-                                                    { value: 'right', label: intl.formatMessage({ id: 'map.settings.right', defaultMessage: '鍙�' }) },
-                                                    { value: 'top', label: intl.formatMessage({ id: 'map.settings.top', defaultMessage: '涓�' }) },
-                                                    { value: 'bottom', label: intl.formatMessage({ id: 'map.settings.bottom', defaultMessage: '涓�' }) },
-                                                ]}
-                                            />
-                                        </Form.Item>
-                                        <Form.Item
-                                            name='copyCount'
-                                            noStyle
-                                            rules={[
-                                                {
-                                                    required: true,
-                                                },
-                                            ]}
-                                        >
-                                            <InputNumber
-                                                addonBefore={<Space.Compact></Space.Compact>}
-                                                style={{
-                                                    width: '50%',
-                                                }}
-                                                min={1}
-                                                step={1}
-                                            />
-                                        </Form.Item>
-                                        <Form.Item>
-                                            <Button
-                                                onClick={() => {
-                                                    setChildrenDrawer(true);
-                                                }}
-                                            >
-                                                <FormattedMessage id='common.execute' defaultMessage='鎵ц' />
-                                            </Button>
-                                            <MapCopySettings
-                                                open={childrenDrawer}
-                                                refCurr={props.refCurr}
-                                                curSprite={props.curSprite}
-                                                values={form.getFieldsValue()}
-                                                submit={handleOnCopy}
-                                                onClose={() => {
-                                                    setChildrenDrawer(false)
-                                                }}
-                                            />
-                                        </Form.Item>
-
-                                    </Space.Compact>
-                                </Form.Item>
-                            </Col>
-                        </Row>
-                        <Row gutter={0}>
-                            <Col offset={16} span={8}>
-                                <Form.Item>
-                                    <Button
-                                        type="dashed"
-                                        onClick={() => {
-                                            if (lastCopiedSprites) {
-                                                lastCopiedSprites.forEach(copiedSprite => {
-                                                    Utils.getMapContainer().removeChild(copiedSprite);
-                                                })
-                                                setLastCopiedSprites([]);
-                                            }
-                                        }}
+                            <Form.Item
+                                label={intl.formatMessage({ id: 'map.settings.copy', defaultMessage: '澶嶅埗' })}
+                            >
+                                <Space.Compact>
+                                    <Form.Item
+                                        noStyle
+                                        name="copyDire"
                                     >
-                                        <FormattedMessage id='map.settings.sub.copy.undo.last.copies' defaultMessage='鎾ゅ洖澶嶅埗' />
-                                    </Button>
-                                </Form.Item>
-                            </Col>
+                                        <Select
+                                            style={{ width: 100 }}
+                                            options={[
+                                                { value: 'left', label: intl.formatMessage({ id: 'map.settings.left', defaultMessage: '宸�' }) },
+                                                { value: 'right', label: intl.formatMessage({ id: 'map.settings.right', defaultMessage: '鍙�' }) },
+                                                { value: 'top', label: intl.formatMessage({ id: 'map.settings.top', defaultMessage: '涓�' }) },
+                                                { value: 'bottom', label: intl.formatMessage({ id: 'map.settings.bottom', defaultMessage: '涓�' }) },
+                                            ]}
+                                        />
+                                    </Form.Item>
+                                    <Form.Item
+                                        name='copyCount'
+                                        noStyle
+                                        rules={[
+                                            {
+                                                required: true,
+                                            },
+                                        ]}
+                                    >
+                                        <InputNumber
+                                            addonBefore={<Space.Compact></Space.Compact>}
+                                            style={{
+                                                width: '50%',
+                                            }}
+                                            min={1}
+                                            step={1}
+                                        />
+                                    </Form.Item>
+                                    <Form.Item>
+                                        <Button
+                                            onClick={() => {
+                                                setChildrenDrawer(true);
+                                            }}
+                                        >
+                                            <FormattedMessage id='common.execute' defaultMessage='鎵ц' />
+                                        </Button>
+                                        <MapCopySettings
+                                            open={childrenDrawer}
+                                            refCurr={props.refCurr}
+                                            curSprite={props.curSprite}
+                                            values={form.getFieldsValue()}
+                                            submit={handleOnCopy}
+                                            onClose={() => {
+                                                setChildrenDrawer(false)
+                                            }}
+                                        />
+                                    </Form.Item>
+                                    <Form.Item>
+                                        <Button
+                                            type="link"
+                                            onClick={() => {
+                                                if (lastCopiedSprites) {
+                                                    lastCopiedSprites.forEach(copiedSprite => {
+                                                        Utils.getMapContainer().removeChild(copiedSprite);
+                                                    })
+                                                    setLastCopiedSprites([]);
+                                                }
+                                            }}
+                                        >
+                                            <FormattedMessage id='map.settings.sub.copy.reverse' defaultMessage='鎾ら攢' />
+                                        </Button>
+                                    </Form.Item>
+                                </Space.Compact>
+                            </Form.Item>
                         </Row>
                     </Col>
 
                     {/* more */}
                     <Col span={24}>
-                        <Row gutter={24}>
-                            <Col span={18}>
-                                <Form.Item
-                                    label={intl.formatMessage({ id: 'map.settings.more', defaultMessage: '鏇村' })}
-                                    labelCol={{ span: 4 }}
-                                >
-                                    <Button
-                                        type="dashed"
-                                        danger
-                                        onClick={() => {
-                                            Utils.getMapContainer().removeChild(curSprite);
-                                            props.setSpriteBySettings(null);
-                                            Utils.removeSelectedEffect();
-                                            form.resetFields();
-                                        }}
-                                    >
-                                        <FormattedMessage id='map.settings.delete' defaultMessage='鍒犻櫎' />
-                                    </Button>
-                                </Form.Item>
-                            </Col>
-                        </Row>
+                        <Form.Item
+                            label={intl.formatMessage({ id: 'map.settings.more', defaultMessage: '鏇村' })}
+                        >
+                            <Button
+                                type="dashed"
+                                danger
+                                onClick={() => {
+                                    Utils.getMapContainer().removeChild(curSprite);
+                                    props.setSpriteBySettings(null);
+                                    Utils.removeSelectedEffect();
+                                    form.resetFields();
+                                }}
+                            >
+                                <FormattedMessage id='map.settings.delete' defaultMessage='鍒犻櫎' />
+                            </Button>
+                        </Form.Item>
                     </Col>
 
                 </Row>

--
Gitblit v1.9.1