| 123456789101112131415161718192021222324252627282930313233343536373839 |
- // 数据表格配置
- const XEUtils = require("xe-utils")
- export default {
- pageSize: 20, // 表格每一页条数
- pageSizes: [5, 10, 15, 20, 50, 100, 200, 500, 1000], // 表格可设置的一页条数
- layouts: ["PrevJump", "PrevPage", "Jump", "PageCount", "NextPage", "NextJump", "Sizes", "Total"], // 表格分页布局
- exportExcludeFields: ["checkbox", "radio"],
-
- queryData: function ({ formConfig: { data }, pagerConfig: { enabled, currentPage, pageSize } }, paramsColumns) {
- const query = enabled === false ? {} : { current: currentPage, size: pageSize }
- XEUtils.arrayEach(paramsColumns, item => {
- if (item.defaultValue) XEUtils.set(query, item.column, item.defaultValue)
- if (!valueIsNull(data, item.field || item.column)) XEUtils.set(query, item.column, XEUtils.get(data, item.field || item.column))
- })
- return query
- },
- queryExport: function ({ formConfig: { data }, pagerConfig: { total } }, paramsColumns) {
- // 判断total
- const query = { current: 1, size: total }
- XEUtils.arrayEach(paramsColumns, item => {
- if (item.defaultValue) XEUtils.set(query, item.column, item.defaultValue)
- else if (!valueIsNull(data, item.field || item.column)) XEUtils.set(query, item.column, XEUtils.get(data, item.field || item.column))
- })
-
- return query
- },
- parseData: function (res) {
- return {
- data: res.records || res, // 分析数据字段结构
- total: res.total // 分析总数字段结构
- }
- }
- }
- function valueIsNull(obj, key) {
- return XEUtils.get(obj, key) === "" || XEUtils.isNull(XEUtils.get(obj, key)) || XEUtils.isUndefined(XEUtils.get(obj, key)) || XEUtils.isEmpty(XEUtils.get(obj, key))
- }
|