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/mapCopySettings.jsx | 211 ++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 192 insertions(+), 19 deletions(-) diff --git a/zy-asrs-flow/src/pages/map/components/mapCopySettings.jsx b/zy-asrs-flow/src/pages/map/components/mapCopySettings.jsx index c51b37c..61e2dd2 100644 --- a/zy-asrs-flow/src/pages/map/components/mapCopySettings.jsx +++ b/zy-asrs-flow/src/pages/map/components/mapCopySettings.jsx @@ -1,5 +1,5 @@ import React, { useState, useRef, useEffect } from 'react'; -import { Col, Form, Input, Row, Checkbox, Slider, Select, Drawer, Space, Button, InputNumber, Segmented } from 'antd'; +import { Col, Form, Input, Row, Switch, Slider, message, Drawer, Space, Button, InputNumber, Segmented } from 'antd'; import { FormattedMessage, useIntl, useModel } from '@umijs/max'; import { createStyles } from 'antd-style'; import * as Utils from '../utils' @@ -14,16 +14,43 @@ const { styles } = useStyles(); const { curSprite } = props; const [form] = Form.useForm(); + const [autoIncrement, setAutoIncrement] = useState(false); + const [autoIncrementError, setAutoIncrementError] = useState(null); useEffect(() => { + setAutoIncrement(false); form.resetFields(); if (curSprite && props) { form.setFieldsValue({ ...props.values, - copyGap: 0 }); } }, [form, props]); + + useEffect(() => { + if (autoIncrement === true && curSprite) { + switch (curSprite.data?.type) { + case Utils.SENSOR_TYPE.SHELF: + if (!curSprite.data?.row || !curSprite.data?.bay) { + setAutoIncrementError(intl.formatMessage({ id: 'map.settings.sub.copy.warn.config.shelf', defaultMessage: '璇峰厛璁剧疆璐ф灦鍙傛暟锛�' })); + } else { + setAutoIncrementError(null); + } + break; + case Utils.SENSOR_TYPE.POINT: + if (!curSprite.data?.vertical || !curSprite.data?.horizontal) { + setAutoIncrementError(intl.formatMessage({ id: 'map.settings.sub.copy.warn.config.point', defaultMessage: '璇峰厛璁剧疆瀹氫綅鐐瑰弬鏁帮紒' })); + } else { + setAutoIncrementError(null); + } + break; + default: + break; + } + } else { + setAutoIncrementError(null); + } + }, [autoIncrement]) const handleCancel = () => { props.onClose(); @@ -34,11 +61,12 @@ } const handleFinish = (values) => { - props.submit({ ...values, ...props.values }) - } - - const formValuesChange = () => { - + props.submit({ + ...values + , ...props.values + , autoIncrement: autoIncrement + , type: curSprite?.data?.type + }) } return ( @@ -64,8 +92,10 @@ > <Form form={form} - onFieldsChange={formValuesChange} initialValues={{ + copyGap: 0, + autoIncrement: false, + incrementMode: 'ascending', }} onFinish={handleFinish} autoComplete="off" @@ -113,31 +143,122 @@ </Form.Item> </Col> - {curSprite?.data?.type === Utils.SENSOR_TYPE.AGV && ( + {/* switch auto increment */} + <Col span={24}> + <Form.Item + label={intl.formatMessage({ id: 'map.settings.sub.copy.auto-increment', defaultMessage: '鑷闀�' })} + labelCol={{ span: 8 }} + help={autoIncrementError} + validateStatus={autoIncrementError ? "error" : null} + > + <Switch value={autoIncrement} onChange={setAutoIncrement} /> + </Form.Item> + </Col> + + {autoIncrement && curSprite?.data?.type === Utils.SENSOR_TYPE.SHUTTLE && ( <> <Col span={24}> <Form.Item - name='id' - label={intl.formatMessage({ id: 'map.settings.sub.copy.id', defaultMessage: '搴忓彿' })} + name='incrementValue' + label={intl.formatMessage({ id: 'map.settings.sub.copy.increment-value', defaultMessage: '鑷闀垮��' })} + labelCol={{ span: 8 }} + initialValue='no' + > + <Segmented + block + options={[ + { + label: intl.formatMessage({ id: 'map.settings.no', defaultMessage: '缂栧彿' }), + value: 'no' + }, + ]} + onChange={(value) => { + }} + /> + </Form.Item> + </Col> + <Col span={24}> + <Form.Item + name='incrementMode' + label={intl.formatMessage({ id: 'map.settings.sub.copy.increment.mode', defaultMessage: '澧為暱鏂瑰紡' })} labelCol={{ span: 8 }} > - <InputNumber - style={{ - width: '60%', + <Segmented + block + options={[ + { + label: intl.formatMessage({ id: 'map.settings.sub.copy.ascend', defaultMessage: '鍗囧簭' }), + value: 'ascending' + }, + { + label: intl.formatMessage({ id: 'map.settings.sub.copy.descend', defaultMessage: '闄嶅簭' }), + value: 'descending' + }, + ]} + onChange={(value) => { }} - min={0} /> </Form.Item> </Col> </> )} - {curSprite?.data?.type === Utils.SENSOR_TYPE.SHELF && ( + {autoIncrement && curSprite?.data?.type === Utils.SENSOR_TYPE.AGV && ( <> <Col span={24}> <Form.Item - label={intl.formatMessage({ id: 'map.settings.sub.copy.shelf.auto-increment-value', defaultMessage: '鑷闀垮��' })} + name='incrementValue' + label={intl.formatMessage({ id: 'map.settings.sub.copy.increment-value', defaultMessage: '鑷闀垮��' })} labelCol={{ span: 8 }} + initialValue='no' + > + <Segmented + block + options={[ + { + label: intl.formatMessage({ id: 'map.settings.no', defaultMessage: '缂栧彿' }), + value: 'no' + }, + ]} + onChange={(value) => { + }} + /> + </Form.Item> + </Col> + <Col span={24}> + <Form.Item + name='incrementMode' + label={intl.formatMessage({ id: 'map.settings.sub.copy.increment.mode', defaultMessage: '澧為暱鏂瑰紡' })} + labelCol={{ span: 8 }} + > + <Segmented + block + options={[ + { + label: intl.formatMessage({ id: 'map.settings.sub.copy.ascend', defaultMessage: '鍗囧簭' }), + value: 'ascending' + }, + { + label: intl.formatMessage({ id: 'map.settings.sub.copy.descend', defaultMessage: '闄嶅簭' }), + value: 'descending' + }, + ]} + onChange={(value) => { + }} + /> + </Form.Item> + </Col> + </> + )} + + {autoIncrement && curSprite?.data?.type === Utils.SENSOR_TYPE.SHELF && ( + <> + <Col span={24}> + <Form.Item + name='incrementValue' + label={intl.formatMessage({ id: 'map.settings.sub.copy.increment-value', defaultMessage: '鑷闀垮��' })} + labelCol={{ span: 8 }} + initialValue='row' > <Segmented block @@ -158,6 +279,7 @@ </Col> <Col span={24}> <Form.Item + name='incrementMode' label={intl.formatMessage({ id: 'map.settings.sub.copy.increment.mode', defaultMessage: '澧為暱鏂瑰紡' })} labelCol={{ span: 8 }} > @@ -166,11 +288,11 @@ options={[ { label: intl.formatMessage({ id: 'map.settings.sub.copy.ascend', defaultMessage: '鍗囧簭' }), - value: 'Ascending' + value: 'ascending' }, { label: intl.formatMessage({ id: 'map.settings.sub.copy.descend', defaultMessage: '闄嶅簭' }), - value: 'Descending' + value: 'descending' }, ]} onChange={(value) => { @@ -181,6 +303,57 @@ </> )} + {autoIncrement && curSprite?.data?.type === Utils.SENSOR_TYPE.POINT && ( + <> + <Col span={24}> + <Form.Item + name='incrementValue' + label={intl.formatMessage({ id: 'map.settings.sub.copy.increment-value', defaultMessage: '鑷闀垮��' })} + labelCol={{ span: 8 }} + initialValue='vertical' + > + <Segmented + block + options={[ + { + label: intl.formatMessage({ id: 'map.settings.point.vertical', defaultMessage: '绾靛悜' }), + value: 'vertical' + }, + { + label: intl.formatMessage({ id: 'map.settings.point.horizontal', defaultMessage: '妯悜' }), + value: 'horizontal' + }, + ]} + onChange={(value) => { + }} + /> + </Form.Item> + </Col> + <Col span={24}> + <Form.Item + name='incrementMode' + label={intl.formatMessage({ id: 'map.settings.sub.copy.increment.mode', defaultMessage: '澧為暱鏂瑰紡' })} + labelCol={{ span: 8 }} + > + <Segmented + block + options={[ + { + label: intl.formatMessage({ id: 'map.settings.sub.copy.ascend', defaultMessage: '鍗囧簭' }), + value: 'ascending' + }, + { + label: intl.formatMessage({ id: 'map.settings.sub.copy.descend', defaultMessage: '闄嶅簭' }), + value: 'descending' + }, + ]} + onChange={(value) => { + }} + /> + </Form.Item> + </Col> + </> + )} </Row> </Form> </Drawer> -- Gitblit v1.9.1