weaver_trunk_cli/pc4mobx/hrm/public/valhalla/stores/table.js

96 lines
1.7 KiB
JavaScript

import {
observable,
action,
} from 'mobx';
import {
WeaTableNew
} from 'comsMobx';
import {
WeaLocaleProvider,
} from 'ecCom';
import {
Modal,
} from 'antd';
const {
TableStore
} = WeaTableNew;
const getLabel = WeaLocaleProvider.getLabel;
const confirm = Modal.confirm;
export default class TableListStore {
constructor(root) {
this.root = root;
}
get tableProps() {
return {
hasOrder: true,
needScroll: true,
}
}
@observable tableStore = new TableStore();
@action init = (config) => {
Object.keys(config).forEach(key => {
this[key] = config[key];
})
}
@action fetchTableList = (params = {}) => {
this.api(params).then(datas => {
const {
sessionkey,
} = datas;
this.tableStore = new TableStore();
this.tableStore.getDatas(sessionkey, 1);
})
}
reRenderColumns = (columns) => {
this._reRenderColumns && this._reRenderColumns(columns);
}
onOperatesClick = (record, rowIndex, operate) => {
this._onOperatesClick && this._onOperatesClick(record, rowIndex, operate);
}
colSet = () => {
this.tableStore.setColSetVisible(true);
this.tableStore.tableColSet(true)
}
showConfirm = (msg) => {
return new Promise((resolve, reject) => {
confirm({
title: getLabel('131329', '信息确认'),
content: msg,
okText: getLabel('33703', '确定'),
cancelText: getLabel('32694', '取消'),
onOk() {
resolve();
},
onCancel() {
return false;
},
});
})
}
showLog = (type, id) => {
const params = {
logSmallType: type,
};
if (id) {
Object.assign(params, {
targetId: id,
});
}
window.setLogViewProps(params);
}
exportExcel = () => {
this.tableStore.exportAll();
}
}