123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- export default class ButtonAction {
- constructor(comp) {
- this.action = comp.action;
- this.comp = comp;
- }
-
- didAllInstance = () => {
- this.setBtnHandleMap();
- }
- // 生成按钮map
- setBtnHandleMap = () => {
- this.buttonHandleMap = {
- // 打印
- 'print': this.printTable,
- // 输出
- 'output': this.outputTable
- }
- }
- // 第一次进页面的按钮状态
- initPageButton = () => {
- const {props} = this.comp;
- const {
- button
- } = props;
- button.setButtonVisible({
- approveinfo: false,
- cardrpt: false,
- file: false
- });
- }
- // 按钮点击回调
- headerClick = (props, btnCode) => {
- if(typeof this.buttonHandleMap[btnCode] === 'function') {
- this.buttonHandleMap[btnCode]();
- }
- }
- // 打印
- printTable = () => {
- const {props} = this.comp;
- const {leave, editTable, meta} = props;
- let tableWrapper = document.getElementById('mainTable');
- this.print(tableWrapper, {
- title: leave.language['gx6008-000067'], // 录用办理
- maker: leave.language['gx6008-000068'], // 制作者
- date: leave.language['gx6008-000069'], // 制作日期
- tableInfo: {
- data: editTable.getAllRows('list'),
- tableTmp: meta.getMeta()['list']
- },
- beforeAppend: (data) => {
- data[0].map((item, rowIndex) => {
- delete item[0];
- });
- data[1].map((item) => {
- item.length = item.length - 1;
- });
- return data;
- }
- });
- }
- // 输出
- outputTable = () => {
- const {
- props: {
- editTable,
- leave: {
- language
- },
- meta
- }
- } = this.comp;
- let tableWrapper = document.getElementById('mainTable');
- let tableData = editTable.getAllData('list');
- this.exportHtml(tableWrapper, {
- fileName: language['gx6008-000067'] // '录用办理'
- }, {
- meta: meta.getMeta()['list'],
- data: tableData.rows,
- showIndex: false
- });
- }
- // 附件管理
- fileManager = (selectedRows) => {
- const { dispatch } = this.comp.props;
- dispatch({
- type: 'leave/update',
- payload: {
- fileManagerModalVisible: true
- }
- });
- }
- }
|