vxe-table 3.22.9 → 3.22.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/es/grid/src/grid.js +251 -165
  2. package/es/style.css +1 -1
  3. package/es/table/module/custom/panel.js +3 -3
  4. package/es/table/module/export/mixin.js +53 -33
  5. package/es/table/render/index.js +12 -2
  6. package/es/ui/index.js +1 -1
  7. package/es/ui/src/log.js +1 -1
  8. package/lib/grid/src/grid.js +319 -209
  9. package/lib/grid/src/grid.min.js +1 -1
  10. package/lib/index.umd.js +436 -261
  11. package/lib/index.umd.min.js +1 -1
  12. package/lib/style.css +1 -1
  13. package/lib/table/module/custom/panel.js +3 -3
  14. package/lib/table/module/custom/panel.min.js +1 -1
  15. package/lib/table/module/export/mixin.js +67 -40
  16. package/lib/table/module/export/mixin.min.js +1 -1
  17. package/lib/table/render/index.js +24 -2
  18. package/lib/table/render/index.min.js +1 -1
  19. package/lib/ui/index.js +1 -1
  20. package/lib/ui/index.min.js +1 -1
  21. package/lib/ui/src/log.js +1 -1
  22. package/lib/ui/src/log.min.js +1 -1
  23. package/package.json +2 -2
  24. package/packages/grid/src/grid.ts +239 -157
  25. package/packages/table/module/custom/panel.ts +3 -3
  26. package/packages/table/module/export/mixin.ts +51 -30
  27. package/packages/table/render/index.ts +12 -2
  28. /package/es/{iconfont.1785242725062.ttf → iconfont.1785940479746.ttf} +0 -0
  29. /package/es/{iconfont.1785242725062.woff → iconfont.1785940479746.woff} +0 -0
  30. /package/es/{iconfont.1785242725062.woff2 → iconfont.1785940479746.woff2} +0 -0
  31. /package/lib/{iconfont.1785242725062.ttf → iconfont.1785940479746.ttf} +0 -0
  32. /package/lib/{iconfont.1785242725062.woff → iconfont.1785940479746.woff} +0 -0
  33. /package/lib/{iconfont.1785242725062.woff2 → iconfont.1785940479746.woff2} +0 -0
