diff --git a/pc4mobx/hrmSalary/pages/salaryItem/deleteSalaryItemModal.js b/pc4mobx/hrmSalary/pages/salaryItem/deleteSalaryItemModal.js index c36c77bc..b218f6de 100644 --- a/pc4mobx/hrmSalary/pages/salaryItem/deleteSalaryItemModal.js +++ b/pc4mobx/hrmSalary/pages/salaryItem/deleteSalaryItemModal.js @@ -9,36 +9,77 @@ import CustomTable from '../../components/customTable' @observer export default class DeleteSalaryItemModal extends React.Component { + constructor(props) { + super(props); + this.state ={ + selectedRowKeys: [], + searchValue: "" + } + this.page = 1 + } + componentWillMount() { const { salaryItemStore: {listCanDelete}} = this.props; listCanDelete() } + getColumns() { + const { salaryItemStore } = this.props; + const { canDeleteList } = salaryItemStore + let columns = canDeleteList.columns ? canDeleteList.columns : [] + columns = [...columns] + return columns + } + // 分页 handleDataPageChange(value) { const { salaryItemStore: {listCanDelete}} = this.props; - listCanDelete({current: value}) + this.page = value; + listCanDelete({name: this.state.searchValue, current: value}) + } + + // 选择框选中事件 + onSelectChange(selectedRowKeys) { + this.setState({ selectedRowKeys }); + } + + handleSearchChange(value) { + this.setState({searchValue: value}) + } + + // 搜索 + handleSearch(value) { + const { salaryItemStore: {listCanDelete}} = this.props; + listCanDelete({name: value, current: this.page}) } render() { + const { selectedRowKeys, searchValue } = this.state; const { salaryItemStore } = this.props; - const { canDeleteList, loading } = salaryItemStore + const { canDeleteList, modalLoading } = salaryItemStore + + const rowSelection = { + selectedRowKeys, + onChange: this.onSelectChange.bind(this), + }; const handleDelete = () => { const { salaryItemStore: { deleteItem } } = this.props; - deleteItem(); + deleteItem(this.state.selectedRowKeys); } + return ( - {this.props.onCancel()}} width={800}> + {this.props.onCancel()}} footer={null} width={800}>
批量删除
- + {this.handleSearchChange(value)}} onSearch={(value) => {this.handleSearch(value)}}/>
-
- + { - deleteItemList({}) + // deleteItemList({}) setDeleteItemVisible(true) } diff --git a/pc4mobx/hrmSalary/stores/salaryItem.js b/pc4mobx/hrmSalary/stores/salaryItem.js index 7b557231..4fa2e24f 100644 --- a/pc4mobx/hrmSalary/stores/salaryItem.js +++ b/pc4mobx/hrmSalary/stores/salaryItem.js @@ -46,6 +46,9 @@ export class SalaryItemStore { // 公式详情 @observable formulaDetail = {}; + // Modal + @observable modalLoading = true; + // 设置字段列表 @action setSearchFields = (searchFields) => { @@ -185,8 +188,7 @@ export class SalaryItemStore { //薪资项目-批量删除薪资项目 @action - deleteItem = () => { - let ids = toJS(this.deleteTableStore.selectedRowKeys) + deleteItem = (ids) => { if(ids.length == 0) { message.warning("未选择任何条目"); return @@ -316,20 +318,28 @@ export class SalaryItemStore { } }) }) - } - // + // 获取可以删除的列表 @action listCanDelete = (params = {}) => { - this.loading = true; + this.modalLoading = true; API.listCanDelete(params).then(res => { if(res.status) { - this.canDeleteList = res.data + let data = res.data + if(res.data.list && res.data.list.length > 0) { + data.list = res.data.list.map(item => { + item = {...item} + item.key = item.id + return item + }) + } + console.log("this.canDeleteList:", this.canDeleteList) + this.canDeleteList = data } else { message.error(res.errormsg || "获取失败") } - this.loading = false; + this.modalLoading = false; }) } } \ No newline at end of file