import React, { useState, useRef, useEffect } from 'react';
|
import { Col, Form, Input, Row, Checkbox, Slider, Select, Drawer, Space, Button, InputNumber, Switch } from 'antd';
|
import { FormattedMessage, useIntl, useModel } from '@umijs/max';
|
import { createStyles } from 'antd-style';
|
import * as Utils from '../utils'
|
import * as PIXI from 'pixi.js';
|
|
const useStyles = createStyles(({ token, css }) => {
|
|
})
|
|
const MapCopySettings = (props) => {
|
const intl = useIntl();
|
const { styles } = useStyles();
|
const { curSprite } = props;
|
const [form] = Form.useForm();
|
|
useEffect(() => {
|
form.resetFields();
|
if (curSprite && props) {
|
form.setFieldsValue({
|
...props.values,
|
copyGap: 0
|
});
|
}
|
}, [form, props]);
|
|
const handleCancel = () => {
|
props.onClose();
|
}
|
|
const handleOk = () => {
|
form.submit();
|
}
|
|
const handleFinish = (values) => {
|
props.submit({ ...values, ...props.values })
|
}
|
|
const formValuesChange = () => {
|
|
}
|
|
return (
|
<>
|
<Drawer
|
title={intl.formatMessage({ id: 'map.settings.sub.copy.rule', defaultMessage: '复制规则' })}
|
width={350}
|
closable={false}
|
open={props.open}
|
getContainer={props.refCurr}
|
rootStyle={{ position: "absolute" }}
|
onClose={handleCancel}
|
extra={
|
<Space>
|
<Button onClick={handleCancel}>
|
<FormattedMessage id='common.cancel' defaultMessage='取消' />
|
</Button>
|
<Button onClick={handleOk} type="primary">
|
<FormattedMessage id='common.submit' defaultMessage='确定' />
|
</Button>
|
</Space>
|
}
|
>
|
<Form
|
form={form}
|
onFieldsChange={formValuesChange}
|
initialValues={{
|
}}
|
onFinish={handleFinish}
|
autoComplete="off"
|
style={{
|
maxWidth: 300,
|
}}
|
size='default'
|
variant='filled'
|
labelWrap
|
disabled={false}
|
layout='horizontal'
|
>
|
<Row gutter={[16, 0]}>
|
|
<Col span={24}>
|
<Form.Item
|
label={intl.formatMessage({ id: 'map.settings.sub.copy.dire', defaultMessage: '方向' })}
|
labelCol={{ span: 8 }}
|
>
|
<span>{props?.values?.copyDire}</span>
|
</Form.Item>
|
</Col>
|
|
<Col span={24}>
|
<Form.Item
|
label={intl.formatMessage({ id: 'map.settings.sub.copy.count', defaultMessage: '数量' })}
|
labelCol={{ span: 8 }}
|
>
|
<span>{props?.values?.copyCount}</span>
|
</Form.Item>
|
</Col>
|
|
<Col span={24}>
|
<Form.Item
|
name='copyGap'
|
label={intl.formatMessage({ id: 'map.settings.sub.copy.gap', defaultMessage: '间距' })}
|
labelCol={{ span: 8 }}
|
>
|
<InputNumber
|
style={{
|
width: '60%',
|
}}
|
// min={0}
|
/>
|
</Form.Item>
|
</Col>
|
|
{curSprite?.data?.type === 'AGV' && (
|
<Col span={24}>
|
<Form.Item
|
name='id'
|
label={intl.formatMessage({ id: 'map.settings.sub.copy.id', defaultMessage: '序号' })}
|
labelCol={{ span: 8 }}
|
>
|
<InputNumber
|
style={{
|
width: '60%',
|
}}
|
min={0}
|
/>
|
</Form.Item>
|
</Col>
|
)}
|
|
</Row>
|
</Form>
|
</Drawer>
|
</>
|
)
|
}
|
|
export default MapCopySettings;
|