Compare commits

...

4 Commits

@ -1,5 +1,5 @@
import React, { FC, useEffect, useState } from "react";
import { Button, Dropdown, Space, Spin, Table, Typography } from "antd";
import { Button, Dropdown, Menu, 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";
@ -58,6 +58,20 @@ const payrollFilesTable: FC = (props) => {
</Button>;
} else {
if (selectedKey === "pending") {
const menu1 = (
<Menu>
<Menu.Item key="deletePendingTodo"><span style={{width: "100%", height: "100%"}}
onClick={(e) => handleMenuClick({ key: "deletePendingTodo" }, r?.id)}></span></Menu.Item>
<Menu.Item key="deleteAchives"><span style={{width: "100%", height: "100%"}}
onClick={(e) => handleMenuClick({ key: "deleteAchives" }, r?.id)}></span></Menu.Item>
</Menu>
);
const menu2 = (
<Menu>
<Menu.Item key="deletePendingTodo"><span style={{width: "100%", height: "100%"}}
onClick={(e) => handleMenuClick({ key: "deletePendingTodo" }, r?.id)}></span></Menu.Item>
</Menu>
);
dom = <Space>
<Button type="link" style={{ padding: "0" }}
onClick={() => window.parent.postMessage(
@ -76,29 +90,7 @@ const payrollFilesTable: FC = (props) => {
</Button>
<Dropdown
menu={{
items: salaryArchiveDelete === "1" ? [
{
key: "deletePendingTodo",
label: <a onClick={() => handleMenuClick({ key: "deletePendingTodo" }, r?.id)}>
</a>
},
{
key: "deleteAchives",
label: <a onClick={() => handleMenuClick({ key: "deleteAchives" }, r?.id)}>
</a>
}
] : [
{
key: "deletePendingTodo",
label: <a onClick={() => handleMenuClick({ key: "deletePendingTodo" }, r?.id)}>
</a>
}
]
}} placement="bottomRight"
overlay={salaryArchiveDelete === "1" ? menu1 : menu2} placement="bottomRight"
overlayClassName={styles.moreIconWrapper}
>
<MoreOutlined style={{ fontSize: 16 }}/>
@ -115,6 +107,12 @@ const payrollFilesTable: FC = (props) => {
</Button>;
} else if (selectedKey === "suspend") {
const menu3 = (
<Menu>
<Menu.Item key="deleteSuspendTodo"><span style={{width: "100%", height: "100%"}}
onClick={(e) => handleMenuClick({ key: "deleteSuspendTodo" }, r?.id)}></span></Menu.Item>
</Menu>
);
dom = <Space>
<Button type="link" style={{ padding: "0" }} onClick={() => window.parent.postMessage(
{
@ -131,22 +129,19 @@ const payrollFilesTable: FC = (props) => {
</Button>
<Dropdown
menu={{
items: [
{
key: "deleteSuspendTodo",
label: <a onClick={() => handleMenuClick({ key: "deleteSuspendTodo" }, r?.id)}>
</a>
}
]
}} placement="bottomRight"
overlay={menu3} placement="bottomRight"
overlayClassName={styles.moreIconWrapper}
>
<MoreOutlined style={{ fontSize: 16 }}/>
</Dropdown>
</Space>;
} else {
const menu4 = (
<Menu>
<Menu.Item key="deleteAchives"><span style={{width: "100%", height: "100%"}}
onClick={(e) => handleMenuClick({ key: "deleteAchives" }, r?.id)}></span></Menu.Item>
</Menu>
);
dom = <Space>
<Button type="link" style={{ padding: "0" }} onClick={() => window.parent.postMessage(
{
@ -164,16 +159,7 @@ const payrollFilesTable: FC = (props) => {
{
salaryArchiveDelete === "1" &&
<Dropdown placement="bottomRight" overlayClassName={styles.moreIconWrapper}
menu={{
items: [
{
key: "deleteAchives",
label: <a onClick={() => handleMenuClick({ key: "deleteAchives" }, r?.id)}>
</a>
}
]
}}
overlay={menu4}
>
<MoreOutlined style={{ fontSize: 16 }}/>
</Dropdown>

@ -9,7 +9,7 @@ import { ColumnType } from "antd/lib/table";
import { PaginationData } from "rc-pagination";
import styles from "@/pages/atdTable/components/index.less";
import { exceptStr, paginationAction } from "@/utils/common";
import { Button, Dropdown, MenuProps, Space, Table } from "antd";
import { Button, Dropdown, Menu, Space, Table } from "antd";
import { MoreOutlined } from "@ant-design/icons";
interface OwnProps {
@ -96,24 +96,34 @@ const Index: FunctionComponent<Props> = (props) => {
opts = {
...opts,
render: (__: any, record: any) => {
let items: MenuProps["items"] = [
{
key: "DeleteTodoList",
label: i18n["删除待办"],
onClick: () => handleSalaryFileOperate("DEL-PENDITNG-TO-DO", record, [record?.id])
},
{
key: "DeleteFiles",
label: i18n["删除档案"],
onClick: () => handleSalaryFileOperate("DEL-SALARY-FILES", record, [record?.id])
}
];
!showDelSalaryFileBtn && (items = _.dropRight(items));
const items = !showDelSalaryFileBtn ? (
<Menu>
<Menu.Item key="DeleteTodoList">
<span style={{ width: "100%", height: "100%" }}
onClick={(e) => handleSalaryFileOperate("DEL-PENDITNG-TO-DO", [record?.id])}>
{i18n["删除待办"]}
</span>
</Menu.Item>
</Menu>
) : <Menu>
<Menu.Item key="DeleteTodoList">
<span style={{ width: "100%", height: "100%" }}
onClick={(e) => handleSalaryFileOperate("DEL-PENDITNG-TO-DO", [record?.id])}>
{i18n["删除待办"]}
</span>
</Menu.Item>
<Menu.Item key="DeleteFiles">
<span style={{ width: "100%", height: "100%" }}
onClick={(e) => handleSalaryFileOperate("DEL-SALARY-FILES", [record?.id])}>
{i18n["删除档案"]}
</span>
</Menu.Item>
</Menu>;
return (<Space>
<Button type="link" onClick={() => handleSalaryFileOperate("EDIT", record)}>{i18n["编辑"]}</Button>
<Button type="link"
onClick={() => handleSalaryFileOperate("ADD-TO-SALARYPAYMENT", record, [record?.id])}>{i18n["设为发薪人员"]}</Button>
<Dropdown menu={{ items }} placement="bottomRight">
<Dropdown overlay={items} placement="bottomRight">
<Button type="link" icon={<MoreOutlined/>}/>
</Dropdown>
</Space>);
@ -133,18 +143,21 @@ const Index: FunctionComponent<Props> = (props) => {
opts = {
...opts,
render: (__: any, record: any) => {
const downsizingItems: MenuProps["items"] = [
{
key: "DeleteTodoList",
label: i18n["删除待办"],
onClick: () => handleSalaryFileOperate("DEL-SUSPEND-TO-DO", record, [record?.id])
}
];
const downsizingItems = (
<Menu>
<Menu.Item key="DeleteTodoList">
<span style={{ width: "100%", height: "100%" }}
onClick={(e) => handleSalaryFileOperate("DEL-SUSPEND-TO-DO", record, [record?.id])}>
{i18n["删除待办"]}
</span>
</Menu.Item>
</Menu>
);
return (<Space>
<Button type="link" onClick={() => handleSalaryFileOperate("EDIT", record)}>{i18n["编辑"]}</Button>
<Button type="link"
onClick={() => handleSalaryFileOperate("SALARY-SUSPENSION", record, [record?.id])}>{i18n["停薪"]}</Button>
<Dropdown menu={{ items: downsizingItems }} placement="bottomRight">
<Dropdown overlay={downsizingItems} placement="bottomRight">
<Button type="link" icon={<MoreOutlined/>}/>
</Dropdown>
</Space>);
@ -155,21 +168,23 @@ const Index: FunctionComponent<Props> = (props) => {
opts = {
...opts,
render: (__: any, record: any) => {
let stopItems: MenuProps["items"] = [
{
key: "CancelSuspension",
label: i18n["删除档案"],
onClick: () => handleSalaryFileOperate("DEL-SALARY-FILES", record, [record?.id])
}
];
!showDelSalaryFileBtn && (stopItems = _.dropRight(stopItems));
const stopItems = showDelSalaryFileBtn ? (
<Menu>
<Menu.Item key="CancelSuspension">
<span style={{ width: "100%", height: "100%" }}
onClick={(e) => handleSalaryFileOperate("DEL-SALARY-FILES", record, [record?.id])}>
{i18n["删除档案"]}
</span>
</Menu.Item>
</Menu>
) : null;
return (<Space>
<Button type="link" onClick={() => handleSalaryFileOperate("VIEW", record)}>{i18n["查看"]}</Button>
<Button type="link"
onClick={() => handleSalaryFileOperate("CANCEL-SALARY-SUSPENSION", record, [record?.id])}>{i18n["取消停薪"]}</Button>
{
!_.isEmpty(stopItems) &&
<Dropdown menu={{ items: stopItems }} placement="bottomRight">
<Dropdown overlay={stopItems} placement="bottomRight">
<Button type="link" icon={<MoreOutlined/>}/>
</Dropdown>
}

@ -9,8 +9,7 @@ import { ColumnType } from "antd/lib/table";
import { PaginationData } from "rc-pagination";
import styles from "@/pages/atdTable/components/index.less";
import { exceptStr, paginationAction } from "@/utils/common";
import type { MenuProps } from "antd";
import { Button, Dropdown, Space, Table } from "antd";
import { Button, Dropdown, Menu, Space, Table } from "antd";
import { MoreOutlined } from "@ant-design/icons";
interface OwnProps {
@ -94,22 +93,18 @@ const Index: FunctionComponent<Props> = (props) => {
opts = {
...opts,
render: (__: any, record: any) => {
const items: MenuProps["items"] = [
{
key: "DeleteFiles",
label: i18n["删除档案"],
onClick: () => handleWelfareOperate("DEL-ARCHIVE", record)
},
{
key: "DeleteTodoList",
label: i18n["删除待办"],
onClick: () => handleWelfareOperate("DEL-TO-DO", record, { runStatus: "4" })
}
];
const items = (
<Menu>
<Menu.Item key="DeleteFiles"><span style={{ width: "100%", height: "100%" }}
onClick={(e) => handleWelfareOperate("DEL-ARCHIVE", record)}>{i18n["删除档案"]}</span></Menu.Item>
<Menu.Item key="DeleteTodoList"><span style={{ width: "100%", height: "100%" }}
onClick={(e) => handleWelfareOperate("DEL-TO-DO", record, { runStatus: "4" })}>{i18n["删除待办"]}</span></Menu.Item>
</Menu>
);
return (<Space>
<Button type="link" onClick={() => handleWelfareOperate("EDIT", record)}>{i18n["编辑"]}</Button>
<Button type="link" onClick={() => handleWelfareOperate("ADD-TO-PAY", record)}>{i18n["增员"]}</Button>
<Dropdown menu={{ items }} placement="bottomRight">
<Dropdown overlay={items} placement="bottomRight">
<Button type="link" icon={<MoreOutlined/>}/>
</Dropdown>
</Space>);
@ -128,18 +123,21 @@ const Index: FunctionComponent<Props> = (props) => {
opts = {
...opts,
render: (__: any, record: any) => {
const downsizingItems: MenuProps["items"] = [
{
key: "DeleteTodoList",
label: i18n["删除待办"],
onClick: () => handleWelfareOperate("DEL-TO-DO-STAY", record, { runStatus: "3" })
}
];
const downsizingItems = (
<Menu>
<Menu.Item key="DeleteTodoList">
<span style={{ width: "100%", height: "100%" }}
onClick={(e) => handleWelfareOperate("DEL-TO-DO-STAY", record, { runStatus: "3" })}>
{i18n["删除待办"]}
</span>
</Menu.Item>
</Menu>
);
return (<Space>
<Button type="link" onClick={() => handleWelfareOperate("EDIT", record)}>{i18n["编辑"]}</Button>
<Button type="link"
onClick={() => handleWelfareOperate("STAY-DEL-TO-STOP", record)}>{i18n["减员"]}</Button>
<Dropdown menu={{ items: downsizingItems }} placement="bottomRight">
<Dropdown overlay={downsizingItems} placement="bottomRight">
<Button type="link" icon={<MoreOutlined/>}/>
</Dropdown>
</Space>);
@ -150,18 +148,21 @@ const Index: FunctionComponent<Props> = (props) => {
opts = {
...opts,
render: (__: any, record: any) => {
const stopItems: MenuProps["items"] = [
{
key: "CancelSuspension",
label: i18n["取消停缴"],
onClick: () => handleWelfareOperate("CANCEL-STOP", record)
}
];
const stopItems = (
<Menu>
<Menu.Item key="CancelSuspension">
<span style={{ width: "100%", height: "100%" }}
onClick={(e) => handleWelfareOperate("CANCEL-STOP", record)}>
{i18n["取消停缴"]}
</span>
</Menu.Item>
</Menu>
);
return (<Space>
<Button type="link" onClick={() => handleWelfareOperate("VIEW", record)}>{i18n["查看"]}</Button>
<Button type="link"
onClick={() => handleWelfareOperate("DEL-ARCHIVE", record)}>{i18n["删除档案"]}</Button>
<Dropdown menu={{ items: stopItems }} placement="bottomRight">
<Dropdown overlay={stopItems} placement="bottomRight">
<Button type="link" icon={<MoreOutlined/>}/>
</Dropdown>
</Space>);

Loading…
Cancel
Save