table 上部门添加单位 ,单位添加部门

This commit is contained in:
linxd
2025-08-11 13:33:35 +08:00
parent 88ca4969b4
commit 516a4efd8d
9 changed files with 496 additions and 258 deletions

View File

@ -31,7 +31,6 @@ const SupplierTemplateManage: React.FC = () => {
});
const [searchParams, setSearchParams] = useState({});
// 获取模板列表
const fetchTemplateList = async (current = 1, pageSize = 10, params = searchParams) => {
// 更新搜索参数状态
@ -118,59 +117,77 @@ const SupplierTemplateManage: React.FC = () => {
const handleTableChange = (newPagination: TablePaginationConfig) => {
fetchTemplateList(newPagination.current, newPagination.pageSize, searchParams);
};
// 处理启用模板
const handleEnableTemplate = (id: string) => {
Modal.confirm({
title: intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.enableConfirmTitle' }),
content: intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.enableConfirmContent' }),
okText: intl.formatMessage({ id: 'supplierAnnualTemplateManage.common.confirm' }),
cancelText: intl.formatMessage({ id: 'supplierAnnualTemplateManage.common.cancel' }),
onOk: async () => {
try {
setLoading(true);
const res = await enableTemplate(id);
if (res.success) {
message.success(intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.enableSuccess' }));
fetchTemplateList(pagination.current, pagination.pageSize, searchParams);
} else {
message.error(res.message || intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.enableFailed' }));
// 处理启用模板
const handleEnableTemplate = (id: string) => {
Modal.confirm({
title: intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.enableConfirmTitle' }),
content: intl.formatMessage({
id: 'supplierAnnualTemplateManage.modal.enableConfirmContent',
}),
okText: intl.formatMessage({ id: 'supplierAnnualTemplateManage.common.confirm' }),
cancelText: intl.formatMessage({ id: 'supplierAnnualTemplateManage.common.cancel' }),
onOk: async () => {
try {
setLoading(true);
const res = await enableTemplate(id);
if (res.success) {
message.success(
intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.enableSuccess' }),
);
fetchTemplateList(pagination.current, pagination.pageSize, searchParams);
} else {
message.error(
res.message ||
intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.enableFailed' }),
);
}
} catch (error) {
console.error('启用模板失败:', error);
message.error(
intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.enableFailed' }),
);
} finally {
setLoading(false);
}
} catch (error) {
console.error('启用模板失败:', error);
message.error(intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.enableFailed' }));
} finally {
setLoading(false);
}
}
});
};
},
});
};
// 处理禁用模板
const handleDisableTemplate = (id: string) => {
Modal.confirm({
title: intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.disableConfirmTitle' }),
content: intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.disableConfirmContent' }),
okText: intl.formatMessage({ id: 'supplierAnnualTemplateManage.common.confirm' }),
cancelText: intl.formatMessage({ id: 'supplierAnnualTemplateManage.common.cancel' }),
onOk: async () => {
try {
setLoading(true);
const res = await disableTemplate(id);
if (res.success) {
message.success(intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.disableSuccess' }));
fetchTemplateList(pagination.current, pagination.pageSize, searchParams);
} else {
message.error(res.message || intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.disableFailed' }));
// 处理禁用模板
const handleDisableTemplate = (id: string) => {
Modal.confirm({
title: intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.disableConfirmTitle' }),
content: intl.formatMessage({
id: 'supplierAnnualTemplateManage.modal.disableConfirmContent',
}),
okText: intl.formatMessage({ id: 'supplierAnnualTemplateManage.common.confirm' }),
cancelText: intl.formatMessage({ id: 'supplierAnnualTemplateManage.common.cancel' }),
onOk: async () => {
try {
setLoading(true);
const res = await disableTemplate(id);
if (res.success) {
message.success(
intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.disableSuccess' }),
);
fetchTemplateList(pagination.current, pagination.pageSize, searchParams);
} else {
message.error(
res.message ||
intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.disableFailed' }),
);
}
} catch (error) {
console.error('禁用模板失败:', error);
message.error(
intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.disableFailed' }),
);
} finally {
setLoading(false);
}
} catch (error) {
console.error('禁用模板失败:', error);
message.error(intl.formatMessage({ id: 'supplierAnnualTemplateManage.modal.disableFailed' }));
} finally {
setLoading(false);
}
}
});
};
},
});
};
const columns = [
{
title: intl.formatMessage({ id: 'supplierTemplateManage.column.index' }),
@ -217,6 +234,14 @@ const handleDisableTemplate = (id: string) => {
dataIndex: 'deptName',
key: 'deptName',
width: 120,
ellipsis: {
showTitle: false,
},
render: (text: string) => (
<Tooltip placement="topLeft" title={text}>
{text}
</Tooltip>
),
},
{
title: intl.formatMessage({ id: 'supplierTemplateManage.column.createTime' }),
@ -251,23 +276,22 @@ const handleDisableTemplate = (id: string) => {
{/* 禁用状态显示启用按钮 草稿状态显示启用按钮 */}
{(record.status === TemplateStatus.DISABLED ||
record.status === TemplateStatus.DRAFT) && (
<Button type="link" onClick={() => handleEnableTemplate(record.id)} size="small">
{intl.formatMessage({ id: 'supplierAnnualTemplateManage.common.enable' })}
</Button>
)}
<Button type="link" onClick={() => handleEnableTemplate(record.id)} size="small">
{intl.formatMessage({ id: 'supplierAnnualTemplateManage.common.enable' })}
</Button>
)}
{/* 启用状态显示禁用按钮 草稿状态显示禁用按钮 */}
{(record.status === TemplateStatus.ENABLED ||
record.status === TemplateStatus.DRAFT) && (
<Button
type="link"
danger
onClick={() => handleDisableTemplate(record.id)}
size="small"
>
{intl.formatMessage({ id: 'supplierAnnualTemplateManage.common.disable' })}
</Button>
)}
{(record.status === TemplateStatus.ENABLED || record.status === TemplateStatus.DRAFT) && (
<Button
type="link"
danger
onClick={() => handleDisableTemplate(record.id)}
size="small"
>
{intl.formatMessage({ id: 'supplierAnnualTemplateManage.common.disable' })}
</Button>
)}
</Space>
),
},
@ -322,7 +346,7 @@ const handleDisableTemplate = (id: string) => {
name="categoryId"
label={intl.formatMessage({ id: 'supplierTemplateManage.column.category' })}
>
<CategorySelector multiple={false} />
<CategorySelector multiple={false} />
</Form.Item>
<Form.Item className="filter-btns">
<Button type="primary" htmlType="submit" icon={<SearchOutlined />}>