126 lines
3.3 KiB
JavaScript
126 lines
3.3 KiB
JavaScript
|
|
import React,{useEffect,useState,useMemo} from 'react';
|
|||
|
|
import { Form, Button, Input, Row, Col, InputNumber , Switch,message,Image,Modal,Radio } from 'antd';
|
|||
|
|
import { formItemLayout, btnItemLayout } from '../../../../components/crud/FormLayoutProps';
|
|||
|
|
import apiurl from '../../../../service/apiurl';
|
|||
|
|
import NormalSelect from '../../../../components/Form/NormalSelect';
|
|||
|
|
import { httppost2 } from '../../../../utils/request';
|
|||
|
|
|
|||
|
|
import moment from 'moment';
|
|||
|
|
|
|||
|
|
const jg = [
|
|||
|
|
{label:'0.5',value:'0.5'},
|
|||
|
|
{label:'1',value:'1'},
|
|||
|
|
{label:'3',value:'3'},
|
|||
|
|
{label:'6',value:'6'},
|
|||
|
|
{label:'12',value:'12'},
|
|||
|
|
{label:'24',value:'24'},
|
|||
|
|
]
|
|||
|
|
|
|||
|
|
const ModalForm = ({ mode, record,onEdit,onSave,onSimilarSave }) => {
|
|||
|
|
|
|||
|
|
console.log("record",record);
|
|||
|
|
const [form] = Form.useForm();
|
|||
|
|
const [staCodeList, setStaCodeList] = useState([])
|
|||
|
|
const [checked, setChecked] = useState(true)
|
|||
|
|
console.log(checked);
|
|||
|
|
|
|||
|
|
const onFinish = (values) => {
|
|||
|
|
const params = {
|
|||
|
|
...values,
|
|||
|
|
status:checked?'0':'1'
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
console.log(params);
|
|||
|
|
if (mode === 'edit') {
|
|||
|
|
params.id = record.id;
|
|||
|
|
onEdit(apiurl.fxdd_xyt.hsyb.hsybjs.zdgdyb.edit,params)
|
|||
|
|
}
|
|||
|
|
if (mode === 'save') {
|
|||
|
|
onEdit(apiurl.fxdd_xyt.hsyb.hsybjs.zdgdyb.save,params)
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
useEffect(()=>{
|
|||
|
|
if(mode==='edit'){
|
|||
|
|
setChecked(record.status==='0'?true:false)
|
|||
|
|
}
|
|||
|
|
},[])
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
return (
|
|||
|
|
<>
|
|||
|
|
<Form
|
|||
|
|
form={form}
|
|||
|
|
{...formItemLayout}
|
|||
|
|
onFinish={onFinish}
|
|||
|
|
initialValues={record}
|
|||
|
|
>
|
|||
|
|
<Form.Item
|
|||
|
|
label="预报任务名称"
|
|||
|
|
name="name"
|
|||
|
|
labelCol={{ span: 6 }}
|
|||
|
|
wrapperCol={{ span: 16 }}
|
|||
|
|
rules={[{ required: true }]}
|
|||
|
|
>
|
|||
|
|
<Input disabled={mode==='view'} style={{width:'100%'}} allowClear />
|
|||
|
|
</Form.Item>
|
|||
|
|
<Form.Item
|
|||
|
|
label="预见期(小时):"
|
|||
|
|
name="forecastPeriod"
|
|||
|
|
labelCol={{ span: 6 }}
|
|||
|
|
wrapperCol={{ span: 16 }}
|
|||
|
|
rules={[{ required: true }]}
|
|||
|
|
>
|
|||
|
|
<InputNumber min={1} max={24} disabled={mode==='view'} style={{width:'100%'}} allowClear />
|
|||
|
|
</Form.Item>
|
|||
|
|
<Form.Item
|
|||
|
|
label="预热期(天):"
|
|||
|
|
name="forecastWarm"
|
|||
|
|
labelCol={{ span: 6 }}
|
|||
|
|
wrapperCol={{ span: 16 }}
|
|||
|
|
rules={[{ required: true }]}
|
|||
|
|
>
|
|||
|
|
<InputNumber min={1} max={7} disabled={mode==='view'} style={{width:'100%'}} allowClear />
|
|||
|
|
</Form.Item>
|
|||
|
|
<Form.Item
|
|||
|
|
label="间隔(小时)"
|
|||
|
|
name="timeInterval"
|
|||
|
|
labelCol={{ span: 6 }}
|
|||
|
|
wrapperCol={{ span: 16 }}
|
|||
|
|
rules={[{ required: true }]}
|
|||
|
|
>
|
|||
|
|
<NormalSelect options={jg} style={{ width: '100%' }} />
|
|||
|
|
</Form.Item>
|
|||
|
|
<Form.Item
|
|||
|
|
label="状态"
|
|||
|
|
name="status"
|
|||
|
|
>
|
|||
|
|
<Switch
|
|||
|
|
size='default'
|
|||
|
|
checkedChildren='启用'
|
|||
|
|
unCheckedChildren='禁用'
|
|||
|
|
onChange={e => setChecked(e)}
|
|||
|
|
checked={checked}
|
|||
|
|
/>
|
|||
|
|
</Form.Item>
|
|||
|
|
{
|
|||
|
|
mode==='view'?null:(
|
|||
|
|
<>
|
|||
|
|
<Form.Item {...btnItemLayout}>
|
|||
|
|
<Button type="primary" htmlType="submit">
|
|||
|
|
{mode === 'save' ? '保存' :
|
|||
|
|
mode === "similarSave" ? "保存" :
|
|||
|
|
'修改'}
|
|||
|
|
</Button>
|
|||
|
|
</Form.Item>
|
|||
|
|
</>
|
|||
|
|
)
|
|||
|
|
}
|
|||
|
|
</Form>
|
|||
|
|
</>
|
|||
|
|
);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
export default ModalForm;
|