vxe-gantt 3.0.24 → 3.0.25

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.
package/lib/index.umd.js CHANGED
@@ -8182,7 +8182,7 @@ var core_ = __webpack_require__(4345);
8182
8182
  ;// ./packages/ui/src/log.ts
8183
8183
 
8184
8184
  var log = core_.VxeUI.log;
8185
- var version = "gantt v".concat("3.0.24");
8185
+ var version = "gantt v".concat("3.0.25");
8186
8186
  var warnLog = log.create('warn', version);
8187
8187
  var errLog = log.create('error', version);
8188
8188
  ;// ./packages/ui/index.ts
@@ -8192,7 +8192,7 @@ var errLog = log.create('error', version);
8192
8192
  var setConfig = core_.VxeUI.setConfig,
8193
8193
  setIcon = core_.VxeUI.setIcon,
8194
8194
  checkVersion = core_.VxeUI.checkVersion;
8195
- core_.VxeUI.ganttVersion = "3.0.24";
8195
+ core_.VxeUI.ganttVersion = "3.0.25";
8196
8196
  setConfig({
8197
8197
  gantt: {
8198
8198
  // size: null,
@@ -8413,10 +8413,67 @@ function _toConsumableArray(r) {
8413
8413
  return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread();
8414
8414
  }
8415
8415
 
8416
- // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.filter.js
8417
- var es_array_filter = __webpack_require__(2008);
8416
+ ;// ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
8417
+ function _arrayWithHoles(r) {
8418
+ if (Array.isArray(r)) return r;
8419
+ }
8420
+
8418
8421
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.push.js
8419
8422
  var es_array_push = __webpack_require__(4114);
8423
+ ;// ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
8424
+
8425
+
8426
+
8427
+
8428
+
8429
+
8430
+
8431
+
8432
+ function _iterableToArrayLimit(r, l) {
8433
+ var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
8434
+ if (null != t) {
8435
+ var e,
8436
+ n,
8437
+ i,
8438
+ u,
8439
+ a = [],
8440
+ f = !0,
8441
+ o = !1;
8442
+ try {
8443
+ if (i = (t = t.call(r)).next, 0 === l) {
8444
+ if (Object(t) !== t) return;
8445
+ f = !1;
8446
+ } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
8447
+ } catch (r) {
8448
+ o = !0, n = r;
8449
+ } finally {
8450
+ try {
8451
+ if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
8452
+ } finally {
8453
+ if (o) throw n;
8454
+ }
8455
+ }
8456
+ return a;
8457
+ }
8458
+ }
8459
+
8460
+ ;// ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
8461
+
8462
+ function _nonIterableRest() {
8463
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
8464
+ }
8465
+
8466
+ ;// ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js
8467
+
8468
+
8469
+
8470
+
8471
+ function _slicedToArray(r, e) {
8472
+ return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
8473
+ }
8474
+
8475
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.filter.js
8476
+ var es_array_filter = __webpack_require__(2008);
8420
8477
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.constructor.js
8421
8478
  var es_iterator_constructor = __webpack_require__(8111);
8422
8479
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.filter.js
@@ -8909,63 +8966,6 @@ function getSlotVNs(vns) {
8909
8966
  }
8910
8967
  return [vns];
8911
8968
  }
8912
- ;// ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
8913
- function _arrayWithHoles(r) {
8914
- if (Array.isArray(r)) return r;
8915
- }
8916
-
8917
- ;// ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
8918
-
8919
-
8920
-
8921
-
8922
-
8923
-
8924
-
8925
-
8926
- function _iterableToArrayLimit(r, l) {
8927
- var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
8928
- if (null != t) {
8929
- var e,
8930
- n,
8931
- i,
8932
- u,
8933
- a = [],
8934
- f = !0,
8935
- o = !1;
8936
- try {
8937
- if (i = (t = t.call(r)).next, 0 === l) {
8938
- if (Object(t) !== t) return;
8939
- f = !1;
8940
- } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
8941
- } catch (r) {
8942
- o = !0, n = r;
8943
- } finally {
8944
- try {
8945
- if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
8946
- } finally {
8947
- if (o) throw n;
8948
- }
8949
- }
8950
- return a;
8951
- }
8952
- }
8953
-
8954
- ;// ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
8955
-
8956
- function _nonIterableRest() {
8957
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
8958
- }
8959
-
8960
- ;// ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js
8961
-
8962
-
8963
-
8964
-
8965
- function _slicedToArray(r, e) {
8966
- return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest();
8967
- }
8968
-
8969
8969
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.find.js
8970
8970
  var es_array_find = __webpack_require__(113);
8971
8971
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.iterator.find.js
@@ -11100,6 +11100,8 @@ var external_root_VxeUITable_commonjs_vxe_table_commonjs2_vxe_table_amd_vxe_tabl
11100
11100
 
11101
11101
 
11102
11102
 
11103
+
11104
+
11103
11105
 
11104
11106
 
11105
11107
 
@@ -11166,6 +11168,7 @@ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default(
11166
11168
  });
11167
11169
  function gantt_createInternalData() {
11168
11170
  return {
11171
+ uFoot: false,
11169
11172
  resizeTableWidth: 0
11170
11173
  };
11171
11174
  }
@@ -11213,6 +11216,7 @@ function gantt_createInternalData() {
11213
11216
  filterData: [],
11214
11217
  formData: {},
11215
11218
  sortData: [],
11219
+ footerData: [],
11216
11220
  tZindex: 0,
11217
11221
  tablePage: {
11218
11222
  total: 0,
@@ -11379,7 +11383,9 @@ function gantt_createInternalData() {
11379
11383
  var rest = {};
11380
11384
  var gridProps = props;
11381
11385
  propKeys.forEach(function (key) {
11382
- rest[key] = gridProps[key];
11386
+ if (gridProps[key] !== undefined) {
11387
+ rest[key] = gridProps[key];
11388
+ }
11383
11389
  });
11384
11390
  return rest;
11385
11391
  },
@@ -11387,12 +11393,14 @@ function gantt_createInternalData() {
11387
11393
  var $xeGantt = this;
11388
11394
  var props = $xeGantt;
11389
11395
  var reactData = $xeGantt.reactData;
11390
- var seqConfig = props.seqConfig,
11396
+ var showFooter = props.showFooter,
11397
+ seqConfig = props.seqConfig,
11391
11398
  pagerConfig = props.pagerConfig,
11392
11399
  editConfig = props.editConfig,
11393
11400
  proxyConfig = props.proxyConfig;
11394
11401
  var isZMax = reactData.isZMax,
11395
- tablePage = reactData.tablePage;
11402
+ tablePage = reactData.tablePage,
11403
+ footerData = reactData.footerData;
11396
11404
  var taskViewOpts = $xeGantt.computeTaskViewOpts;
11397
11405
  var tableStyle = taskViewOpts.tableStyle;
11398
11406
  var tableExtendProps = $xeGantt.computeTableExtendProps;
@@ -11411,8 +11419,15 @@ function gantt_createInternalData() {
11411
11419
  tProps.border = border;
11412
11420
  }
11413
11421
  }
11422
+ if (showFooter && !tProps.footerData) {
11423
+ // 如果未设置自己的标位数据,则使用代理的
11424
+ tProps.footerData = footerData;
11425
+ } else if (proxyOpts.footer && footerData.length) {
11426
+ // 如果代理标为数据,且未请求到数据,则用自己的
11427
+ tProps.footerData = footerData;
11428
+ }
11414
11429
  if (isZMax) {
11415
- if (tableExtendProps.maxHeight) {
11430
+ if (tProps.maxHeight) {
11416
11431
  tProps.maxHeight = '100%';
11417
11432
  } else {
11418
11433
  tProps.height = '100%';
@@ -11765,6 +11780,7 @@ function gantt_createInternalData() {
11765
11780
  var $xeGantt = this;
11766
11781
  var props = $xeGantt;
11767
11782
  var reactData = $xeGantt.reactData;
11783
+ var internalData = $xeGantt.internalData;
11768
11784
  var $xeTable = $xeGantt.$refs.refTable;
11769
11785
  var proxyConfig = props.proxyConfig;
11770
11786
  var proxyOpts = $xeGantt.computeProxyOpts;
@@ -11774,9 +11790,12 @@ function gantt_createInternalData() {
11774
11790
  reactData.filterData = params.filterList;
11775
11791
  if (proxyConfig && isEnableConf(proxyOpts)) {
11776
11792
  reactData.tablePage.currentPage = 1;
11793
+ internalData.uFoot = true;
11777
11794
  $xeGantt.commitProxy('query').then(function (rest) {
11778
11795
  $xeGantt.dispatchEvent('proxy-query', rest, params.$event);
11779
11796
  });
11797
+ internalData.uFoot = false;
11798
+ $xeGantt.updateQueryFooter();
11780
11799
  }
11781
11800
  }
11782
11801
  },
@@ -11794,34 +11813,42 @@ function gantt_createInternalData() {
11794
11813
  var $xeGantt = this;
11795
11814
  var props = $xeGantt;
11796
11815
  var reactData = $xeGantt.reactData;
11816
+ var internalData = $xeGantt.internalData;
11797
11817
  var proxyConfig = props.proxyConfig;
11798
11818
  var proxyOpts = $xeGantt.computeProxyOpts;
11799
11819
  if (reactData.tableLoading) {
11800
11820
  return;
11801
11821
  }
11802
11822
  if (proxyConfig && isEnableConf(proxyOpts)) {
11823
+ internalData.uFoot = true;
11803
11824
  $xeGantt.commitProxy('reload').then(function (rest) {
11804
11825
  $xeGantt.dispatchEvent('proxy-query', _objectSpread2(_objectSpread2({}, rest), {}, {
11805
11826
  isReload: true
11806
11827
  }), params.$event);
11807
11828
  });
11829
+ internalData.uFoot = false;
11830
+ $xeGantt.updateQueryFooter();
11808
11831
  }
11809
11832
  $xeGantt.dispatchEvent('form-submit', params, params.$event);
11810
11833
  },
11811
11834
  resetFormEvent: function resetFormEvent(params) {
11812
11835
  var $xeGantt = this;
11813
11836
  var props = $xeGantt;
11837
+ var internalData = $xeGantt.internalData;
11814
11838
  var $xeTable = $xeGantt.$refs.refTable;
11815
11839
  var proxyConfig = props.proxyConfig;
11816
11840
  var $event = params.$event;
11817
11841
  var proxyOpts = $xeGantt.computeProxyOpts;
11818
11842
  if (proxyConfig && isEnableConf(proxyOpts)) {
11819
11843
  $xeTable.clearScroll();
11844
+ internalData.uFoot = true;
11820
11845
  $xeGantt.commitProxy('reload').then(function (rest) {
11821
11846
  $xeGantt.dispatchEvent('proxy-query', _objectSpread2(_objectSpread2({}, rest), {}, {
11822
11847
  isReload: true
11823
11848
  }), $event);
11824
11849
  });
11850
+ internalData.uFoot = false;
11851
+ $xeGantt.updateQueryFooter();
11825
11852
  }
11826
11853
  $xeGantt.dispatchEvent('form-reset', params, $event);
11827
11854
  },
@@ -11969,6 +11996,7 @@ function gantt_createInternalData() {
11969
11996
  var $xeGantt = this;
11970
11997
  var props = $xeGantt;
11971
11998
  var reactData = $xeGantt.reactData;
11999
+ var internalData = $xeGantt.internalData;
11972
12000
  var proxyConfig = props.proxyConfig,
11973
12001
  formConfig = props.formConfig;
11974
12002
  var proxyInited = reactData.proxyInited;
@@ -11978,18 +12006,32 @@ function gantt_createInternalData() {
11978
12006
  if (isEnableConf(formConfig) && proxyOpts.form && formOpts.items) {
11979
12007
  reactData.formData = $xeGantt.getDefaultFormData();
11980
12008
  }
11981
- if (!proxyInited && proxyOpts.autoLoad !== false) {
12009
+ if (!proxyInited) {
11982
12010
  reactData.proxyInited = true;
11983
- $xeGantt.$nextTick().then(function () {
11984
- return $xeGantt.commitProxy('initial');
11985
- }).then(function (rest) {
11986
- $xeGantt.dispatchEvent('proxy-query', _objectSpread2(_objectSpread2({}, rest), {}, {
11987
- isInited: true
11988
- }), new Event('initial'));
11989
- });
12011
+ if (proxyOpts.autoLoad !== false) {
12012
+ $xeGantt.$nextTick().then(function () {
12013
+ internalData.uFoot = true;
12014
+ var rest = $xeGantt.commitProxy('initial');
12015
+ internalData.uFoot = false;
12016
+ $xeGantt.updateQueryFooter();
12017
+ return rest;
12018
+ }).then(function (rest) {
12019
+ $xeGantt.dispatchEvent('proxy-query', _objectSpread2(_objectSpread2({}, rest), {}, {
12020
+ isInited: true
12021
+ }), new Event('initial'));
12022
+ });
12023
+ }
11990
12024
  }
11991
12025
  }
11992
12026
  },
12027
+ updateQueryFooter: function updateQueryFooter() {
12028
+ var $xeGantt = this;
12029
+ var proxyOpts = $xeGantt.computeProxyOpts;
12030
+ var ajax = proxyOpts.ajax;
12031
+ if (ajax && ajax.queryFooter) {
12032
+ return $xeGantt.commitProxy('queryFooter');
12033
+ }
12034
+ },
11993
12035
  handleGlobalKeydownEvent: function handleGlobalKeydownEvent(evnt) {
11994
12036
  var $xeGantt = this;
11995
12037
  var reactData = $xeGantt.reactData;
@@ -12008,15 +12050,20 @@ function gantt_createInternalData() {
12008
12050
  * @param {String/Object} code 字符串或对象
12009
12051
  */
12010
12052
  commitProxy: function commitProxy(proxyTarget) {
12053
+ for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
12054
+ args[_key2 - 1] = arguments[_key2];
12055
+ }
12011
12056
  var $xeGantt = this;
12012
12057
  var props = $xeGantt;
12013
12058
  var reactData = $xeGantt.reactData;
12059
+ var internalData = $xeGantt.internalData;
12014
12060
  /**
12015
12061
  * 已废弃
12016
12062
  * @deprecated
12017
12063
  */
12018
12064
  var toolbar = props.toolbar;
12019
- var proxyConfig = props.proxyConfig,
12065
+ var showFooter = props.showFooter,
12066
+ proxyConfig = props.proxyConfig,
12020
12067
  toolbarConfig = props.toolbarConfig,
12021
12068
  pagerConfig = props.pagerConfig,
12022
12069
  editRules = props.editRules,
@@ -12029,6 +12076,8 @@ function gantt_createInternalData() {
12029
12076
  var toolbarOpts = $xeGantt.computeToolbarOpts;
12030
12077
  var beforeQuery = proxyOpts.beforeQuery,
12031
12078
  afterQuery = proxyOpts.afterQuery,
12079
+ beforeQueryFooter = proxyOpts.beforeQueryFooter,
12080
+ afterQueryFooter = proxyOpts.afterQueryFooter,
12032
12081
  beforeDelete = proxyOpts.beforeDelete,
12033
12082
  afterDelete = proxyOpts.afterDelete,
12034
12083
  beforeSave = proxyOpts.beforeSave,
@@ -12054,9 +12103,6 @@ function gantt_createInternalData() {
12054
12103
  code = button.code;
12055
12104
  }
12056
12105
  var btnParams = button ? button.params : null;
12057
- for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
12058
- args[_key2 - 1] = arguments[_key2];
12059
- }
12060
12106
  switch (code) {
12061
12107
  case 'insert':
12062
12108
  return $xeTable.insert({});
@@ -12098,23 +12144,25 @@ function gantt_createInternalData() {
12098
12144
  case 'reload':
12099
12145
  case 'query':
12100
12146
  {
12101
- var ajaxMethods = ajax.query;
12102
- var querySuccessMethods = ajax.querySuccess;
12103
- var queryErrorMethods = ajax.queryError;
12104
- if (ajaxMethods) {
12147
+ var qMethods = ajax.query;
12148
+ var qsMethods = ajax.querySuccess;
12149
+ var qeMethods = ajax.queryError;
12150
+ if (qMethods) {
12105
12151
  var isInited = code === 'initial';
12106
12152
  var isReload = code === 'reload';
12107
12153
  if (!isInited && reactData.tableLoading) {
12108
12154
  return $xeGantt.$nextTick();
12109
12155
  }
12156
+ var operPromise = null;
12110
12157
  var sortList = [];
12111
12158
  var filterList = [];
12112
12159
  var pageParams = {};
12113
12160
  if (pagerConfig) {
12114
12161
  if (isInited || isReload) {
12162
+ // 重置分页
12115
12163
  tablePage.currentPage = 1;
12116
12164
  }
12117
- if (isEnableConf(pagerConfig)) {
12165
+ if (isEnableConf(pagerOpts)) {
12118
12166
  pageParams = _objectSpread2({}, tablePage);
12119
12167
  }
12120
12168
  }
@@ -12160,7 +12208,7 @@ function gantt_createInternalData() {
12160
12208
  } else {
12161
12209
  if ($xeTable) {
12162
12210
  if (isReload) {
12163
- $xeTable.clearAll();
12211
+ operPromise = $xeTable.clearAll();
12164
12212
  } else {
12165
12213
  sortList = $xeTable.getSortColumns();
12166
12214
  filterList = $xeTable.getCheckedFilters();
@@ -12180,32 +12228,29 @@ function gantt_createInternalData() {
12180
12228
  sorts: sortList,
12181
12229
  filters: filterList,
12182
12230
  form: formData,
12183
- options: ajaxMethods
12231
+ options: qMethods
12184
12232
  };
12185
12233
  reactData.sortData = sortList;
12186
12234
  reactData.filterData = filterList;
12187
12235
  reactData.tableLoading = true;
12188
- var applyArgs = [commitParams].concat(args);
12189
- return Promise.resolve((beforeQuery || ajaxMethods).apply(void 0, _toConsumableArray(applyArgs))).then(function (rest) {
12236
+ return Promise.all([Promise.resolve((beforeQuery || qMethods).apply(void 0, [commitParams].concat(args))), operPromise]).then(function (_ref3) {
12237
+ var _ref4 = _slicedToArray(_ref3, 1),
12238
+ rest = _ref4[0];
12190
12239
  var tableData = [];
12191
12240
  reactData.tableLoading = false;
12192
12241
  if (rest) {
12242
+ var reParams = {
12243
+ data: rest,
12244
+ $table: $xeTable,
12245
+ $grid: null,
12246
+ $gantt: $xeGantt
12247
+ };
12193
12248
  if (pagerConfig && isEnableConf(pagerOpts)) {
12194
12249
  var totalProp = resConfigs.total;
12195
- var total = (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(totalProp) ? totalProp({
12196
- data: rest,
12197
- $table: $xeTable,
12198
- $grid: null,
12199
- $gantt: $xeGantt
12200
- }) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rest, totalProp || 'page.total')) || 0;
12250
+ var 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;
12201
12251
  tablePage.total = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().toNumber(total);
12202
12252
  var resultProp = resConfigs.result;
12203
- tableData = (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(resultProp) ? resultProp({
12204
- data: rest,
12205
- $table: $xeTable,
12206
- $grid: null,
12207
- $gantt: $xeGantt
12208
- }) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rest, resultProp || 'result')) || [];
12253
+ 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')) || [];
12209
12254
  // 检验当前页码,不能超出当前最大页数
12210
12255
  var pageCount = Math.max(Math.ceil(total / tablePage.pageSize), 1);
12211
12256
  if (tablePage.currentPage > pageCount) {
@@ -12213,28 +12258,35 @@ function gantt_createInternalData() {
12213
12258
  }
12214
12259
  } else {
12215
12260
  var listProp = resConfigs.list;
12216
- tableData = (listProp ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isFunction(listProp) ? listProp({
12217
- data: rest,
12218
- $table: $xeTable,
12219
- $grid: null,
12220
- $gantt: $xeGantt
12221
- }) : external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().get(rest, listProp) : rest) || [];
12261
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rest)) {
12262
+ tableData = rest;
12263
+ } else if (listProp) {
12264
+ 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)) || [];
12265
+ }
12266
+ }
12267
+ if (showFooter) {
12268
+ var fdProp = resConfigs.footerData;
12269
+ var 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) : [];
12270
+ if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(footerList)) {
12271
+ reactData.footerData = footerList;
12272
+ }
12222
12273
  }
12223
12274
  }
12224
12275
  if ($xeTable) {
12225
12276
  $xeTable.loadData(tableData);
12226
12277
  } else {
12227
- $xeTable.$nextTick(function () {
12278
+ $xeGantt.$nextTick(function () {
12279
+ var $xeTable = $xeGantt.$refs.refTable;
12228
12280
  if ($xeTable) {
12229
12281
  $xeTable.loadData(tableData);
12230
12282
  }
12231
12283
  });
12232
12284
  }
12233
12285
  if (afterQuery) {
12234
- afterQuery.apply(void 0, _toConsumableArray(applyArgs));
12286
+ afterQuery.apply(void 0, [commitParams].concat(args));
12235
12287
  }
12236
- if (querySuccessMethods) {
12237
- querySuccessMethods(_objectSpread2(_objectSpread2({}, commitParams), {}, {
12288
+ if (qsMethods) {
12289
+ qsMethods(_objectSpread2(_objectSpread2({}, commitParams), {}, {
12238
12290
  response: rest
12239
12291
  }));
12240
12292
  }
@@ -12243,8 +12295,56 @@ function gantt_createInternalData() {
12243
12295
  };
12244
12296
  }).catch(function (rest) {
12245
12297
  reactData.tableLoading = false;
12246
- if (queryErrorMethods) {
12247
- queryErrorMethods(_objectSpread2(_objectSpread2({}, commitParams), {}, {
12298
+ if (qeMethods) {
12299
+ qeMethods(_objectSpread2(_objectSpread2({}, commitParams), {}, {
12300
+ response: rest
12301
+ }));
12302
+ }
12303
+ return {
12304
+ status: false
12305
+ };
12306
+ });
12307
+ } else {
12308
+ errLog('vxe.error.notFunc', ['[gantt] proxy-config.ajax.query']);
12309
+ }
12310
+ break;
12311
+ }
12312
+ case 'queryFooter':
12313
+ {
12314
+ var qfMethods = ajax.queryFooter;
12315
+ var qfSuccessMethods = ajax.queryFooterSuccess;
12316
+ var qfErrorMethods = ajax.queryFooterError;
12317
+ if (qfMethods) {
12318
+ var _filterList = [];
12319
+ if ($xeTable) {
12320
+ _filterList = $xeTable.getCheckedFilters();
12321
+ }
12322
+ var _commitParams = {
12323
+ $table: $xeTable,
12324
+ $grid: null,
12325
+ $gantt: $xeGantt,
12326
+ code: code,
12327
+ button: button,
12328
+ filters: _filterList,
12329
+ form: formData,
12330
+ options: qfMethods
12331
+ };
12332
+ return Promise.resolve((beforeQueryFooter || qfMethods).apply(void 0, [_commitParams].concat(args))).then(function (rest) {
12333
+ reactData.footerData = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default().isArray(rest) ? rest : [];
12334
+ if (afterQueryFooter) {
12335
+ afterQueryFooter.apply(void 0, [_commitParams].concat(args));
12336
+ }
12337
+ if (qfSuccessMethods) {
12338
+ qfSuccessMethods(_objectSpread2(_objectSpread2({}, _commitParams), {}, {
12339
+ response: rest
12340
+ }));
12341
+ }
12342
+ return {
12343
+ status: true
12344
+ };
12345
+ }).catch(function (rest) {
12346
+ if (qfErrorMethods) {
12347
+ qfErrorMethods(_objectSpread2(_objectSpread2({}, _commitParams), {}, {
12248
12348
  response: rest
12249
12349
  }));
12250
12350
  }
@@ -12253,16 +12353,16 @@ function gantt_createInternalData() {
12253
12353
  };
12254
12354
  });
12255
12355
  } else {
12256
- errLog('vxe.error.notFunc', ['proxy-config.ajax.query']);
12356
+ errLog('vxe.error.notFunc', ['[gantt] proxy-config.ajax.queryFooter']);
12257
12357
  }
12258
12358
  break;
12259
12359
  }
12260
12360
  case 'delete':
12261
12361
  {
12262
- var _ajaxMethods = ajax.delete;
12362
+ var ajaxMethods = ajax.delete;
12263
12363
  var deleteSuccessMethods = ajax.deleteSuccess;
12264
12364
  var deleteErrorMethods = ajax.deleteError;
12265
- if (_ajaxMethods) {
12365
+ if (ajaxMethods) {
12266
12366
  var selectRecords = $xeTable.getCheckboxRecords();
12267
12367
  var removeRecords = selectRecords.filter(function (row) {
12268
12368
  return !$xeTable.isInsertByRow(row);
@@ -12270,7 +12370,7 @@ function gantt_createInternalData() {
12270
12370
  var body = {
12271
12371
  removeRecords: removeRecords
12272
12372
  };
12273
- var _commitParams = {
12373
+ var _commitParams2 = {
12274
12374
  $table: $xeTable,
12275
12375
  $grid: null,
12276
12376
  $gantt: $xeGantt,
@@ -12278,16 +12378,16 @@ function gantt_createInternalData() {
12278
12378
  button: button,
12279
12379
  body: body,
12280
12380
  form: formData,
12281
- options: _ajaxMethods
12381
+ options: ajaxMethods
12282
12382
  };
12283
- var _applyArgs = [_commitParams].concat(args);
12383
+ var applyArgs = [_commitParams2].concat(args);
12284
12384
  if (selectRecords.length) {
12285
12385
  return $xeGantt.handleDeleteRow(code, 'vxe.grid.deleteSelectRecord', function () {
12286
12386
  if (!removeRecords.length) {
12287
12387
  return $xeTable.remove(selectRecords);
12288
12388
  }
12289
12389
  reactData.tableLoading = true;
12290
- return Promise.resolve((beforeDelete || _ajaxMethods).apply(void 0, _toConsumableArray(_applyArgs))).then(function (rest) {
12390
+ return Promise.resolve((beforeDelete || ajaxMethods).apply(void 0, _toConsumableArray(applyArgs))).then(function (rest) {
12291
12391
  reactData.tableLoading = false;
12292
12392
  $xeTable.setPendingRow(removeRecords, false);
12293
12393
  if (isRespMsg) {
@@ -12301,12 +12401,15 @@ function gantt_createInternalData() {
12301
12401
  });
12302
12402
  }
12303
12403
  if (afterDelete) {
12304
- afterDelete.apply(void 0, _toConsumableArray(_applyArgs));
12404
+ afterDelete.apply(void 0, _toConsumableArray(applyArgs));
12305
12405
  } else {
12406
+ internalData.uFoot = true;
12306
12407
  $xeGantt.commitProxy('query');
12408
+ internalData.uFoot = false;
12409
+ $xeGantt.updateQueryFooter();
12307
12410
  }
12308
12411
  if (deleteSuccessMethods) {
12309
- deleteSuccessMethods(_objectSpread2(_objectSpread2({}, _commitParams), {}, {
12412
+ deleteSuccessMethods(_objectSpread2(_objectSpread2({}, _commitParams2), {}, {
12310
12413
  response: rest
12311
12414
  }));
12312
12415
  }
@@ -12327,7 +12430,7 @@ function gantt_createInternalData() {
12327
12430
  });
12328
12431
  }
12329
12432
  if (deleteErrorMethods) {
12330
- deleteErrorMethods(_objectSpread2(_objectSpread2({}, _commitParams), {}, {
12433
+ deleteErrorMethods(_objectSpread2(_objectSpread2({}, _commitParams2), {}, {
12331
12434
  response: rest
12332
12435
  }));
12333
12436
  }
@@ -12356,16 +12459,16 @@ function gantt_createInternalData() {
12356
12459
  }
12357
12460
  case 'save':
12358
12461
  {
12359
- var _ajaxMethods2 = ajax.save;
12462
+ var _ajaxMethods = ajax.save;
12360
12463
  var saveSuccessMethods = ajax.saveSuccess;
12361
12464
  var saveErrorMethods = ajax.saveError;
12362
- if (_ajaxMethods2) {
12465
+ if (_ajaxMethods) {
12363
12466
  var _body = $xeGantt.getRecordset();
12364
12467
  var insertRecords = _body.insertRecords,
12365
12468
  _removeRecords = _body.removeRecords,
12366
12469
  updateRecords = _body.updateRecords,
12367
12470
  pendingRecords = _body.pendingRecords;
12368
- var _commitParams2 = {
12471
+ var _commitParams3 = {
12369
12472
  $table: $xeTable,
12370
12473
  $grid: null,
12371
12474
  $gantt: $xeGantt,
@@ -12373,9 +12476,9 @@ function gantt_createInternalData() {
12373
12476
  button: button,
12374
12477
  body: _body,
12375
12478
  form: formData,
12376
- options: _ajaxMethods2
12479
+ options: _ajaxMethods
12377
12480
  };
12378
- var _applyArgs2 = [_commitParams2].concat(args);
12481
+ var _applyArgs = [_commitParams3].concat(args);
12379
12482
  // 排除掉新增且标记为删除的数据
12380
12483
  if (insertRecords.length) {
12381
12484
  _body.pendingRecords = pendingRecords.filter(function (row) {
@@ -12400,7 +12503,7 @@ function gantt_createInternalData() {
12400
12503
  }
12401
12504
  if (_body.insertRecords.length || _removeRecords.length || updateRecords.length || _body.pendingRecords.length) {
12402
12505
  reactData.tableLoading = true;
12403
- return Promise.resolve((beforeSave || _ajaxMethods2).apply(void 0, _toConsumableArray(_applyArgs2))).then(function (rest) {
12506
+ return Promise.resolve((beforeSave || _ajaxMethods).apply(void 0, _toConsumableArray(_applyArgs))).then(function (rest) {
12404
12507
  reactData.tableLoading = false;
12405
12508
  $xeTable.clearPendingRow();
12406
12509
  if (isRespMsg) {
@@ -12414,12 +12517,15 @@ function gantt_createInternalData() {
12414
12517
  });
12415
12518
  }
12416
12519
  if (afterSave) {
12417
- afterSave.apply(void 0, _toConsumableArray(_applyArgs2));
12520
+ afterSave.apply(void 0, _toConsumableArray(_applyArgs));
12418
12521
  } else {
12522
+ internalData.uFoot = true;
12419
12523
  $xeGantt.commitProxy('query');
12524
+ internalData.uFoot = false;
12525
+ $xeGantt.updateQueryFooter();
12420
12526
  }
12421
12527
  if (saveSuccessMethods) {
12422
- saveSuccessMethods(_objectSpread2(_objectSpread2({}, _commitParams2), {}, {
12528
+ saveSuccessMethods(_objectSpread2(_objectSpread2({}, _commitParams3), {}, {
12423
12529
  response: rest
12424
12530
  }));
12425
12531
  }
@@ -12440,7 +12546,7 @@ function gantt_createInternalData() {
12440
12546
  });
12441
12547
  }
12442
12548
  if (saveErrorMethods) {
12443
- saveErrorMethods(_objectSpread2(_objectSpread2({}, _commitParams2), {}, {
12549
+ saveErrorMethods(_objectSpread2(_objectSpread2({}, _commitParams3), {}, {
12444
12550
  response: rest
12445
12551
  }));
12446
12552
  }
@@ -12746,14 +12852,26 @@ function gantt_createInternalData() {
12746
12852
  },
12747
12853
  triggerToolbarCommitEvent: function triggerToolbarCommitEvent(params, evnt) {
12748
12854
  var $xeGantt = this;
12855
+ var internalData = $xeGantt.internalData;
12749
12856
  var code = params.code;
12750
- return $xeGantt.commitProxy(params, evnt).then(function (rest) {
12751
- if (code && rest && rest.status && ['query', 'reload', 'delete', 'save'].includes(code)) {
12752
- $xeGantt.dispatchEvent(code === 'delete' || code === 'save' ? "proxy-".concat(code) : 'proxy-query', _objectSpread2(_objectSpread2({}, rest), {}, {
12753
- isReload: code === 'reload'
12754
- }), evnt);
12857
+ if (code) {
12858
+ var isUf = ['reload', 'delete', 'save'].includes(code);
12859
+ if (isUf) {
12860
+ internalData.uFoot = true;
12755
12861
  }
12756
- });
12862
+ var rest = $xeGantt.commitProxy(params, evnt).then(function (rest) {
12863
+ if (code && rest && rest.status && ['query', 'reload', 'delete', 'save'].includes(code)) {
12864
+ $xeGantt.dispatchEvent(code === 'delete' || code === 'save' ? "proxy-".concat(code) : 'proxy-query', _objectSpread2(_objectSpread2({}, rest), {}, {
12865
+ isReload: code === 'reload'
12866
+ }), evnt);
12867
+ }
12868
+ });
12869
+ if (isUf) {
12870
+ $xeGantt.updateQueryFooter();
12871
+ }
12872
+ internalData.uFoot = false;
12873
+ return rest;
12874
+ }
12757
12875
  },
12758
12876
  triggerToolbarBtnEvent: function triggerToolbarBtnEvent(button, evnt) {
12759
12877
  var $xeGantt = this;