import React, { useEffect, useState } from 'react'; import { Form, Modal, Row, Col, Input, Select } from 'antd'; const CheckModal = props => { const { callBackSubmit = () => {}, visible, onCancel, type, type1, obj } = props; const [form] = Form.useForm(); const { Item } = Form; const { TextArea } = Input; useEffect(() => { form.setFieldsValue({ ...obj }); }, [visible]); if (type1 == 'aa') { return ( <Modal visible={visible} title={<span style={{ fontSize: '18px' }}>查看配置</span>} width="1000px" destroyOnClose maskClosable={false} onCancel={onCancel} footer={[]} > <p style={{ fontSize: '16px', marginLeft: '16px' }}>基本信息</p> <Form form={form} labelCol={{ span: 7 }} style={{ height: '25rem', overflowY: 'scroll' }}> <Row> <Col span={11}> <Item label="名称" name="Name" rules={[ { required: true, message: '请输入名称', }, ]} > <Input placeholder={obj.Name} disabled /> </Item> </Col> {(() => { switch (type) { case '海康1.2': return ( <> <Col span={12}> <span style={{ position: 'absolute', left: '12%', top: '9%', color: 'red', fontSize: '16px', }} > * </span> <Item label="视频厂商" name="VideoManufacturer"> <Input placeholder="海康1.2" disabled /> </Item> </Col> </> ); case '海康NVR': return ( <> <Col span={12}> <span style={{ position: 'absolute', left: '12%', top: '9%', color: 'red', fontSize: '16px', }} > * </span> <Item label="视频厂商" name="VideoManufacturer"> <Input placeholder="海康NVR" disabled /> </Item> </Col> </> ); } })()} <Col span={11}> <Item label="设备编码" name="EquipmentCode" rules={[ { required: true, message: '请输入设备编码', }, ]} > <Input placeholder={obj.EquipmentCode} disabled /> </Item> </Col> <Col span={12}> <Item label="通道ID" name="PassageId" rules={[ { required: true, message: '请输入通道ID', }, ]} > <TextArea placeholder={obj.PassageId} disabled /> </Item> </Col> <Col span={24}> <p style={{ fontSize: '16px', marginLeft: '16px' }}>{type}</p> </Col> {(() => { switch (type) { case '海康1.2': return ( <> <Col span={11}> <Item label="设备序列号" name="EquipmentNumber" rules={[ { required: true, message: '请输入设备序列号', }, ]} > <Input placeholder={obj.EquipmentNumber} disabled /> </Item> </Col> </> ); case '海康NVR': return ( <> <Col span={11}> <Item label="视频流地址" name="HLSPath" rules={[ { required: true, message: '请输入视频流地址', }, ]} > <TextArea placeholder={obj.HLSPath} disabled /> </Item> </Col> </> ); } })()} <Col span={12}> <Item label="刻录机名称" name="RecorderName"> <Input placeholder={obj.RecorderName} disabled /> </Item> </Col> <Col span={11}> <Item label="视频名称" name="VideoName" rules={[ { required: true, message: '请输入视频名称', }, ]} > <Input placeholder={obj.VideoName} disabled /> </Item> </Col> <Col span={12}> <Item label="默认通道ID" name="DefaultPassageId"> <TextArea placeholder={obj.DefaultPassageId} disabled /> </Item> </Col> <Col span={11}> <Item label="视频服务地址" name="VideoPath" rules={[ { required: true, message: '请输入视频名称', }, ]} > <Input placeholder={obj.VideoPath} disabled /> </Item> </Col> </Row> </Form> </Modal> ); } else { return ( <Modal visible={visible} title={<span style={{ fontSize: '18px' }}>查看配置</span>} width="1000px" destroyOnClose maskClosable={false} onCancel={onCancel} footer={[]} > <p style={{ fontSize: '16px', marginLeft: '16px' }}>基本信息</p> <Form form={form} labelCol={{ span: 7 }} style={{ height: '27rem', overflowY: 'scroll' }}> <Row> <Col span={11}> <Item label="名称" name="Name" rules={[ { required: true, message: '请输入名称', }, ]} > <Input placeholder={obj.Name} disabled /> </Item> </Col> {(() => { switch (type) { case '萤石云': return ( <> <Col span={12}> <span style={{ position: 'absolute', left: '12%', top: '9%', color: 'red', fontSize: '16px', }} > * </span> <Item label="视频厂商" name="VideoManufacturer"> <Input placeholder="萤石云" disabled /> </Item> </Col> </> ); case '海康': return ( <> <Col span={12}> <span style={{ position: 'absolute', left: '12%', top: '9%', color: 'red', fontSize: '16px', }} > * </span> <Item label="视频厂商" name="VideoManufacturer"> <Input placeholder="海康" disabled /> </Item> </Col> </> ); } })()} <Col span={11}> <Item label="登录名" name="LoginName" rules={[ { required: true, message: '请输入登录名', }, ]} > <Input placeholder={obj.LoginName} disabled /> </Item> </Col> <Col span={12}> <Item label="登录密码" name="LoginPwd" rules={[ { required: true, message: '请输入登录密码', }, ]} > <Input placeholder={obj.LoginPwd} disabled /> </Item> </Col> <Col span={11}> <Item label="设备编码" name="EquipmentCode" rules={[ { required: true, message: '请输入设备编码', }, ]} > <Input placeholder={obj.EquipmentCode} disabled /> </Item> </Col> <Col span={12}> <Item label="通道ID" name="PassageId" rules={[ { required: true, message: '请输入通道ID', }, ]} > <Input placeholder={obj.PassageId} disabled /> </Item> </Col> <Col span={24}> <p style={{ fontSize: '16px', marginLeft: '16px' }}>{type}</p> </Col> {(() => { switch (type) { case '萤石云': return ( <> <Row> <Col span={11}> <Item label="视频路径" name="VideoPath" rules={[ { required: true, message: '请输入视频路径', }, ]} > <TextArea placeholder={obj.VideoPath} disabled /> </Item> </Col> <Col span={12}> <Item label="HLS路径" name="HLSPath" rules={[ { required: true, message: '请输入HLS路径', }, ]} > <TextArea placeholder={obj.HLSPath} disabled /> </Item> </Col> <Col span={11}> <Item label="设备序列号" name="EquipmentNumber" rules={[ { required: true, message: '请输入设备序列号', }, ]} > <Input placeholder={obj.EquipmentNumber} disabled /> </Item> </Col> <Col span={12}> <Item label="刻录机名称" name="RecorderName"> <Input placeholder={obj.RecorderName} disabled /> </Item> </Col> <Col span={11}> <Item label="默认播放方式" name="PlayModel"> <Select placeholder={obj.PlayModel} disabled /> </Item> </Col> <Col span={12}> <Item label="默认通道ID" name="DefaultPassageId"> <Input placeholder={obj.DefaultPassageId} disabled /> </Item> </Col> </Row> </> ); case '海康': return ( <> <Row> <Col span={11}> <Item label="登录IP" name="LoginIp" rules={[ { required: true, message: '请输入登录ID', }, ]} > <Input placeholder={obj.LoginIp} disabled /> </Item> </Col> <Col span={12}> <Item label="播放零通道" name="PlayZeroChannel" rules={[ { required: true, message: '请输入设备端口', }, ]} > <Select placeholder={obj.PlayZeroChannel} disabled /> </Item> </Col> <Col span={11}> <Item label="设备端口" name="EquipmentPort" rules={[ { required: true, message: '请输入设备端口', }, ]} > <Input placeholder={obj.EquipmentPort} disabled /> </Item> </Col> <Col span={12}> <Item label="视频端口" name="VideoPort" rules={[ { required: true, message: '请输入视频端口', }, ]} > <Input placeholder={obj.VideoPort} disabled /> </Item> </Col> <Col span={11}> <Item label="媒体流端口" name="StreamingMediaPort" rules={[ { required: true, message: '请输入媒体流端口', }, ]} > <Input placeholder={obj.StreamingMediaPort} disabled /> </Item> </Col> <Col span={12}> <Item label="码流类型" name="StreamType" rules={[ { required: true, message: '请选择码流类型', }, ]} > <Select placeholder={obj.StreamType} disabled /> </Item> </Col> <Col span={11}> <Item label="视频名称" name="VideoName" rules={[ { required: true, message: '请输入视频名称', }, ]} > <Input placeholder={obj.VideoName} disabled /> </Item> </Col> <Col span={12}> <Item label="刻录机名称" name="RecorderName"> <Input placeholder={obj.RecorderName} disabled /> </Item> </Col> <Col span={11}> <Item label="默认通道ID" name="DefaultPassageId"> <Input placeholder={obj.DefaultPassageId} disabled /> </Item> </Col> </Row> </> ); } })()} </Row> </Form> </Modal> ); } }; export default CheckModal;