|
|
|
@ -1,7 +1,7 @@
|
|
|
|
|
import React, { FC, useEffect, useState } from "react";
|
|
|
|
|
import { Button, Dropdown, Menu, Space, Spin, Table, Typography } from "antd";
|
|
|
|
|
import { DownOutlined } from "@ant-design/icons";
|
|
|
|
|
import { exceptStr, paginationFun } from "@/utils/common";
|
|
|
|
|
import { Button, Dropdown, Space, Spin, Table, Typography } from "antd";
|
|
|
|
|
import { MoreOutlined } from "@ant-design/icons";
|
|
|
|
|
import { convertColumns, exceptStr, paginationFun } from "@/utils/common";
|
|
|
|
|
import styles from "@/pages/atdTable/components/index.less";
|
|
|
|
|
import { defaultPage, IPage } from "@/common/types";
|
|
|
|
|
import cs from "classnames";
|
|
|
|
@ -35,6 +35,7 @@ const payrollFilesTable: FC = (props) => {
|
|
|
|
|
showOperateBtn,
|
|
|
|
|
selectedKey,
|
|
|
|
|
selectedRowKeys,
|
|
|
|
|
salaryArchiveDelete,
|
|
|
|
|
i18n
|
|
|
|
|
} = data;
|
|
|
|
|
const { current: pageNum, pageSize: size, total } = pageInfo;
|
|
|
|
@ -72,27 +73,38 @@ const payrollFilesTable: FC = (props) => {
|
|
|
|
|
>
|
|
|
|
|
{i18n["编辑"]}
|
|
|
|
|
</Button>
|
|
|
|
|
<Dropdown
|
|
|
|
|
overlayClassName={styles.moreIconWrapper}
|
|
|
|
|
overlay={
|
|
|
|
|
<Menu>
|
|
|
|
|
<Menu.Item key="payroll">
|
|
|
|
|
<Button type="link" style={{ padding: "0", fontSize: 12 }}
|
|
|
|
|
<Button type="link" style={{ padding: "0" }}
|
|
|
|
|
onClick={() => handleMenuClick({ key: "payroll" }, r?.id)}
|
|
|
|
|
>
|
|
|
|
|
{i18n["设为发薪人员"]}
|
|
|
|
|
</Button>
|
|
|
|
|
</Menu.Item>
|
|
|
|
|
<Menu.Item key="deletePendingTodo">
|
|
|
|
|
<Button type="link" style={{ padding: "0", fontSize: 12 }}
|
|
|
|
|
onClick={() => handleMenuClick({ key: "deletePendingTodo" }, r?.id)}>
|
|
|
|
|
<Dropdown
|
|
|
|
|
menu={{
|
|
|
|
|
items: salaryArchiveDelete === "1" ? [
|
|
|
|
|
{
|
|
|
|
|
key: "deletePendingTodo",
|
|
|
|
|
label: <a onClick={() => handleMenuClick({ key: "deletePendingTodo" }, r?.id)}>
|
|
|
|
|
{i18n["删除待办"]}
|
|
|
|
|
</Button>
|
|
|
|
|
</Menu.Item>
|
|
|
|
|
</Menu>
|
|
|
|
|
</a>
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
key: "deleteAchives",
|
|
|
|
|
label: <a onClick={() => handleMenuClick({ key: "deleteAchives" }, r?.id)}>
|
|
|
|
|
删除档案
|
|
|
|
|
</a>
|
|
|
|
|
}
|
|
|
|
|
] : [
|
|
|
|
|
{
|
|
|
|
|
key: "deletePendingTodo",
|
|
|
|
|
label: <a onClick={() => handleMenuClick({ key: "deletePendingTodo" }, r?.id)}>
|
|
|
|
|
{i18n["删除待办"]}
|
|
|
|
|
</a>
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}} placement="bottomRight"
|
|
|
|
|
overlayClassName={styles.moreIconWrapper}
|
|
|
|
|
>
|
|
|
|
|
<a>{i18n["更多"]}<DownOutlined/></a>
|
|
|
|
|
<MoreOutlined style={{ fontSize: 16 }}/>
|
|
|
|
|
</Dropdown>
|
|
|
|
|
</Space>;
|
|
|
|
|
} else if (selectedKey === "fixed") {
|
|
|
|
@ -116,27 +128,25 @@ const payrollFilesTable: FC = (props) => {
|
|
|
|
|
)}>
|
|
|
|
|
{i18n["编辑"]}
|
|
|
|
|
</Button>
|
|
|
|
|
<Dropdown
|
|
|
|
|
overlayClassName={styles.moreIconWrapper}
|
|
|
|
|
overlay={
|
|
|
|
|
<Menu>
|
|
|
|
|
<Menu.Item key="payroll">
|
|
|
|
|
<Button type="link" style={{ padding: "0", fontSize: 12 }}
|
|
|
|
|
onClick={() => handleMenuClick({ key: "stopSalary" }, r?.id)}
|
|
|
|
|
>
|
|
|
|
|
{i18n["停薪"]}
|
|
|
|
|
</Button>
|
|
|
|
|
</Menu.Item>
|
|
|
|
|
<Menu.Item key="deletePendingTodo">
|
|
|
|
|
<Button type="link" style={{ padding: "0", fontSize: 12 }}
|
|
|
|
|
onClick={() => handleMenuClick({ key: "deleteSuspendTodo" }, r?.id)}>
|
|
|
|
|
<Dropdown
|
|
|
|
|
menu={{
|
|
|
|
|
items: [
|
|
|
|
|
{
|
|
|
|
|
key: "deleteSuspendTodo",
|
|
|
|
|
label: <a onClick={() => handleMenuClick({ key: "deleteSuspendTodo" }, r?.id)}>
|
|
|
|
|
{i18n["删除待办"]}
|
|
|
|
|
</Button>
|
|
|
|
|
</Menu.Item>
|
|
|
|
|
</Menu>
|
|
|
|
|
</a>
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}} placement="bottomRight"
|
|
|
|
|
overlayClassName={styles.moreIconWrapper}
|
|
|
|
|
>
|
|
|
|
|
<a>{i18n["更多"]}<DownOutlined/></a>
|
|
|
|
|
<MoreOutlined style={{ fontSize: 16 }}/>
|
|
|
|
|
</Dropdown>
|
|
|
|
|
</Space>;
|
|
|
|
|
} else {
|
|
|
|
@ -154,6 +164,23 @@ const payrollFilesTable: FC = (props) => {
|
|
|
|
|
onClick={() => handleMenuClick({ key: "view" }, r as string)}>
|
|
|
|
|
{i18n["查看"]}
|
|
|
|
|
</Button>
|
|
|
|
|
{
|
|
|
|
|
salaryArchiveDelete === "1" &&
|
|
|
|
|
<Dropdown placement="bottomRight" overlayClassName={styles.moreIconWrapper}
|
|
|
|
|
menu={{
|
|
|
|
|
items: [
|
|
|
|
|
{
|
|
|
|
|
key: "deleteAchives",
|
|
|
|
|
label: <a onClick={() => handleMenuClick({ key: "deleteAchives" }, r?.id)}>
|
|
|
|
|
删除档案
|
|
|
|
|
</a>
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}}
|
|
|
|
|
>
|
|
|
|
|
<MoreOutlined style={{ fontSize: 16 }}/>
|
|
|
|
|
</Dropdown>
|
|
|
|
|
}
|
|
|
|
|
</Space>;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -161,7 +188,7 @@ const payrollFilesTable: FC = (props) => {
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
return { ...item };
|
|
|
|
|
return _.omitBy({ ...item }, item => !item);
|
|
|
|
|
}));
|
|
|
|
|
setShowSumrow(showSum);
|
|
|
|
|
setSumRow(_.isEmpty(countResult) ? { [new Date().getTime()]: new Date().getTime() } : countResult);
|
|
|
|
@ -205,13 +232,14 @@ const payrollFilesTable: FC = (props) => {
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
return <Table
|
|
|
|
|
rowKey="id"
|
|
|
|
|
className={cs({
|
|
|
|
|
[styles.tableWrapper]: true,
|
|
|
|
|
[styles.tableTotalWrapper]: true
|
|
|
|
|
})}
|
|
|
|
|
columns={columns}
|
|
|
|
|
columns={!_.isEmpty(columns) && convertColumns(columns, _.findIndex(columns, ["dataIndex", "operate"]), Object.keys(columns).length)}
|
|
|
|
|
dataSource={dataSource}
|
|
|
|
|
size="small"
|
|
|
|
|
rowSelection={rowSelection}
|
|
|
|
|