bee-table7/demo/demolist/Demo0802.js

127 lines
3.0 KiB
JavaScript
Raw Normal View History

2018-12-21 09:58:52 +08:00
/**
2019-03-20 17:44:05 +08:00
*
2019-04-16 13:35:25 +08:00
* @title 列过滤面板
2019-04-18 10:50:38 +08:00
* @parent 列操作-隐藏 Hide
2019-04-22 15:44:14 +08:00
* @description 点击表头右侧按钮设置显示或隐藏表格列可以自定义设置显示某列通过ifshow属性控制默认值为true显示表格所有列afterFilter方法为列过滤后触发的回调函数
2019-04-23 20:11:38 +08:00
* demo0802
2019-03-20 17:44:05 +08:00
*/
2018-12-21 09:58:52 +08:00
2019-03-20 17:44:05 +08:00
import React, { Component } from 'react';
2019-04-22 15:44:14 +08:00
import {Icon,Popover} from "tinper-bee";
2019-03-20 17:44:05 +08:00
import Table from '../../src';
import filterColumn from '../../src/lib/filterColumn';
import sum from '../../src/lib/sum';
2019-04-22 15:44:14 +08:00
const data = [
{
orderCode:"NU0391025",
supplierName: "xx供应商",
type_name: "1",
purchasing:'组织c',
purchasingGroup:"aa",
voucherDate:"2018年03月18日",
approvalState_name:"已审批",
confirmState_name:"执行中",
closeState_name:"未关闭",
key: "1"
},
{
orderCode:"NU0391026",
supplierName: "xx供应商",
type_name: "2",
purchasing:'组织a',
purchasingGroup:"bb",
voucherDate:"2018年02月05日",
approvalState_name:"已审批",
confirmState_name:"待确认",
closeState_name:"未关闭",
key: "2"
},
{
orderCode:"NU0391027",
supplierName: "xx供应商",
type_name: "3",
purchasing:'组织b',
purchasingGroup:"aa",
voucherDate:"2018年07月01日",
approvalState_name:"已审批",
confirmState_name:"终止",
closeState_name:"已关闭",
key: "3"
}
2018-12-21 09:58:52 +08:00
];
2019-03-20 17:44:05 +08:00
const FilterColumnTable = filterColumn(Table, Popover, Icon);
const defaultProps21 = {
prefixCls: "bee-table"
};
2018-12-21 09:58:52 +08:00
2019-03-20 17:44:05 +08:00
class Demo21 extends Component {
constructor(props) {
super(props);
this.state ={
2019-04-22 15:44:14 +08:00
columns: [
{
title: "序号",
dataIndex: "index",
key: "index",
width: 80,
fixed: 'left',
render(text, record, index){return index + 1}
},
{
title: "订单编号",
dataIndex: "orderCode",
key: "orderCode",
width: 100,
fixed: 'left',
},
{
title: "供应商名称",
dataIndex: "supplierName",
key: "supplierName",
width: 150
},
{
title: "类型",
dataIndex: "type_name",
key: "type_name",
width: 100
},
{
title: "采购组织",
dataIndex: "purchasing",
key: "purchasing",
width: 100
},
]};
2019-03-20 17:44:05 +08:00
}
afterFilter = (optData,columns)=>{
if(optData.key == 'b'){
if(optData.ifshow){
columns[2].ifshow = false;
}else{
columns[2].ifshow = true;
}
this.setState({
columns21 :columns,
showFilterPopover:true
});
}
}
2018-12-21 09:58:52 +08:00
render() {
2019-04-22 15:44:14 +08:00
return <FilterColumnTable
columns={this.state.columns}
data={data}
afterFilter={this.afterFilter}
showFilterPopover={this.state.showFilterPopover}
/>;
2018-12-21 09:58:52 +08:00
}
}
2019-04-22 15:44:14 +08:00
Demo21.defaultProps = defaultProps21;
2019-03-20 17:44:05 +08:00
export default Demo21;