import { buildProTableDataSource, sendRequest, showDelConfirm1 } from '@/utils/antdUtils';
|
import { PageContainer, ProTable } from '@ant-design/pro-components';
|
import { Button, Space } from 'antd';
|
import { useRef, useState } from 'react';
|
import { useAccess, Access } from 'umi';
|
import AddAndEdit from './components/addAndEdit';
|
import { add,Edit, del, getList } from './service';
|
const Account = () => {
|
const actionRef = useRef();
|
const addViewRef = useRef();
|
const [modalVisible, handleModalVisible] = useState(false);
|
|
const access = useAccess();
|
|
const columns = [
|
{
|
title: '问题类型名称',
|
dataIndex: 'name',
|
},
|
{
|
title: '操作',
|
hideInSearch: true,
|
render: (text, record) => {
|
return (
|
<Space>
|
<Access accessible={access['/work_order_transaction_management/problem_type_management/edit']}>
|
<Button
|
type="link"
|
onClick={() => {
|
addViewRef.current.refreshData(record);
|
handleModalVisible(true);
|
}}
|
>
|
编辑
|
</Button>
|
</Access>
|
<Access accessible={access['/work_order_transaction_management/problem_type_management/del']}>
|
<Button
|
type="link"
|
onClick={() => {
|
showDelConfirm1(async () => {
|
let status = await sendRequest(del, record.id);
|
if (status) {
|
actionRef.current.reload();
|
}
|
}, '确认删除该信息吗?');
|
}}
|
>
|
删除
|
</Button>
|
</Access>
|
</Space>
|
);
|
},
|
},
|
];
|
return (
|
<div>
|
<PageContainer title="问题类型管理" header={{
|
breadcrumb: {},
|
}}>
|
<ProTable
|
rowKey="id"
|
actionRef={actionRef}
|
columns={columns}
|
pagination={{
|
showSizeChanger: true,
|
showQuickJumper: true,
|
defaultPageSize: 10,
|
}}
|
search={{
|
labelWidth: 'auto',
|
}}
|
request={(params) => {
|
return buildProTableDataSource(getList, params);
|
}}
|
toolBarRender={(action, selectRows) => [
|
<Space>
|
<Access accessible={access['/work_order_transaction_management/problem_type_management/add']}>
|
<Button
|
type="primary"
|
onClick={() => {
|
addViewRef.current.refreshData({});
|
handleModalVisible(true);
|
}}
|
>
|
添加
|
</Button>
|
</Access>
|
</Space>,
|
]}
|
/>
|
<AddAndEdit
|
ref={addViewRef}
|
visible={modalVisible}
|
onCancel={() => handleModalVisible(false)}
|
onSave={async (fileds) => {
|
const success = await sendRequest(add, fileds);
|
if (success) {
|
handleModalVisible(false);
|
actionRef.current.reload();
|
}
|
}}
|
onUpdate={async (fileds) => {
|
const success = await sendRequest(Edit, fileds);
|
if (success) {
|
handleModalVisible(false);
|
actionRef.current.reload();
|
}
|
}}
|
/>
|
</PageContainer>
|
</div>
|
);
|
};
|
|
export default Account;
|