61 lines
1.8 KiB
JavaScript
61 lines
1.8 KiB
JavaScript
import React, { Component } from "react";
|
|
import { Menu, message } from "antd";
|
|
import { WeaLocaleProvider } from "ecCom";
|
|
import "../index.less";
|
|
|
|
const getLabel = WeaLocaleProvider.getLabel;
|
|
|
|
class ExportMenu extends Component {
|
|
componentDidMount() {
|
|
}
|
|
|
|
handleClick = ({ key }) => this[key]();
|
|
handleExportAll = () => {
|
|
const { selectedKey } = this.props;
|
|
let runStatusList = _.upperCase(selectedKey);
|
|
switch (selectedKey) {
|
|
case "pending":
|
|
runStatusList = _.upperCase(selectedKey);
|
|
break;
|
|
case "fixed":
|
|
runStatusList = "FIXED,SUSPEND";
|
|
break;
|
|
case "suspend":
|
|
runStatusList = _.upperCase(selectedKey);
|
|
break;
|
|
case "stop":
|
|
runStatusList = "STOP_FROM_PENDING,STOP_FROM_SUSPEND";
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
let url = `${window.location.origin}/api/bs/hrmsalary/salaryArchive/exportList?ids=&runStatusList=${runStatusList}`;
|
|
const { searchItemsValue } = this.props;
|
|
const fileds = Object.keys(searchItemsValue);
|
|
_.forEach(fileds, it => {
|
|
url = `${url}&${it}=${searchItemsValue[it]}`;
|
|
});
|
|
window.open(url, "_self");
|
|
};
|
|
handleExportSelect = () => {
|
|
const { selectedRowKeys } = this.props;
|
|
if (selectedRowKeys.length === 0) {
|
|
message.warning(getLabel(111, "未选择条目"));
|
|
return;
|
|
}
|
|
const url = `${window.location.origin}/api/bs/hrmsalary/salaryArchive/exportList?ids=${selectedRowKeys.join(",")}`;
|
|
window.open(url, "_self");
|
|
};
|
|
|
|
render() {
|
|
return (
|
|
<Menu className="dropdownMenuWrapper" onClick={this.handleClick}>
|
|
<Menu.Item key="handleExportAll">{getLabel(81272, "导出全部")}</Menu.Item>
|
|
<Menu.Item key="handleExportSelect">{getLabel(512938, "导出选中")}</Menu.Item>
|
|
</Menu>
|
|
);
|
|
}
|
|
}
|
|
|
|
export default ExportMenu;
|