Commit 711926d7 authored by 皮倩雯's avatar 皮倩雯

fix: '表字段字段配置批量删除功能'

parent 48b6cc7e
Pipeline #46896 skipped with stages
......@@ -53,6 +53,10 @@ const AddModal = props => {
const [treeSelectValue, setTreeSelectValue] = useState(undefined);
const [selectTreeData, setSelectTreeData] = useState([]);
const [selectDataFirst, setSelectDataFirst] = useState([]);
const [multiOperate, setMultiOperate] = useState(true); // 是否禁用用户批量操作
const [selectedRowKeys, setSelectedRowKeys] = useState([]); // 已选字段配置数,机构改变时重置
const [keepValue, setKeepValue] = useState([]);
const [deleteUserVisible, setDeleteUserVisible] = useState(false); // 批量删除
const editor = record => {
setIsType('edit');
setIsVisible(true);
......@@ -180,7 +184,12 @@ const AddModal = props => {
return (
<Table
rowSelection={{
type: 'checkbox',
...rowSelection,
}}
columns={columns}
rowKey={record => record.ID}
onRow={record => ({
onDoubleClick: event => {
event.stopPropagation();
......@@ -274,31 +283,58 @@ const AddModal = props => {
if (props.match.params.id) {
setSelectTreeData(props.location.state.keepTreeSelect);
setSelectDataFirst(props.location.state.keepTreeFirst);
setFormObj(treeSelectValue || props.match.params.id);
if (treeSelectValue) {
setFormObj(treeSelectValue.substring(0, treeSelectValue.lastIndexOf('@')));
reloadTableFields({
tableName: treeSelectValue.substring(0, treeSelectValue.lastIndexOf('@')),
}).then(res => {
setTreeLoading(false);
if (res.msg === 'Ok') {
let arr = formateArrDataA(res.data.root, 'group');
let newArr = [];
Object.keys(arr).map((item, index) => {
newArr.push({ type: item, key: index, id: index });
});
setAllData(arr);
let aa = [];
let bb = [];
Object.keys(arr).forEach((item, index) => {
aa.push({ name: item, key: index, ID: index, children: arr[item] });
bb.push(item);
});
setKeepTreeFirst(bb);
setTreeData(aa);
setTableData(newArr);
setSelect(newArr);
}
});
} else {
setFormObj(props.match.params.id);
reloadTableFields({
tableName: props.match.params.id,
}).then(res => {
setTreeLoading(false);
if (res.msg === 'Ok') {
let arr = formateArrDataA(res.data.root, 'group');
let newArr = [];
Object.keys(arr).map((item, index) => {
newArr.push({ type: item, key: index, id: index });
});
setAllData(arr);
let aa = [];
let bb = [];
Object.keys(arr).forEach((item, index) => {
aa.push({ name: item, key: index, ID: index, children: arr[item] });
bb.push(item);
});
setKeepTreeFirst(bb);
setTreeData(aa);
setTableData(newArr);
setSelect(newArr);
}
});
}
setTreeLoading(true);
reloadTableFields({
tableName: treeSelectValue || props.match.params.id,
}).then(res => {
setTreeLoading(false);
if (res.msg === 'Ok') {
let arr = formateArrDataA(res.data.root, 'group');
let newArr = [];
Object.keys(arr).map((item, index) => {
newArr.push({ type: item, key: index, id: index });
});
setAllData(arr);
let aa = [];
let bb = [];
Object.keys(arr).forEach((item, index) => {
aa.push({ name: item, key: index, ID: index, children: arr[item] });
bb.push(item);
});
setKeepTreeFirst(bb);
setTreeData(aa);
setTableData(newArr);
setSelect(newArr);
}
});
getField();
}
}, [flag]);
......@@ -340,8 +376,9 @@ const AddModal = props => {
}
return tempObj;
};
// 删除表字段
// 删除字段配置
const deleteChart = record => {
console.log(selectedRowKeys);
removeFields({ fieldIDs: record.ID }).then(res => {
if (res.msg === 'Ok' || res.msg === '') {
notification.success({
......@@ -359,6 +396,28 @@ const AddModal = props => {
}
});
};
// 批量删除字段配置
const multiDeleteChart = () => {
console.log(selectedRowKeys.toString());
removeFields({ fieldIDs: selectedRowKeys.toString() }).then(res => {
setDeleteUserVisible(false);
if (res.msg === 'Ok' || res.msg === '') {
setMultiOperate(true);
notification.success({
message: '提示',
duration: 3,
description: '删除成功',
});
setFlag(flag + 1);
} else {
notification.error({
message: '提示',
duration: 3,
description: res.msg,
});
}
});
};
// 返回上一级
const back = () => {
console.log(props.location.state);
......@@ -407,10 +466,13 @@ const AddModal = props => {
setFlag(flag + 1);
};
const treeSelectOnchange = e => {
setSelectedRowKeys([]);
setMultiOperate(true);
setTreeSelectValue(e);
setFormObj(e);
console.log(e.substring(0, e.lastIndexOf('@')));
setFormObj(e.substring(0, e.lastIndexOf('@')));
reloadTableFields({
tableName: e,
tableName: e.substring(0, e.lastIndexOf('@')),
}).then(res => {
setTreeLoading(false);
if (res.msg === 'Ok') {
......@@ -440,9 +502,32 @@ const AddModal = props => {
{org.children.map(item => mapTree(item))}
</TreeNode>
) : (
<TreeNode value={org.tableName} title={org.tableName} />
<TreeNode value={`${org.tableName}@${org.groupName}`} title={org.tableName} />
);
};
// 复选框
const rowSelection = {
selectedRowKeys,
onSelect: (record, selected, selectedRows, nativeEvent) => {
if (selected) {
let aa = [...selectedRowKeys];
aa.push(record.ID);
setSelectedRowKeys(aa);
} else {
let aa = [...selectedRowKeys];
aa.splice(aa.findIndex(item => item === record.ID), 1);
setSelectedRowKeys(aa);
}
if (selectedRows.length > 0) {
setMultiOperate(false);
} else {
setMultiOperate(true);
}
},
};
const multiDelete = () => {
setDeleteUserVisible(true);
};
return (
<>
<Spin tip="loading..." spinning={treeLoading}>
......@@ -470,6 +555,12 @@ const AddModal = props => {
)}
</TreeSelect>
</div>
<div style={{ marginRight: '10px' }}>
<Button disabled={multiOperate} onClick={multiDelete}>
<DeleteOutlined />
批量删除
</Button>
</div>
<div className={styles.btn}>
<Button type="primary" icon={<PlusSquareOutlined />} onClick={add}>
附加
......@@ -502,6 +593,19 @@ const AddModal = props => {
/>
</div>
</Spin>
{/* 多选删除用户 */}
<Modal
title="确认删除字段"
visible={deleteUserVisible}
onOk={multiDeleteChart}
onCancel={() => {
setDeleteUserVisible(false);
}}
okText="确认"
cancelText="取消"
>
<p>将删除多个配置字段, 是否确认删除?</p>
</Modal>
<FieldEditor
isVisible={isVisible}
isType={isType}
......
import React, { useEffect, useState } from 'react';
import { Form, Modal, Row, Col, Input, Select} from 'antd';
import { Form, Modal, Row, Col, Input, Select } from 'antd';
const CheckModal = props => {
const { callBackSubmit = () => { }, visible, onCancel, type, type1, obj } = props;
const { callBackSubmit = () => {}, visible, onCancel, type, type1, obj } = props;
const [form] = Form.useForm();
const { Item } = Form;
const { TextArea } = Input;
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>
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="Name"
rules={[
{
required: true,
message: '请输入名称',
},
]}
>
<Input placeholder={obj.Name} disabled/>
</Item>
<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>
{(() => {
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>
<Item
label="设备序列号"
name="EquipmentNumber"
rules={[
{
required: true,
message: '请输入设备序列号',
},
]}
>
<Input placeholder={obj.EquipmentNumber} disabled />
</Item>
</Col>
<Col span={12}>
<Item
label="通道ID"
name="PassageId"
rules={[
{
required: true,
message: '请输入通道ID',
},
]}
>
<TextArea placeholder={obj.PassageId} disabled/>
</Item>
<Item label="刻录机名称" name="RecorderName">
<Input placeholder={obj.RecorderName} disabled />
</Item>
</Col>
<Col span={24}>
<p style={{ fontSize: '16px', marginLeft: '16px' }}>{type}</p>
<Col span={11}>
<Item label="默认播放方式" name="PlayModel">
<Select placeholder={obj.PlayModel} disabled />
</Item>
</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>
<Item label="默认通道ID" name="DefaultPassageId">
<Input placeholder={obj.DefaultPassageId} disabled />
</Item>
</Col>
</Row>
</>
);
case '海康':
return (
<>
<Row>
<Col span={11}>
<Item
label="视频名称"
name="VideoName"
rules={[
{
required: true,
message: '请输入视频名称',
},
]}
>
<Input placeholder={obj.VideoName} disabled/>
</Item>
<Item
label="登录IP"
name="LoginIp"
rules={[
{
required: true,
message: '请输入登录ID',
},
]}
>
<Input placeholder={obj.LoginIp} disabled />
</Item>
</Col>
<Col span={12}>
<Item
label="默认通道ID"
name="DefaultPassageId"
>
<TextArea placeholder={obj.DefaultPassageId} disabled/>
</Item>
<Item
label="播放零通道"
name="PlayZeroChannel"
rules={[
{
required: true,
message: '请输入设备端口',
},
]}
>
<Select placeholder={obj.PlayZeroChannel} disabled />
</Item>
</Col>
<Col span={11}>
<Item
label="视频服务地址"
name="VideoPath"
rules={[
{
required: true,
message: '请输入视频名称',
},
]}
>
<Input placeholder={obj.VideoPath} disabled/>
</Item>
<Item
label="设备端口"
name="EquipmentPort"
rules={[
{
required: true,
message: '请输入设备端口',
},
]}
>
<Input placeholder={obj.EquipmentPort} 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 span={12}>
<Item
label="视频端口"
name="VideoPort"
rules={[
{
required: true,
message: '请输入视频端口',
},
]}
>
<Input placeholder={obj.VideoPort} 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>
<Item
label="媒体流端口"
name="StreamingMediaPort"
rules={[
{
required: true,
message: '请输入媒体流端口',
},
]}
>
<Input placeholder={obj.StreamingMediaPort} disabled />
</Item>
</Col>
<Col span={12}>
<Item
label="登录密码"
name="LoginPwd"
rules={[
{
required: true,
message: '请输入登录密码',
},
]}
>
<Input placeholder={obj.LoginPwd} disabled/>
</Item>
<Item
label="码流类型"
name="StreamType"
rules={[
{
required: true,
message: '请选择码流类型',
},
]}
>
<Select placeholder={obj.StreamType} disabled />
</Item>
</Col>
<Col span={11}>
<Item
label="设备编码"
name="EquipmentCode"
rules={[
{
required: true,
message: '请输入设备编码',
},
]}
>
<Input placeholder={obj.EquipmentCode} disabled/>
</Item>
<Item
label="视频名称"
name="VideoName"
rules={[
{
required: true,
message: '请输入视频名称',
},
]}
>
<Input placeholder={obj.VideoName} disabled />
</Item>
</Col>
<Col span={12}>
<Item
label="通道ID"
name="PassageId"
rules={[
{
required: true,
message: '请输入通道ID',
},
]}
>
<Input placeholder={obj.PassageId} disabled/>
</Item>
<Item label="刻录机名称" name="RecorderName">
<Input placeholder={obj.RecorderName} disabled />
</Item>
</Col>
<Col span={24}>
<p style={{ fontSize: '16px', marginLeft: '16px' }}>{type}</p>
<Col span={11}>
<Item label="默认通道ID" name="DefaultPassageId">
<Input placeholder={obj.DefaultPassageId} disabled />
</Item>
</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
>
</Select>
</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
>
</Select>
</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
>
</Select>
</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;
\ No newline at end of file
</Row>
</>
);
}
})()}
</Row>
</Form>
</Modal>
);
}
};
export default CheckModal;
......@@ -370,6 +370,8 @@ const UserManage = () => {
const rowSelection = {
selectedRowKeys,
onChange: (RowKeys, Rows) => {
console.log(RowKeys);
console.log(Rows);
setSelectedRowKeys(RowKeys);
getCheckList(RowKeys);
setUserIDs(RowKeys.toString()); // 数组转字符串,逗号连接
......@@ -972,6 +974,7 @@ const UserManage = () => {
};
const getCheckList = e => {
console.log(e);
let aa = [];
let bb = [];
loadAllUserRole(e).then(res => {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment