130 lines
3.4 KiB
JavaScript
130 lines
3.4 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 userId = localStorage.getItem("userId");
|
||
const userName = localStorage.getItem("userName");
|
||
|
||
const params = {
|
||
...values,
|
||
status:checked?'0':'1',
|
||
userId:userId+'_'+userName
|
||
}
|
||
|
||
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;
|