diff --git a/pc4mobx/hrmSalary/apis/welfareArchive.js b/pc4mobx/hrmSalary/apis/welfareArchive.js index 8e6bdea7..2cabd8bb 100644 --- a/pc4mobx/hrmSalary/apis/welfareArchive.js +++ b/pc4mobx/hrmSalary/apis/welfareArchive.js @@ -93,4 +93,17 @@ export const importBatch = (params) => { }).then(res => res.json()) } +// 导出档案 +export const exportArchives = (ids) => { + fetch('/api/bs/hrmsalary/scheme/export?ids=' + ids).then(res => res.blob().then(blob => { + var filename=`员工档案.xlsx` + var a = document.createElement('a'); + var url = window.URL.createObjectURL(blob); + a.href = url; + a.download = filename; + a.click(); + window.URL.revokeObjectURL(url); + })) +} + diff --git a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/archives/index.js b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/archives/index.js index fbc7099a..bf419ea2 100644 --- a/pc4mobx/hrmSalary/pages/socialSecurityBenefits/archives/index.js +++ b/pc4mobx/hrmSalary/pages/socialSecurityBenefits/archives/index.js @@ -2,7 +2,7 @@ import React from 'react'; import { inject, observer } from 'mobx-react'; import { toJS } from 'mobx'; -import { Button, Table, DatePicker, Dropdown, Menu } from 'antd'; +import { Button, Table, DatePicker, Dropdown, Menu, message } from 'antd'; import { WeaTop, WeaTab, WeaRightMenu, WeaRangePicker, WeaTable, WeaSlideModal } from 'ecCom'; // import { WeaTableNew } from "comsMobx" @@ -36,6 +36,7 @@ export default class Archives extends React.Component { importVisible: false, modalParam: {}, step: 0, + selectedRowKeys: [] } this.record = {} @@ -60,13 +61,13 @@ export default class Archives extends React.Component { let columns = [...tableStore.columns] columns = columns.filter(item => item.hide == "false") columns.map(item => { - item.width = item.oldWidth + item.width = "150px" }) columns.push({ title: "操作", dataIndex: "operate", fixed: "right", - width: "200px", + width: "100px", height: "auto", render: (text, record) => { return ( {this.handleEdit(record)}}>编辑) @@ -131,9 +132,14 @@ export default class Archives extends React.Component { setImportResult({}) } + // 选项设置 + onSelectChange = selectedRowKeys => { + this.setState({ selectedRowKeys }); + } + render() { const { archivesStore } = this.props; - const { selectedTab } = this.state; + const { selectedTab, selectedRowKeys } = this.state; const { loading, hasRight, form, condition, tableStore, showSearchAd, getTableDatas, doSearch, setShowSearchAd, previewCurDataColumns, previewCurDataDataSource, importResult } = archivesStore; @@ -166,8 +172,24 @@ export default class Archives extends React.Component { const topTab = [ ]; - const handleButtonClick = () => {} - const handleMenuClick = () => {} + // 导出全部 + const handleButtonClick = () => { + const { archivesStore:{exportArchives}} = this.props; + exportArchives() + } + + // 导出选中 + const handleMenuClick = () => { + const { selectedRowKeys } = this.state; + console.log("selectedRowKeys:", selectedRowKeys); + if(selectedRowKeys.length == 0) { + message.warning("未选择任何条目"); + return + } + let ids = selectedRowKeys.join(",") + const { archivesStore:{exportArchives}} = this.props; + exportArchives(ids) + } const btns = [ , @@ -185,6 +207,11 @@ export default class Archives extends React.Component { return
} + const rowSelection = { + selectedRowKeys, + onChange: this.onSelectChange, + }; + return (