Commit c29c4f0a by zhaochengxiang

资产解绑标准

parent 643f0aee
......@@ -294,4 +294,8 @@ export function* standardBatchMetadata(payload) {
export function* getMetadataStandardList(payload) {
return yield call(service.getMetadataStandardList, payload);
}
export function* deleteStandardBatchMetadata(payload) {
return yield call(service.deleteStandardBatchMetadata, payload);
}
\ No newline at end of file
......@@ -287,3 +287,7 @@ export function standardBatchMetadata(payload) {
export function getMetadataStandardList(payload) {
return PostJSON('/standard/indicator/find', payload);
}
export function deleteStandardBatchMetadata(payload) {
return PostJSON('/standard/indicator/delete', payload);
}
import React, { useEffect, useState, useContext, useMemo, useRef } from 'react';
import { Form, Spin, Input, Descriptions, Space, Button, Tooltip, Select, Cascader, Table, Radio, Divider, Typography } from 'antd';
import { Form, Spin, Input, Descriptions, Space, Button, Tooltip, Select, Cascader, Table, Radio, Divider, Typography, Modal } from 'antd';
import { DownOutlined, UpOutlined } from '@ant-design/icons';
import MetadataInfo from './MetadataInfo';
......@@ -52,6 +52,7 @@ const AssetAction = (props) => {
const [metadataColumnList, setMetadataColumnList] = useState(undefined);
const [selectStandardParam, setSelectStandardParam] = useState({ visible: false, id: undefined });
const [standardList, setStandardList] = useState(undefined);
const [modal, contextHolder] = Modal.useModal();
const app = useContext(AppContext);
const uploadRef = useRef(undefined);
......@@ -129,18 +130,48 @@ const AssetAction = (props) => {
{
title: '操作',
dataIndex: 'action',
width: 80,
width: 150,
render: (_, record) => {
return (reference===AssetManageReference||canEdit) ? <Button
type='link'
size='small'
onClick={() => {
setSelectStandardParam({ visible: true, id: record._id });
}}
style={{ padding: 0 }}
>
关联标准
</Button> : null;
return (reference===AssetManageReference||canEdit) ? <Space>
<Button
type='link'
size='small'
onClick={() => {
setSelectStandardParam({ visible: true, id: record._id });
}}
style={{ padding: 0 }}
>
关联标准
</Button>
{
record.standard?.standardId && <Button
type='link'
size='small'
onClick={() => {
modal.confirm({
title: '您确定要取消关联标准吗?',
onOk: () => {
dispatch({
type: 'assetmanage.deleteStandardBatchMetadata',
payload: {
params: {
ids: record.standard?.id
}
},
callback: () => {
showMessage("success","取消成功");
getMetadataStandardList();
}
})
}
})
}}
style={{ padding: 0 }}
>
取消关联
</Button>
}
</Space>: null;
}
}
];
......@@ -179,12 +210,16 @@ const AssetAction = (props) => {
const tableData = useMemo(() => {
if (metadataColumnList && standardList) {
const newMetadataColumnList = [...metadataColumnList];
newMetadataColumnList.forEach(item => {
const newMetadataColumnList = [];
metadataColumnList.forEach(item => {
const index = standardList?.findIndex(_item => _item.metadataId === item._id);
let newItem = {...item};
if (index !== -1) {
item.standard = standardList[index];
newItem.standard = standardList[index];
}
newMetadataColumnList.push(newItem);
});
return newMetadataColumnList;
......@@ -1015,6 +1050,7 @@ const AssetAction = (props) => {
}
}
</AppContext.Consumer>
{contextHolder}
</div>
)
}
......
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