测试节点的版本配置 - 管理和配置不同测试节点的版本信息
import React, { useRef, useState } from 'react'; import ContentCard from '@/components/ContentCard'; import { Button, Collapse, Select, Space } from 'antd'; import { ActionType, EditableProTable, ProColumns } from '@ant-design/pro-table'; import ProForm, { ProFormInstance } from '@ant-design/pro-form'; import { getOnlyKey } from '@/utils/utils'; import { PlusCircleOutlined } from '@ant-design/icons'; import './index.less'; import { isArray } from 'lodash'; const { Panel } = Collapse; const DEMAND_DICT = [ { label: 'M1-1', value: '1', }, { label: 'M1-2', value: '2', }, { label: 'M1-3', value: '3', }, ];
const VersionConfiguration: React.FC = () => {
const actionRef = useRef
<div className="check-list-wrap">
<Collapse
ghost
activeKey={activeKeys.map((item) => item.panelKey)}
onChange={(keys) => {
setActiveKeys(
activeKeys.map((item) => {
if (keys.includes(item.panelKey)) {
return { ...item, panelKey: item.panelKey };
}
return item;
})
);
setActivePanelKey(keys[keys.length - 1]);
}}
>
{DEMAND_DICT.map((item, index) => {
return (
<Panel header={item.label} key={item.value}>
<ProForm formRef={formRef} submitter={false}>
<ProForm.Item name="dataSourcePolicy" style={{ margin: '0' }}>
<EditableProTable
rowKey="key"
recordCreatorProps={false}
actionRef={actionRef}
columns={columns}
editable={{
type: 'single',
editableKeys: editKeys,
onChange: setEditKeys,
actionRender: (row, config, defaultDoms) => {
return [defaultDoms.save, defaultDoms.cancel];
},
// onSave: async (key, record: any) => {
// // const { memberName } = record.memberName;
// const result = await update({
// ...record,
// type: '0',
// id: idRef.current.includes(record.id) ? record.id : undefined,
// projectId: current,
// index: undefined,
// });
// if (result.code === 100000) {
// message.success('更新成功');
// coreTableRef.current?.reload();
// return;
// }
// message.error(result.msg);
// },
// }}
}}
// request={async(params)=>{ // }}
search={false}
pagination={false}
bordered
/>
</ProForm.Item>
</ProForm>
<Space>
<Button
style={{ border: '1px' }}
onClick={() => {
const lastPanelKey = activeKeys[activeKeys.length - 1]?.panelKey;
actionRef.current?.addEditRecord?.(
{
key: getOnlyKey(),
},
false,
lastPanelKey
);
}}
>
<PlusCircleOutlined />
</Button>
</Space>
</Panel>
);
})}
</Collapse>
</div>
</ContentCard>
); }; export default VersionConfiguration;