luxiaotao1123
2024-04-08 9d0acfb65c80c4948c305ca01338f894b87346a0
zy-asrs-flow/src/pages/map/components/configSettings.jsx
@@ -18,11 +18,8 @@
        form.resetFields();
        if (curSprite) {
            form.setFieldsValue({
                // shelf
                row: curSprite?.data?.row,
                bay: curSprite?.data?.bay,
                shelfNo: curSprite?.data?.shelfNo,
                shelfType: Utils.SHELF_TYPE.STORE,
                ...curSprite.data
            })
        }
    }, [props, form]);
@@ -37,11 +34,11 @@
                            const bay = form.getFieldValue('bay')
                            if (value && bay) {
                                form.setFieldsValue({
                                    shelfNo: Utils.pureNumStr(value) + '-' + Utils.pureNumStr(bay)
                                    no: Utils.pureNumStr(value) + '-' + Utils.pureNumStr(bay)
                                });
                            } else {
                                form.setFieldsValue({
                                    shelfNo: ''
                                    no: ''
                                });
                            }
                            break;
@@ -49,11 +46,35 @@
                            const row = form.getFieldValue('row')
                            if (value && row) {
                                form.setFieldsValue({
                                    shelfNo: Utils.pureNumStr(row) + '-' + Utils.pureNumStr(value)
                                    no: Utils.pureNumStr(row) + '-' + Utils.pureNumStr(value)
                                });
                            } else {
                                form.setFieldsValue({
                                    shelfNo: ''
                                    no: ''
                                });
                            }
                            break;
                        case 'vertical':
                            const horizontal = form.getFieldValue('horizontal')
                            if (value && horizontal) {
                                form.setFieldsValue({
                                    no: Utils.pureNumStr(value) + '-' + Utils.pureNumStr(horizontal)
                                });
                            } else {
                                form.setFieldsValue({
                                    no: ''
                                });
                            }
                            break;
                        case 'horizontal':
                            const vertical = form.getFieldValue('vertical')
                            if (value && vertical) {
                                form.setFieldsValue({
                                    no: Utils.pureNumStr(vertical) + '-' + Utils.pureNumStr(value)
                                });
                            } else {
                                form.setFieldsValue({
                                    no: ''
                                });
                            }
                            break;
@@ -74,17 +95,8 @@
        // execute where the form was finished
        const confirmSettings = () => {
            if (curSprite && curSprite?.data?.type) {
                switch (curSprite.data.type) {
                    case Utils.SENSOR_TYPE.SHELF:
                        curSprite.data.shelfNo = values.shelfNo;
                        curSprite.data.row = values.row;
                        curSprite.data.bay = values.bay;
                        break;
                    case Utils.SENSOR_TYPE.AGV:
                        break;
                    default:
                        break;
                }
                curSprite.data = { ...curSprite.data, ...values };
                Utils.showSheflType(curSprite);
            }
            message.success(intl.formatMessage({ id: 'common.success', defaultMessage: '操作成功' }));
        }
@@ -111,10 +123,10 @@
                disabled={false}
                layout='horizontal'
                labelCol={{
                    span: 4,
                    span: 5,
                }}
                wrapperCol={{
                    span: 20,
                    span: 19,
                }}
            >
                <br />
@@ -125,7 +137,7 @@
                    <span>{curSprite?.data?.type}</span>
                </Form.Item>
                <Form.Item
                    label={intl.formatMessage({ id: 'map.settings.uuid', defaultMessage: '编号' })}
                    label={intl.formatMessage({ id: 'map.settings.uuid', defaultMessage: '图号' })}
                >
                    <span>{curSprite?.data?.uuid}</span>
                </Form.Item>