package/lib/index.umd.js CHANGED
@@ -3311,7 +3311,7 @@ function getClass(property, params) {
3311
3311
  /* unused harmony import specifier */ var VxeUI;
3312
3312
 
3313
3313
 
3314
- const version = "3.22.9";
3314
+ const version = "3.22.10";
3315
3315
  core_.VxeUI.version = version;
3316
3316
  core_.VxeUI.tableVersion = version;
3317
3317
  core_.VxeUI.setConfig({
@@ -4097,7 +4097,7 @@ function getPopupContainer(appendTo) {
4097
4097
  const {
4098
4098
  log: log_log
4099
4099
  } = core_.VxeUI;
4100
- const tableVersion = `table v${"3.22.9"}`;
4100
+ const tableVersion = `table v${"3.22.10"}`;
4101
4101
  function createComponentLog(name) {
4102
4102
  const uiVersion = core_.VxeUI.uiVersion ? `ui v${core_.VxeUI.uiVersion}` : '';
4103
4103
  const ganttVersion = core_.VxeUI.ganttVersion ? `gantt v${core_.VxeUI.ganttVersion}` : '';
@@ -12259,7 +12259,7 @@ function panel_hideDropTip($xeTableCustomPanel) {
12259
12259
  class: 'vxe-table-custom-popup--column-td col--align'
12260
12260
  }, VxeUIRadioGroupComponent ? [h(VxeUIRadioGroupComponent, {
12261
12261
  props: {
12262
- value: column.renderAlign || '',
12262
+ value: column.renderAlign || 'left',
12263
12263
  type: 'button',
12264
12264
  strict: false,
12265
12265
  disabled: isHidden,
@@ -12281,7 +12281,7 @@ function panel_hideDropTip($xeTableCustomPanel) {
12281
12281
  class: 'vxe-table-custom-popup--column-td col--header-align'
12282
12282
  }, isColGroup ? [h('span', '-')] : VxeUIRadioGroupComponent ? [h(VxeUIRadioGroupComponent, {
12283
12283
  props: {
12284
- value: column.renderHeaderAlign || '',
12284
+ value: column.renderHeaderAlign || 'left',
12285
12285
  type: 'button',
12286
12286
  strict: false,
12287
12287
  disabled: isHidden,
@@ -12303,7 +12303,7 @@ function panel_hideDropTip($xeTableCustomPanel) {
12303
12303
  class: 'vxe-table-custom-popup--column-td col--footer-align'
12304
12304
  }, isColGroup ? [h('span', '-')] : VxeUIRadioGroupComponent ? [h(VxeUIRadioGroupComponent, {
12305
12305
  props: {
12306
- value: column.renderFooterAlign || '',
12306
+ value: column.renderFooterAlign || 'left',
12307
12307
  type: 'button',
12308
12308
  strict: false,
12309
12309
  disabled: isHidden,
@@ -18400,18 +18400,20 @@ const convertToRows = originColumns => {
18400
18400
  sortData
18401
18401
  } = gridReactData;
18402
18402
  const {
18403
- beforeQueryAll,
18404
- afterQueryAll,
18403
+ beforeQueryAll: oldBeforeQueryAll,
18404
+ afterQueryAll: oldAfterQueryAll,
18405
18405
  ajax = {}
18406
18406
  } = proxyOpts;
18407
18407
  const resConfigs = proxyOpts.response || proxyOpts.props || {};
18408
- const ajaxMethods = ajax.queryAll;
18409
- const queryAllSuccessMethods = ajax.queryAllSuccess;
18410
- const queryAllErrorMethods = ajax.queryAllError;
18411
- if (!ajaxMethods) {
18408
+ const beforeQueryAllMethod = ajax.beforeQueryAll;
18409
+ const queryAllMethod = ajax.queryAll;
18410
+ const afterQueryAllMethod = ajax.afterQueryAll;
18411
+ const queryAllSuccessMethod = ajax.queryAllSuccess;
18412
+ const queryAllErrorMethod = ajax.queryAllError;
18413
+ if (!queryAllMethod) {
18412
18414
  export_mixin_errLog('vxe.error.notFunc', ['proxy-config.ajax.queryAll']);
18413
18415
  }
18414
- if (ajaxMethods) {
18416
+ if (queryAllMethod) {
18415
18417
  const params = {
18416
18418
  $table: $xeTable,
18417
18419
  $grid: $xeGrid,
@@ -18422,44 +18424,72 @@ const convertToRows = originColumns => {
18422
18424
  form: gridReactData.formData,
18423
18425
  options: handleOptions
18424
18426
  };
18425
- return Promise.resolve((beforeQueryAll || ajaxMethods)(params)).then(rest => {
18426
- const listProp = resConfigs.list;
18427
- let tdData = [];
18428
- if (listProp) {
18429
- if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(listProp)) {
18430
- tdData = listProp({
18431
- data: rest,
18432
- $table: $xeTable,
18433
- $grid: $xeGrid,
18434
- $gantt: $xeGantt
18427
+ const handleQueryAll = () => {
18428
+ return Promise.resolve((oldBeforeQueryAll || queryAllMethod)(params)).then(rest => {
18429
+ if (afterQueryAllMethod) {
18430
+ afterQueryAllMethod({
18431
+ ...params,
18432
+ response: rest,
18433
+ status: 'success'
18435
18434
  });
18436
18435
  } else {
18437
- tdData = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rest) ? rest : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rest, listProp);
18436
+ const listProp = resConfigs.list;
18437
+ let tdData = [];
18438
+ if (listProp) {
18439
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(listProp)) {
18440
+ tdData = listProp({
18441
+ data: rest,
18442
+ $table: $xeTable,
18443
+ $grid: $xeGrid,
18444
+ $gantt: $xeGantt
18445
+ });
18446
+ } else {
18447
+ tdData = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rest) ? rest : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rest, listProp);
18448
+ }
18449
+ } else {
18450
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rest)) {
18451
+ tdData = rest;
18452
+ }
18453
+ }
18454
+ handleOptions.data = tdData;
18455
+ if (oldAfterQueryAll) {
18456
+ oldAfterQueryAll({
18457
+ ...params,
18458
+ response: rest
18459
+ });
18460
+ }
18438
18461
  }
18439
- } else {
18440
- if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rest)) {
18441
- tdData = rest;
18462
+ if (queryAllSuccessMethod) {
18463
+ queryAllSuccessMethod({
18464
+ ...params,
18465
+ response: rest
18466
+ });
18442
18467
  }
18443
- }
18444
- handleOptions.data = tdData;
18445
- if (afterQueryAll) {
18446
- afterQueryAll(params);
18447
- }
18448
- if (queryAllSuccessMethods) {
18449
- queryAllSuccessMethods({
18450
- ...params,
18451
- response: rest
18452
- });
18453
- }
18454
- return handleExport($xeTable, handleOptions);
18455
- }).catch(rest => {
18456
- if (queryAllErrorMethods) {
18457
- queryAllErrorMethods({
18458
- ...params,
18459
- response: rest
18460
- });
18461
- }
18462
- });
18468
+ return handleExport($xeTable, handleOptions);
18469
+ }).catch(rest => {
18470
+ if (afterQueryAllMethod) {
18471
+ afterQueryAllMethod({
18472
+ ...params,
18473
+ response: rest,
18474
+ status: 'error'
18475
+ });
18476
+ }
18477
+ if (queryAllErrorMethod) {
18478
+ queryAllErrorMethod({
18479
+ ...params,
18480
+ response: rest
18481
+ });
18482
+ }
18483
+ });
18484
+ };
18485
+ if (beforeQueryAllMethod) {
18486
+ return Promise.resolve(beforeQueryAllMethod(params)).then(status => {
18487
+ if (status !== false) {
18488
+ return handleQueryAll();
18489
+ }
18490
+ });
18491
+ }
18492
+ return handleQueryAll();
18463
18493
  }
18464
18494
  }
18465
18495
  } else if (mode === 'current') {
@@ -24826,14 +24856,14 @@ function grid_createInternalData() {
24826
24856
  const pagerOpts = $xeGrid.computePagerOpts;
24827
24857
  const toolbarOpts = $xeGrid.computeToolbarOpts;
24828
24858
  const {
24829
- beforeQuery,
24830
- afterQuery,
24831
- beforeQueryFooter,
24832
- afterQueryFooter,
24833
- beforeDelete,
24834
- afterDelete,
24835
- beforeSave,
24836
- afterSave,
24859
+ beforeQuery: oldBeforeQuery,
24860
+ afterQuery: oldAfterQuery,
24861
+ beforeQueryFooter: oldBeforeQueryFooter,
24862
+ afterQueryFooter: oldAfterQueryFooter,
24863
+ beforeDelete: oldBeforeDelete,
24864
+ afterDelete: oldAfterDelete,
24865
+ beforeSave: oldBeforeSave,
24866
+ afterSave: oldAfterSave,
24837
24867
  ajax = {}
24838
24868
  } = proxyOpts;
24839
24869
  const resConfigs = proxyOpts.response || proxyOpts.props || {};
@@ -24892,10 +24922,12 @@ function grid_createInternalData() {
24892
24922
  case 'reload':
24893
24923
  case 'query':
24894
24924
  {
24895
- const qMethods = ajax.query;
24896
- const qsMethods = ajax.querySuccess;
24897
- const qeMethods = ajax.queryError;
24898
- if (qMethods) {
24925
+ const bqMethod = ajax.beforeQuery;
24926
+ const qMethod = ajax.query;
24927
+ const aqMethod = ajax.afterQuery;
24928
+ const qsMethod = ajax.querySuccess;
24929
+ const qeMethod = ajax.queryError;
24930
+ if (qMethod) {
24899
24931
  const isInited = code === 'initial';
24900
24932
  const isReload = code === 'reload';
24901
24933
  if (!isInited && reactData.tableLoading) {
@@ -24981,82 +25013,110 @@ function grid_createInternalData() {
24981
25013
  sorts: sortList,
24982
25014
  filters: filterList,
24983
25015
  form: formData,
24984
- options: qMethods
25016
+ options: qMethod
24985
25017
  };
24986
- reactData.sortData = sortList;
24987
- reactData.filterData = filterList;
24988
- reactData.tableLoading = true;
24989
- return Promise.all([Promise.resolve((beforeQuery || qMethods)(commitParams, ...args)), operPromise]).then(([rest]) => {
24990
- let tableData = [];
24991
- reactData.tableLoading = false;
24992
- if (rest) {
24993
- const reParams = {
24994
- data: rest,
24995
- $table: $xeTable,
24996
- $grid: $xeGrid,
24997
- $gantt: null
24998
- };
24999
- if (pagerConfig && isEnableConf(pagerOpts)) {
25000
- const totalProp = resConfigs.total;
25001
- const total = (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(totalProp) ? totalProp(reParams) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rest, totalProp || 'page.total')) || 0;
25002
- tablePage.total = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(total);
25003
- const resultProp = resConfigs.result;
25004
- tableData = (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(resultProp) ? resultProp(reParams) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rest, resultProp || 'result')) || [];
25005
- // 检验当前页码,不能超出当前最大页数
25006
- const pageCount = Math.max(Math.ceil(total / tablePage.pageSize), 1);
25007
- if (tablePage.currentPage > pageCount) {
25008
- tablePage.currentPage = pageCount;
25009
- }
25018
+ const handleQuery = () => {
25019
+ reactData.sortData = sortList;
25020
+ reactData.filterData = filterList;
25021
+ reactData.tableLoading = true;
25022
+ return Promise.all([Promise.resolve((oldBeforeQuery || qMethod)(commitParams, ...args)), operPromise]).then(([rest]) => {
25023
+ reactData.tableLoading = false;
25024
+ if (aqMethod) {
25025
+ aqMethod({
25026
+ ...commitParams,
25027
+ response: rest,
25028
+ status: 'success'
25029
+ }, ...args);
25010
25030
  } else {
25011
- const listProp = resConfigs.list;
25012
- if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rest)) {
25013
- tableData = rest;
25014
- } else if (listProp) {
25015
- tableData = (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(listProp) ? listProp(reParams) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rest, listProp)) || [];
25016
- }
25017
- }
25018
- if (showFooter) {
25019
- const fdProp = resConfigs.footerData;
25020
- const footerList = fdProp ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(fdProp) ? fdProp(reParams) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rest, fdProp) : [];
25021
- if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(footerList)) {
25022
- reactData.footerData = footerList;
25031
+ let tableData = [];
25032
+ if (rest) {
25033
+ const reParams = {
25034
+ data: rest,
25035
+ $table: $xeTable,
25036
+ $grid: $xeGrid,
25037
+ $gantt: null
25038
+ };
25039
+ if (pagerConfig && isEnableConf(pagerOpts)) {
25040
+ const totalProp = resConfigs.total;
25041
+ const total = (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(totalProp) ? totalProp(reParams) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rest, totalProp || 'page.total')) || 0;
25042
+ tablePage.total = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(total);
25043
+ const resultProp = resConfigs.result;
25044
+ tableData = (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(resultProp) ? resultProp(reParams) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rest, resultProp || 'result')) || [];
25045
+ // 检验当前页码,不能超出当前最大页数
25046
+ const pageCount = Math.max(Math.ceil(total / tablePage.pageSize), 1);
25047
+ if (tablePage.currentPage > pageCount) {
25048
+ tablePage.currentPage = pageCount;
25049
+ }
25050
+ } else {
25051
+ const listProp = resConfigs.list;
25052
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rest)) {
25053
+ tableData = rest;
25054
+ } else if (listProp) {
25055
+ tableData = (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(listProp) ? listProp(reParams) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rest, listProp)) || [];
25056
+ }
25057
+ }
25058
+ if (showFooter) {
25059
+ const fdProp = resConfigs.footerData;
25060
+ const footerList = fdProp ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(fdProp) ? fdProp(reParams) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rest, fdProp) : [];
25061
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(footerList)) {
25062
+ reactData.footerData = footerList;
25063
+ }
25064
+ }
25023
25065
  }
25024
- }
25025
- }
25026
- if ($xeTable) {
25027
- $xeTable.loadData(tableData);
25028
- } else {
25029
- $xeGrid.$nextTick(() => {
25030
- const $xeTable = $xeGrid.$refs.refTable;
25031
25066
  if ($xeTable) {
25032
25067
  $xeTable.loadData(tableData);
25068
+ } else {
25069
+ $xeGrid.$nextTick(() => {
25070
+ const $xeTable = $xeGrid.$refs.refTable;
25071
+ if ($xeTable) {
25072
+ $xeTable.loadData(tableData);
25073
+ }
25074
+ });
25033
25075
  }
25034
- });
25035
- }
25036
- if (afterQuery) {
25037
- afterQuery(commitParams, ...args);
25038
- }
25039
- if (qsMethods) {
25040
- qsMethods({
25041
- ...commitParams,
25042
- response: rest
25043
- });
25044
- }
25045
- return {
25046
- status: true
25047
- };
25048
- }).catch(rest => {
25049
- reactData.tableLoading = false;
25050
- if (qeMethods) {
25051
- qeMethods({
25052
- ...commitParams,
25053
- response: rest
25054
- });
25055
- }
25056
- return {
25057
- status: false
25058
- };
25059
- });
25076
+ if (oldAfterQuery) {
25077
+ oldAfterQuery({
25078
+ ...commitParams,
25079
+ response: rest
25080
+ }, ...args);
25081
+ }
25082
+ }
25083
+ if (qsMethod) {
25084
+ qsMethod({
25085
+ ...commitParams,
25086
+ response: rest
25087
+ });
25088
+ }
25089
+ return {
25090
+ status: true
25091
+ };
25092
+ }).catch(rest => {
25093
+ reactData.tableLoading = false;
25094
+ if (aqMethod) {
25095
+ aqMethod({
25096
+ ...commitParams,
25097
+ response: rest,
25098
+ status: 'error'
25099
+ }, ...args);
25100
+ }
25101
+ if (qeMethod) {
25102
+ qeMethod({
25103
+ ...commitParams,
25104
+ response: rest
25105
+ });
25106
+ }
25107
+ return {
25108
+ status: false
25109
+ };
25110
+ });
25111
+ };
25112
+ if (bqMethod) {
25113
+ return Promise.resolve(bqMethod(commitParams, ...args)).then(status => {
25114
+ if (status !== false) {
25115
+ return handleQuery();
25116
+ }
25117
+ });
25118
+ }
25119
+ return handleQuery();
25060
25120
  } else {
25061
25121
  grid_errLog('vxe.error.notFunc', ['proxy-config.ajax.query']);
25062
25122
  }
@@ -25064,49 +25124,88 @@ function grid_createInternalData() {
25064
25124
  }
25065
25125
  case 'queryFooter':
25066
25126
  {
25067
- const qfMethods = ajax.queryFooter;
25068
- const qfSuccessMethods = ajax.queryFooterSuccess;
25069
- const qfErrorMethods = ajax.queryFooterError;
25070
- if (qfMethods) {
25127
+ const bqfMethod = ajax.beforeQueryFooter;
25128
+ const qfMethod = ajax.queryFooter;
25129
+ const aqfMethod = ajax.afterQueryFooter;
25130
+ const qfSuccessMethod = ajax.queryFooterSuccess;
25131
+ const qfErrorMethod = ajax.queryFooterError;
25132
+ if (qfMethod) {
25071
25133
  let filterList = [];
25072
25134
  if ($xeTable) {
25073
25135
  filterList = $xeTable.getCheckedFilters();
25074
25136
  }
25137
+ let pageParams = {};
25138
+ if (pagerConfig) {
25139
+ if (isEnableConf(pagerConfig)) {
25140
+ pageParams = {
25141
+ ...tablePage
25142
+ };
25143
+ }
25144
+ }
25075
25145
  const commitParams = {
25076
25146
  $table: $xeTable,
25077
25147
  $grid: $xeGrid,
25078
25148
  $gantt: null,
25079
25149
  code,
25080
25150
  button,
25151
+ page: pageParams,
25081
25152
  filters: filterList,
25082
25153
  form: formData,
25083
- options: qfMethods
25154
+ options: qfMethod
25084
25155
  };
25085
- return Promise.resolve((beforeQueryFooter || qfMethods)(commitParams, ...args)).then(rest => {
25086
- reactData.footerData = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rest) ? rest : [];
25087
- if (afterQueryFooter) {
25088
- afterQueryFooter(commitParams, ...args);
25089
- }
25090
- if (qfSuccessMethods) {
25091
- qfSuccessMethods({
25092
- ...commitParams,
25093
- response: rest
25094
- });
25095
- }
25096
- return {
25097
- status: true
25098
- };
25099
- }).catch(rest => {
25100
- if (qfErrorMethods) {
25101
- qfErrorMethods({
25102
- ...commitParams,
25103
- response: rest
25104
- });
25105
- }
25106
- return {
25107
- status: false
25108
- };
25109
- });
25156
+ const handleQueryFooter = () => {
25157
+ return Promise.resolve((oldBeforeQueryFooter || qfMethod)(commitParams, ...args)).then(rest => {
25158
+ if (aqfMethod) {
25159
+ aqfMethod({
25160
+ ...commitParams,
25161
+ response: rest,
25162
+ status: 'success'
25163
+ }, ...args);
25164
+ } else {
25165
+ reactData.footerData = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rest) ? rest : [];
25166
+ if (oldAfterQueryFooter) {
25167
+ oldAfterQueryFooter({
25168
+ ...commitParams,
25169
+ response: rest
25170
+ }, ...args);
25171
+ }
25172
+ }
25173
+ if (qfSuccessMethod) {
25174
+ qfSuccessMethod({
25175
+ ...commitParams,
25176
+ response: rest
25177
+ });
25178
+ }
25179
+ return {
25180
+ status: true
25181
+ };
25182
+ }).catch(rest => {
25183
+ if (aqfMethod) {
25184
+ aqfMethod({
25185
+ ...commitParams,
25186
+ response: rest,
25187
+ status: 'error'
25188
+ }, ...args);
25189
+ }
25190
+ if (qfErrorMethod) {
25191
+ qfErrorMethod({
25192
+ ...commitParams,
25193
+ response: rest
25194
+ });
25195
+ }
25196
+ return {
25197
+ status: false
25198
+ };
25199
+ });
25200
+ };
25201
+ if (bqfMethod) {
25202
+ return Promise.resolve(bqfMethod(commitParams, ...args)).then(status => {
25203
+ if (status !== false) {
25204
+ return handleQueryFooter();
25205
+ }
25206
+ });
25207
+ }
25208
+ return handleQueryFooter();
25110
25209
  } else {
25111
25210
  grid_errLog('vxe.error.notFunc', ['proxy-config.ajax.queryFooter']);
25112
25211
  }
@@ -25114,10 +25213,12 @@ function grid_createInternalData() {
25114
25213
  }
25115
25214
  case 'delete':
25116
25215
  {
25117
- const dMethods = ajax.delete;
25118
- const deleteSuccessMethods = ajax.deleteSuccess;
25119
- const deleteErrorMethods = ajax.deleteError;
25120
- if (dMethods) {
25216
+ const bdMethod = ajax.beforeDelete;
25217
+ const dMethod = ajax.delete;
25218
+ const adMethod = ajax.afterDelete;
25219
+ const deleteSuccessMethod = ajax.deleteSuccess;
25220
+ const deleteErrorMethod = ajax.deleteError;
25221
+ if (dMethod) {
25121
25222
  const selectRecords = $xeTable.getCheckboxRecords();
25122
25223
  const removeRecords = selectRecords.filter(row => !$xeTable.isInsertByRow(row));
25123
25224
  const body = {
@@ -25131,64 +25232,92 @@ function grid_createInternalData() {
25131
25232
  button,
25132
25233
  body,
25133
25234
  form: formData,
25134
- options: dMethods
25235
+ options: dMethod
25135
25236
  };
25136
- const applyArgs = [commitParams].concat(args);
25137
25237
  if (selectRecords.length) {
25138
25238
  return $xeGrid.handleDeleteRow(code, 'vxe.grid.deleteSelectRecord', () => {
25139
25239
  if (!removeRecords.length) {
25140
25240
  return $xeTable.remove(selectRecords);
25141
25241
  }
25142
- reactData.tableLoading = true;
25143
- return Promise.resolve((beforeDelete || dMethods)(...applyArgs)).then(rest => {
25144
- reactData.tableLoading = false;
25145
- $xeTable.setPendingRow(removeRecords, false);
25146
- if (isRespMsg) {
25147
- if (core_.VxeUI.modal) {
25148
- core_.VxeUI.modal.message({
25149
- content: $xeGrid.getRespMsg(rest, 'vxe.grid.delSuccess'),
25242
+ const handleDelete = () => {
25243
+ reactData.tableLoading = true;
25244
+ return Promise.resolve((oldBeforeDelete || dMethod)(commitParams, ...args)).then(rest => {
25245
+ reactData.tableLoading = false;
25246
+ if (adMethod) {
25247
+ adMethod({
25248
+ ...commitParams,
25249
+ response: rest,
25150
25250
  status: 'success'
25251
+ }, ...args);
25252
+ } else {
25253
+ $xeTable.setPendingRow(removeRecords, false);
25254
+ if (isRespMsg) {
25255
+ if (core_.VxeUI.modal) {
25256
+ core_.VxeUI.modal.message({
25257
+ content: $xeGrid.getRespMsg(rest, 'vxe.grid.delSuccess'),
25258
+ status: 'success'
25259
+ });
25260
+ }
25261
+ }
25262
+ if (oldAfterDelete) {
25263
+ oldAfterDelete({
25264
+ ...commitParams,
25265
+ response: rest
25266
+ }, ...args);
25267
+ } else {
25268
+ internalData.uFoot = true;
25269
+ $xeGrid.commitProxy('query');
25270
+ internalData.uFoot = false;
25271
+ $xeGrid.updateQueryFooter();
25272
+ }
25273
+ }
25274
+ if (deleteSuccessMethod) {
25275
+ deleteSuccessMethod({
25276
+ ...commitParams,
25277
+ response: rest
25151
25278
  });
25152
25279
  }
25153
- }
25154
- if (afterDelete) {
25155
- afterDelete(...applyArgs);
25156
- } else {
25157
- internalData.uFoot = true;
25158
- $xeGrid.commitProxy('query');
25159
- internalData.uFoot = false;
25160
- $xeGrid.updateQueryFooter();
25161
- }
25162
- if (deleteSuccessMethods) {
25163
- deleteSuccessMethods({
25164
- ...commitParams,
25165
- response: rest
25166
- });
25167
- }
25168
- return {
25169
- status: true
25170
- };
25171
- }).catch(rest => {
25172
- reactData.tableLoading = false;
25173
- if (isRespMsg) {
25174
- if (core_.VxeUI.modal) {
25175
- core_.VxeUI.modal.message({
25176
- id: code,
25177
- content: $xeGrid.getRespMsg(rest, 'vxe.grid.operError'),
25280
+ return {
25281
+ status: true
25282
+ };
25283
+ }).catch(rest => {
25284
+ reactData.tableLoading = false;
25285
+ if (adMethod) {
25286
+ adMethod({
25287
+ ...commitParams,
25288
+ response: rest,
25178
25289
  status: 'error'
25290
+ }, ...args);
25291
+ } else {
25292
+ if (isRespMsg) {
25293
+ if (core_.VxeUI.modal) {
25294
+ core_.VxeUI.modal.message({
25295
+ id: code,
25296
+ content: $xeGrid.getRespMsg(rest, 'vxe.grid.operError'),
25297
+ status: 'error'
25298
+ });
25299
+ }
25300
+ }
25301
+ }
25302
+ if (deleteErrorMethod) {
25303
+ deleteErrorMethod({
25304
+ ...commitParams,
25305
+ response: rest
25179
25306
  });
25180
25307
  }
25181
- }
25182
- if (deleteErrorMethods) {
25183
- deleteErrorMethods({
25184
- ...commitParams,
25185
- response: rest
25186
- });
25187
- }
25188
- return {
25189
- status: false
25190
- };
25191
- });
25308
+ return {
25309
+ status: false
25310
+ };
25311
+ });
25312
+ };
25313
+ if (bdMethod) {
25314
+ return Promise.resolve(bdMethod(commitParams, ...args)).then(status => {
25315
+ if (status !== false) {
25316
+ return handleDelete();
25317
+ }
25318
+ });
25319
+ }
25320
+ return handleDelete();
25192
25321
  });
25193
25322
  } else {
25194
25323
  if (isActiveMsg) {
@@ -25208,10 +25337,12 @@ function grid_createInternalData() {
25208
25337
  }
25209
25338
  case 'save':
25210
25339
  {
25211
- const ajaxMethods = ajax.save;
25212
- const saveSuccessMethods = ajax.saveSuccess;
25213
- const saveErrorMethods = ajax.saveError;
25214
- if (ajaxMethods) {
25340
+ const bSaveMethod = ajax.beforeSave;
25341
+ const sMethod = ajax.save;
25342
+ const aSaveMethod = ajax.afterSave;
25343
+ const sSuccessMethod = ajax.saveSuccess;
25344
+ const sErrorMethod = ajax.saveError;
25345
+ if (sMethod) {
25215
25346
  const body = $xeGrid.getRecordset();
25216
25347
  const {
25217
25348
  insertRecords,
@@ -25227,9 +25358,8 @@ function grid_createInternalData() {
25227
25358
  button,
25228
25359
  body,
25229
25360
  form: formData,
25230
- options: ajaxMethods
25361
+ options: sMethod
25231
25362
  };
25232
- const applyArgs = [commitParams].concat(args);
25233
25363
  // 排除掉新增且标记为删除的数据
25234
25364
  if (insertRecords.length) {
25235
25365
  body.pendingRecords = pendingRecords.filter(row => insertRecords.indexOf(row) === -1);
@@ -25249,56 +25379,79 @@ function grid_createInternalData() {
25249
25379
  return;
25250
25380
  }
25251
25381
  if (body.insertRecords.length || removeRecords.length || updateRecords.length || body.pendingRecords.length) {
25252
- reactData.tableLoading = true;
25253
- return Promise.resolve((beforeSave || ajaxMethods)(...applyArgs)).then(rest => {
25254
- reactData.tableLoading = false;
25255
- $xeTable.clearPendingRow();
25256
- if (isRespMsg) {
25257
- if (core_.VxeUI.modal) {
25258
- core_.VxeUI.modal.message({
25259
- content: $xeGrid.getRespMsg(rest, 'vxe.grid.saveSuccess'),
25260
- status: 'success'
25382
+ const handleSave = () => {
25383
+ reactData.tableLoading = true;
25384
+ return Promise.resolve((oldBeforeSave || sMethod)(commitParams, ...args)).then(rest => {
25385
+ reactData.tableLoading = false;
25386
+ if (aSaveMethod) {
25387
+ $xeTable.clearPendingRow();
25388
+ if (isRespMsg) {
25389
+ if (core_.VxeUI.modal) {
25390
+ core_.VxeUI.modal.message({
25391
+ content: $xeGrid.getRespMsg(rest, 'vxe.grid.saveSuccess'),
25392
+ status: 'success'
25393
+ });
25394
+ }
25395
+ }
25396
+ if (oldAfterSave) {
25397
+ oldAfterSave({
25398
+ ...commitParams,
25399
+ response: rest
25400
+ }, ...args);
25401
+ } else {
25402
+ internalData.uFoot = true;
25403
+ $xeGrid.commitProxy('query');
25404
+ internalData.uFoot = false;
25405
+ $xeGrid.updateQueryFooter();
25406
+ }
25407
+ }
25408
+ if (sSuccessMethod) {
25409
+ sSuccessMethod({
25410
+ ...commitParams,
25411
+ response: rest
25261
25412
  });
25262
25413
  }
25263
- }
25264
- if (afterSave) {
25265
- afterSave(...applyArgs);
25266
- } else {
25267
- internalData.uFoot = true;
25268
- $xeGrid.commitProxy('query');
25269
- internalData.uFoot = false;
25270
- $xeGrid.updateQueryFooter();
25271
- }
25272
- if (saveSuccessMethods) {
25273
- saveSuccessMethods({
25274
- ...commitParams,
25275
- response: rest
25276
- });
25277
- }
25278
- return {
25279
- status: true
25280
- };
25281
- }).catch(rest => {
25282
- reactData.tableLoading = false;
25283
- if (isRespMsg) {
25284
- if (core_.VxeUI.modal) {
25285
- core_.VxeUI.modal.message({
25286
- id: code,
25287
- content: $xeGrid.getRespMsg(rest, 'vxe.grid.operError'),
25414
+ return {
25415
+ status: true
25416
+ };
25417
+ }).catch(rest => {
25418
+ reactData.tableLoading = false;
25419
+ if (aSaveMethod) {
25420
+ aSaveMethod({
25421
+ ...commitParams,
25422
+ response: rest,
25288
25423
  status: 'error'
25424
+ }, ...args);
25425
+ } else {
25426
+ if (isRespMsg) {
25427
+ if (core_.VxeUI.modal) {
25428
+ core_.VxeUI.modal.message({
25429
+ id: code,
25430
+ content: $xeGrid.getRespMsg(rest, 'vxe.grid.operError'),
25431
+ status: 'error'
25432
+ });
25433
+ }
25434
+ }
25435
+ }
25436
+ if (sErrorMethod) {
25437
+ sErrorMethod({
25438
+ ...commitParams,
25439
+ response: rest
25289
25440
  });
25290
25441
  }
25291
- }
25292
- if (saveErrorMethods) {
25293
- saveErrorMethods({
25294
- ...commitParams,
25295
- response: rest
25296
- });
25297
- }
25298
- return {
25299
- status: false
25300
- };
25301
- });
25442
+ return {
25443
+ status: false
25444
+ };
25445
+ });
25446
+ };
25447
+ if (bSaveMethod) {
25448
+ return Promise.resolve(bSaveMethod(commitParams, ...args)).then(status => {
25449
+ if (status !== false) {
25450
+ return handleSave();
25451
+ }
25452
+ });
25453
+ }
25454
+ return handleSave();
25302
25455
  } else {
25303
25456
  if (isActiveMsg) {
25304
25457
  if (core_.VxeUI.modal) {
@@ -27357,7 +27510,18 @@ render_renderer.mixin({
27357
27510
  },
27358
27511
  FormatNumberInput: {
27359
27512
  renderTableDefault: handleNumberCell,
27360
- tableFilterDefaultMethod: handleInputFilterMethod,
27513
+ tableFilterDefaultMethod({
27514
+ option,
27515
+ row,
27516
+ column
27517
+ }) {
27518
+ const {
27519
+ data
27520
+ } = option;
27521
+ const cellValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, column.field);
27522
+ /* eslint-disable eqeqeq */
27523
+ return cellValue == data;
27524
+ },
27361
27525
  tableExportMethod(params) {
27362
27526
  const {
27363
27527
  row,
@@ -27421,7 +27585,18 @@ render_renderer.mixin({
27421
27585
  createTableFilterOptions: defaultFilterOptions,
27422
27586
  renderTableFilter: defaultFilterRender,
27423
27587
  renderTableFloatingFilter: defaultFloatingFilterRender,
27424
- tableFilterDefaultMethod: handleInputFilterMethod,
27588
+ tableFilterDefaultMethod({
27589
+ option,
27590
+ row,
27591
+ column
27592
+ }) {
27593
+ const {
27594
+ data
27595
+ } = option;
27596
+ const cellValue = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(row, column.field);
27597
+ /* eslint-disable eqeqeq */
27598
+ return cellValue == data;
27599
+ },
27425
27600
  tableExportMethod(params) {
27426
27601
  const {
27427
27602
  row,