@@ -136,46 +148,138 @@
                    </>
                )}
                {curSprite?.data?.type === Utils.SENSOR_TYPE.SHUTTLE && (
                    <>
                    </>
                )}
                {curSprite?.data?.type === Utils.SENSOR_TYPE.SHELF && (
                    <>
                        <Form.Item
                            name='row'
                            label={intl.formatMessage({ id: 'map.settings.shelf.row', defaultMessage: '排' })}
                            label={intl.formatMessage({ id: 'map.settings.shelf.location', defaultMessage: '库位' })}
                        >
                            <Space.Compact>
                                <Form.Item
                                    name='row'
                                    noStyle
                                    rules={[
                                        {
                                            required: false,
                                        },
                                    ]}
                                >
                                    <InputNumber
                                        addonBefore={<Space.Compact><FormattedMessage id='map.settings.shelf.row' defaultMessage='排' /></Space.Compact>}
                                        style={{
                                            width: '50%',
                                        }}
                                    />
                                </Form.Item>
                                <Form.Item
                                    name='bay'
                                    noStyle
                                    rules={[
                                        {
                                            required: false,
                                        },
                                    ]}
                                >
                                    <InputNumber
                                        addonBefore={<Space.Compact><FormattedMessage id='map.settings.shelf.bay' defaultMessage='列' /></Space.Compact>}
                                        style={{
                                            width: '50%',
                                        }}
                                    />
                                </Form.Item>
                            </Space.Compact>
                        </Form.Item>
                        <Form.Item
                            name='shelfType'
                            label={intl.formatMessage({ id: 'map.settings.shelf.type', defaultMessage: '类型' })}
                            rules={[
                                {
                                    required: false,
                                    required: true,
                                },
                            ]}
                        >
                            <InputNumber
                                style={{
                                    width: '50%',
                                }}
                            <Select
                                style={{ width: 120 }}
                                options={[
                                    {
                                        label: intl.formatMessage({ id: 'map.settings.shelf.store', defaultMessage: '库位' }),
                                        value: Utils.SHELF_TYPE.STORE
                                    },
                                    {
                                        label: intl.formatMessage({ id: 'map.settings.shelf.track', defaultMessage: '轨道' }),
                                        value: Utils.SHELF_TYPE.TRACK
                                    },
                                    {
                                        label: intl.formatMessage({ id: 'map.settings.shelf.diable', defaultMessage: '禁用' }),
                                        value: Utils.SHELF_TYPE.DISABLE
                                    },
                                ]}
                            />
                        </Form.Item>
                        <Form.Item
                            name='bay'
                            label={intl.formatMessage({ id: 'map.settings.shelf.bay', defaultMessage: '列' })}
                            rules={[
                                {
                                    required: false,
                                },
                            ]}
                            label={intl.formatMessage({ id: 'map.settings.shelf.space', defaultMessage: '间距' })}
                        >
                            <InputNumber
                                style={{
                                    width: '50%',
                                }}
                            />
                            <Space.Compact>
                                <Form.Item
                                    name='top'
                                    noStyle
                                >
                                    <InputNumber
                                        addonBefore={<Space.Compact><FormattedMessage id='map.settings.shelf.top' defaultMessage='上' /></Space.Compact>}
                                        style={{
                                            width: '50%',
                                        }}
                                    />
                                </Form.Item>
                                <Form.Item
                                    name='bottom'
                                    noStyle
                                >
                                    <InputNumber
                                        addonBefore={<Space.Compact><FormattedMessage id='map.settings.shelf.bottom' defaultMessage='下' /></Space.Compact>}
                                        style={{
                                            width: '50%',
                                        }}
                                    />
                                </Form.Item>
                            </Space.Compact>
                        </Form.Item>
                        <Form.Item
                            name='shelfNo'
                            label={intl.formatMessage({ id: 'map.settings.shelf.no', defaultMessage: '货架号' })}
                            rules={[
                                {
                                    required: false,
                                },
                            ]}
                            label={' '}
                        >
                            <Space.Compact>
                                <Form.Item
                                    name='left'
                                    noStyle
                                >
                                    <InputNumber
                                        addonBefore={<Space.Compact><FormattedMessage id='map.settings.shelf.left' defaultMessage='左' /></Space.Compact>}
                                        style={{
                                            width: '50%',
                                        }}
                                    />
                                </Form.Item>
                                <Form.Item
                                    name='right'
                                    noStyle
                                >
                                    <InputNumber
                                        addonBefore={<Space.Compact><FormattedMessage id='map.settings.shelf.right' defaultMessage='右' /></Space.Compact>}
                                        style={{
                                            width: '50%',
                                        }}
                                    />
                                </Form.Item>
                            </Space.Compact>
                        </Form.Item>
                        <Form.Item
                            name='value'
                            label={intl.formatMessage({ id: 'map.settings.shelf.value', defaultMessage: '地图值' })}
                        >
                            <Input
                                style={{
@@ -186,6 +290,57 @@
                    </>
                )}
                {curSprite?.data?.type === Utils.SENSOR_TYPE.POINT && (
                    <>
                        <Form.Item
                            name='vertical'
                            label={intl.formatMessage({ id: 'map.settings.point.vertical', defaultMessage: '纵向' })}
                            rules={[
                                {
                                    required: false,
                                },
                            ]}
                        >
                            <InputNumber
                                style={{
                                    width: '50%',
                                }}
                            />
                        </Form.Item>
                        <Form.Item
                            name='horizontal'
                            label={intl.formatMessage({ id: 'map.settings.point.horizontal', defaultMessage: '横向' })}
                            rules={[
                                {
                                    required: false,
                                },
                            ]}
                        >
                            <InputNumber
                                style={{
                                    width: '50%',
                                }}
                            />
                        </Form.Item>
                    </>
                )}
                <Form.Item
                    name='no'
                    label={intl.formatMessage({ id: 'map.settings.no', defaultMessage: '编号' })}
                    rules={[
                        {
                            required: false,
                        },
                    ]}
                >
                    <Input
                        style={{
                            width: '50%',
                        }}
                    />
                </Form.Item>
                <Form.Item
                    wrapperCol={{
                        offset: 4,