vxe-gantt 3.0.23 → 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.
@@ -20,10 +20,14 @@ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol"
20
20
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
21
21
  function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
22
22
  function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
23
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
24
23
  function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
25
24
  function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
25
+ function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
26
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
27
+ function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
26
28
  function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
29
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
30
+ function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
27
31
  var getConfig = _core.VxeUI.getConfig,
28
32
  getIcon = _core.VxeUI.getIcon,
29
33
  getI18n = _core.VxeUI.getI18n,
@@ -87,6 +91,7 @@ _xeUtils.default.each(_vxeTable.VxeTable.methods, function (fn, name) {
87
91
  });
88
92
  function createInternalData() {
89
93
  return {
94
+ uFoot: false,
90
95
  resizeTableWidth: 0
91
96
  };
92
97
  }
@@ -134,6 +139,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
134
139
  filterData: [],
135
140
  formData: {},
136
141
  sortData: [],
142
+ footerData: [],
137
143
  tZindex: 0,
138
144
  tablePage: {
139
145
  total: 0,
@@ -300,7 +306,9 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
300
306
  var rest = {};
301
307
  var gridProps = props;
302
308
  propKeys.forEach(function (key) {
303
- rest[key] = gridProps[key];
309
+ if (gridProps[key] !== undefined) {
310
+ rest[key] = gridProps[key];
311
+ }
304
312
  });
305
313
  return rest;
306
314
  },
@@ -308,12 +316,14 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
308
316
  var $xeGantt = this;
309
317
  var props = $xeGantt;
310
318
  var reactData = $xeGantt.reactData;
311
- var seqConfig = props.seqConfig,
319
+ var showFooter = props.showFooter,
320
+ seqConfig = props.seqConfig,
312
321
  pagerConfig = props.pagerConfig,
313
322
  editConfig = props.editConfig,
314
323
  proxyConfig = props.proxyConfig;
315
324
  var isZMax = reactData.isZMax,
316
- tablePage = reactData.tablePage;
325
+ tablePage = reactData.tablePage,
326
+ footerData = reactData.footerData;
317
327
  var taskViewOpts = $xeGantt.computeTaskViewOpts;
318
328
  var tableStyle = taskViewOpts.tableStyle;
319
329
  var tableExtendProps = $xeGantt.computeTableExtendProps;
@@ -332,8 +342,15 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
332
342
  tProps.border = border;
333
343
  }
334
344
  }
345
+ if (showFooter && !tProps.footerData) {
346
+ // 如果未设置自己的标位数据,则使用代理的
347
+ tProps.footerData = footerData;
348
+ } else if (proxyOpts.footer && footerData.length) {
349
+ // 如果代理标为数据,且未请求到数据,则用自己的
350
+ tProps.footerData = footerData;
351
+ }
335
352
  if (isZMax) {
336
- if (tableExtendProps.maxHeight) {
353
+ if (tProps.maxHeight) {
337
354
  tProps.maxHeight = '100%';
338
355
  } else {
339
356
  tProps.height = '100%';
@@ -686,6 +703,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
686
703
  var $xeGantt = this;
687
704
  var props = $xeGantt;
688
705
  var reactData = $xeGantt.reactData;
706
+ var internalData = $xeGantt.internalData;
689
707
  var $xeTable = $xeGantt.$refs.refTable;
690
708
  var proxyConfig = props.proxyConfig;
691
709
  var proxyOpts = $xeGantt.computeProxyOpts;
@@ -695,9 +713,12 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
695
713
  reactData.filterData = params.filterList;
696
714
  if (proxyConfig && (0, _utils.isEnableConf)(proxyOpts)) {
697
715
  reactData.tablePage.currentPage = 1;
716
+ internalData.uFoot = true;
698
717
  $xeGantt.commitProxy('query').then(function (rest) {
699
718
  $xeGantt.dispatchEvent('proxy-query', rest, params.$event);
700
719
  });
720
+ internalData.uFoot = false;
721
+ $xeGantt.updateQueryFooter();
701
722
  }
702
723
  }
703
724
  },
@@ -715,34 +736,42 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
715
736
  var $xeGantt = this;
716
737
  var props = $xeGantt;
717
738
  var reactData = $xeGantt.reactData;
739
+ var internalData = $xeGantt.internalData;
718
740
  var proxyConfig = props.proxyConfig;
719
741
  var proxyOpts = $xeGantt.computeProxyOpts;
720
742
  if (reactData.tableLoading) {
721
743
  return;
722
744
  }
723
745
  if (proxyConfig && (0, _utils.isEnableConf)(proxyOpts)) {
746
+ internalData.uFoot = true;
724
747
  $xeGantt.commitProxy('reload').then(function (rest) {
725
748
  $xeGantt.dispatchEvent('proxy-query', Object.assign(Object.assign({}, rest), {
726
749
  isReload: true
727
750
  }), params.$event);
728
751
  });
752
+ internalData.uFoot = false;
753
+ $xeGantt.updateQueryFooter();
729
754
  }
730
755
  $xeGantt.dispatchEvent('form-submit', params, params.$event);
731
756
  },
732
757
  resetFormEvent: function resetFormEvent(params) {
733
758
  var $xeGantt = this;
734
759
  var props = $xeGantt;
760
+ var internalData = $xeGantt.internalData;
735
761
  var $xeTable = $xeGantt.$refs.refTable;
736
762
  var proxyConfig = props.proxyConfig;
737
763
  var $event = params.$event;
738
764
  var proxyOpts = $xeGantt.computeProxyOpts;
739
765
  if (proxyConfig && (0, _utils.isEnableConf)(proxyOpts)) {
740
766
  $xeTable.clearScroll();
767
+ internalData.uFoot = true;
741
768
  $xeGantt.commitProxy('reload').then(function (rest) {
742
769
  $xeGantt.dispatchEvent('proxy-query', Object.assign(Object.assign({}, rest), {
743
770
  isReload: true
744
771
  }), $event);
745
772
  });
773
+ internalData.uFoot = false;
774
+ $xeGantt.updateQueryFooter();
746
775
  }
747
776
  $xeGantt.dispatchEvent('form-reset', params, $event);
748
777
  },
@@ -890,6 +919,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
890
919
  var $xeGantt = this;
891
920
  var props = $xeGantt;
892
921
  var reactData = $xeGantt.reactData;
922
+ var internalData = $xeGantt.internalData;
893
923
  var proxyConfig = props.proxyConfig,
894
924
  formConfig = props.formConfig;
895
925
  var proxyInited = reactData.proxyInited;
@@ -899,18 +929,32 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
899
929
  if ((0, _utils.isEnableConf)(formConfig) && proxyOpts.form && formOpts.items) {
900
930
  reactData.formData = $xeGantt.getDefaultFormData();
901
931
  }
902
- if (!proxyInited && proxyOpts.autoLoad !== false) {
932
+ if (!proxyInited) {
903
933
  reactData.proxyInited = true;
904
- $xeGantt.$nextTick().then(function () {
905
- return $xeGantt.commitProxy('initial');
906
- }).then(function (rest) {
907
- $xeGantt.dispatchEvent('proxy-query', Object.assign(Object.assign({}, rest), {
908
- isInited: true
909
- }), new Event('initial'));
910
- });
934
+ if (proxyOpts.autoLoad !== false) {
935
+ $xeGantt.$nextTick().then(function () {
936
+ internalData.uFoot = true;
937
+ var rest = $xeGantt.commitProxy('initial');
938
+ internalData.uFoot = false;
939
+ $xeGantt.updateQueryFooter();
940
+ return rest;
941
+ }).then(function (rest) {
942
+ $xeGantt.dispatchEvent('proxy-query', Object.assign(Object.assign({}, rest), {
943
+ isInited: true
944
+ }), new Event('initial'));
945
+ });
946
+ }
911
947
  }
912
948
  }
913
949
  },
950
+ updateQueryFooter: function updateQueryFooter() {
951
+ var $xeGantt = this;
952
+ var proxyOpts = $xeGantt.computeProxyOpts;
953
+ var ajax = proxyOpts.ajax;
954
+ if (ajax && ajax.queryFooter) {
955
+ return $xeGantt.commitProxy('queryFooter');
956
+ }
957
+ },
914
958
  handleGlobalKeydownEvent: function handleGlobalKeydownEvent(evnt) {
915
959
  var $xeGantt = this;
916
960
  var reactData = $xeGantt.reactData;
@@ -929,15 +973,20 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
929
973
  * @param {String/Object} code 字符串或对象
930
974
  */
931
975
  commitProxy: function commitProxy(proxyTarget) {
976
+ for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
977
+ args[_key2 - 1] = arguments[_key2];
978
+ }
932
979
  var $xeGantt = this;
933
980
  var props = $xeGantt;
934
981
  var reactData = $xeGantt.reactData;
982
+ var internalData = $xeGantt.internalData;
935
983
  /**
936
984
  * 已废弃
937
985
  * @deprecated
938
986
  */
939
987
  var toolbar = props.toolbar;
940
- var proxyConfig = props.proxyConfig,
988
+ var showFooter = props.showFooter,
989
+ proxyConfig = props.proxyConfig,
941
990
  toolbarConfig = props.toolbarConfig,
942
991
  pagerConfig = props.pagerConfig,
943
992
  editRules = props.editRules,
@@ -950,6 +999,8 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
950
999
  var toolbarOpts = $xeGantt.computeToolbarOpts;
951
1000
  var beforeQuery = proxyOpts.beforeQuery,
952
1001
  afterQuery = proxyOpts.afterQuery,
1002
+ beforeQueryFooter = proxyOpts.beforeQueryFooter,
1003
+ afterQueryFooter = proxyOpts.afterQueryFooter,
953
1004
  beforeDelete = proxyOpts.beforeDelete,
954
1005
  afterDelete = proxyOpts.afterDelete,
955
1006
  beforeSave = proxyOpts.beforeSave,
@@ -975,9 +1026,6 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
975
1026
  code = button.code;
976
1027
  }
977
1028
  var btnParams = button ? button.params : null;
978
- for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
979
- args[_key2 - 1] = arguments[_key2];
980
- }
981
1029
  switch (code) {
982
1030
  case 'insert':
983
1031
  return $xeTable.insert({});
@@ -1019,23 +1067,25 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1019
1067
  case 'reload':
1020
1068
  case 'query':
1021
1069
  {
1022
- var ajaxMethods = ajax.query;
1023
- var querySuccessMethods = ajax.querySuccess;
1024
- var queryErrorMethods = ajax.queryError;
1025
- if (ajaxMethods) {
1070
+ var qMethods = ajax.query;
1071
+ var qsMethods = ajax.querySuccess;
1072
+ var qeMethods = ajax.queryError;
1073
+ if (qMethods) {
1026
1074
  var isInited = code === 'initial';
1027
1075
  var isReload = code === 'reload';
1028
1076
  if (!isInited && reactData.tableLoading) {
1029
1077
  return $xeGantt.$nextTick();
1030
1078
  }
1079
+ var operPromise = null;
1031
1080
  var sortList = [];
1032
1081
  var filterList = [];
1033
1082
  var pageParams = {};
1034
1083
  if (pagerConfig) {
1035
1084
  if (isInited || isReload) {
1085
+ // 重置分页
1036
1086
  tablePage.currentPage = 1;
1037
1087
  }
1038
- if ((0, _utils.isEnableConf)(pagerConfig)) {
1088
+ if ((0, _utils.isEnableConf)(pagerOpts)) {
1039
1089
  pageParams = Object.assign({}, tablePage);
1040
1090
  }
1041
1091
  }
@@ -1081,7 +1131,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1081
1131
  } else {
1082
1132
  if ($xeTable) {
1083
1133
  if (isReload) {
1084
- $xeTable.clearAll();
1134
+ operPromise = $xeTable.clearAll();
1085
1135
  } else {
1086
1136
  sortList = $xeTable.getSortColumns();
1087
1137
  filterList = $xeTable.getCheckedFilters();
@@ -1101,32 +1151,29 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1101
1151
  sorts: sortList,
1102
1152
  filters: filterList,
1103
1153
  form: formData,
1104
- options: ajaxMethods
1154
+ options: qMethods
1105
1155
  };
1106
1156
  reactData.sortData = sortList;
1107
1157
  reactData.filterData = filterList;
1108
1158
  reactData.tableLoading = true;
1109
- var applyArgs = [commitParams].concat(args);
1110
- return Promise.resolve((beforeQuery || ajaxMethods).apply(void 0, _toConsumableArray(applyArgs))).then(function (rest) {
1159
+ return Promise.all([Promise.resolve((beforeQuery || qMethods).apply(void 0, [commitParams].concat(args))), operPromise]).then(function (_ref3) {
1160
+ var _ref4 = _slicedToArray(_ref3, 1),
1161
+ rest = _ref4[0];
1111
1162
  var tableData = [];
1112
1163
  reactData.tableLoading = false;
1113
1164
  if (rest) {
1165
+ var reParams = {
1166
+ data: rest,
1167
+ $table: $xeTable,
1168
+ $grid: null,
1169
+ $gantt: $xeGantt
1170
+ };
1114
1171
  if (pagerConfig && (0, _utils.isEnableConf)(pagerOpts)) {
1115
1172
  var totalProp = resConfigs.total;
1116
- var total = (_xeUtils.default.isFunction(totalProp) ? totalProp({
1117
- data: rest,
1118
- $table: $xeTable,
1119
- $grid: null,
1120
- $gantt: $xeGantt
1121
- }) : _xeUtils.default.get(rest, totalProp || 'page.total')) || 0;
1173
+ var total = (_xeUtils.default.isFunction(totalProp) ? totalProp(reParams) : _xeUtils.default.get(rest, totalProp || 'page.total')) || 0;
1122
1174
  tablePage.total = _xeUtils.default.toNumber(total);
1123
1175
  var resultProp = resConfigs.result;
1124
- tableData = (_xeUtils.default.isFunction(resultProp) ? resultProp({
1125
- data: rest,
1126
- $table: $xeTable,
1127
- $grid: null,
1128
- $gantt: $xeGantt
1129
- }) : _xeUtils.default.get(rest, resultProp || 'result')) || [];
1176
+ tableData = (_xeUtils.default.isFunction(resultProp) ? resultProp(reParams) : _xeUtils.default.get(rest, resultProp || 'result')) || [];
1130
1177
  // 检验当前页码,不能超出当前最大页数
1131
1178
  var pageCount = Math.max(Math.ceil(total / tablePage.pageSize), 1);
1132
1179
  if (tablePage.currentPage > pageCount) {
@@ -1134,28 +1181,35 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1134
1181
  }
1135
1182
  } else {
1136
1183
  var listProp = resConfigs.list;
1137
- tableData = (listProp ? _xeUtils.default.isFunction(listProp) ? listProp({
1138
- data: rest,
1139
- $table: $xeTable,
1140
- $grid: null,
1141
- $gantt: $xeGantt
1142
- }) : _xeUtils.default.get(rest, listProp) : rest) || [];
1184
+ if (_xeUtils.default.isArray(rest)) {
1185
+ tableData = rest;
1186
+ } else if (listProp) {
1187
+ tableData = (_xeUtils.default.isFunction(listProp) ? listProp(reParams) : _xeUtils.default.get(rest, listProp)) || [];
1188
+ }
1189
+ }
1190
+ if (showFooter) {
1191
+ var fdProp = resConfigs.footerData;
1192
+ var footerList = fdProp ? _xeUtils.default.isFunction(fdProp) ? fdProp(reParams) : _xeUtils.default.get(rest, fdProp) : [];
1193
+ if (_xeUtils.default.isArray(footerList)) {
1194
+ reactData.footerData = footerList;
1195
+ }
1143
1196
  }
1144
1197
  }
1145
1198
  if ($xeTable) {
1146
1199
  $xeTable.loadData(tableData);
1147
1200
  } else {
1148
- $xeTable.$nextTick(function () {
1201
+ $xeGantt.$nextTick(function () {
1202
+ var $xeTable = $xeGantt.$refs.refTable;
1149
1203
  if ($xeTable) {
1150
1204
  $xeTable.loadData(tableData);
1151
1205
  }
1152
1206
  });
1153
1207
  }
1154
1208
  if (afterQuery) {
1155
- afterQuery.apply(void 0, _toConsumableArray(applyArgs));
1209
+ afterQuery.apply(void 0, [commitParams].concat(args));
1156
1210
  }
1157
- if (querySuccessMethods) {
1158
- querySuccessMethods(Object.assign(Object.assign({}, commitParams), {
1211
+ if (qsMethods) {
1212
+ qsMethods(Object.assign(Object.assign({}, commitParams), {
1159
1213
  response: rest
1160
1214
  }));
1161
1215
  }
@@ -1164,8 +1218,56 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1164
1218
  };
1165
1219
  }).catch(function (rest) {
1166
1220
  reactData.tableLoading = false;
1167
- if (queryErrorMethods) {
1168
- queryErrorMethods(Object.assign(Object.assign({}, commitParams), {
1221
+ if (qeMethods) {
1222
+ qeMethods(Object.assign(Object.assign({}, commitParams), {
1223
+ response: rest
1224
+ }));
1225
+ }
1226
+ return {
1227
+ status: false
1228
+ };
1229
+ });
1230
+ } else {
1231
+ (0, _log.errLog)('vxe.error.notFunc', ['[gantt] proxy-config.ajax.query']);
1232
+ }
1233
+ break;
1234
+ }
1235
+ case 'queryFooter':
1236
+ {
1237
+ var qfMethods = ajax.queryFooter;
1238
+ var qfSuccessMethods = ajax.queryFooterSuccess;
1239
+ var qfErrorMethods = ajax.queryFooterError;
1240
+ if (qfMethods) {
1241
+ var _filterList = [];
1242
+ if ($xeTable) {
1243
+ _filterList = $xeTable.getCheckedFilters();
1244
+ }
1245
+ var _commitParams = {
1246
+ $table: $xeTable,
1247
+ $grid: null,
1248
+ $gantt: $xeGantt,
1249
+ code: code,
1250
+ button: button,
1251
+ filters: _filterList,
1252
+ form: formData,
1253
+ options: qfMethods
1254
+ };
1255
+ return Promise.resolve((beforeQueryFooter || qfMethods).apply(void 0, [_commitParams].concat(args))).then(function (rest) {
1256
+ reactData.footerData = _xeUtils.default.isArray(rest) ? rest : [];
1257
+ if (afterQueryFooter) {
1258
+ afterQueryFooter.apply(void 0, [_commitParams].concat(args));
1259
+ }
1260
+ if (qfSuccessMethods) {
1261
+ qfSuccessMethods(Object.assign(Object.assign({}, _commitParams), {
1262
+ response: rest
1263
+ }));
1264
+ }
1265
+ return {
1266
+ status: true
1267
+ };
1268
+ }).catch(function (rest) {
1269
+ if (qfErrorMethods) {
1270
+ qfErrorMethods(Object.assign(Object.assign({}, _commitParams), {
1169
1271
  response: rest
1170
1272
  }));
1171
1273
  }
@@ -1174,16 +1276,16 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1174
1276
  };
1175
1277
  });
1176
1278
  } else {
1177
- (0, _log.errLog)('vxe.error.notFunc', ['proxy-config.ajax.query']);
1279
+ (0, _log.errLog)('vxe.error.notFunc', ['[gantt] proxy-config.ajax.queryFooter']);
1178
1280
  }
1179
1281
  break;
1180
1282
  }
1181
1283
  case 'delete':
1182
1284
  {
1183
- var _ajaxMethods = ajax.delete;
1285
+ var ajaxMethods = ajax.delete;
1184
1286
  var deleteSuccessMethods = ajax.deleteSuccess;
1185
1287
  var deleteErrorMethods = ajax.deleteError;
1186
- if (_ajaxMethods) {
1288
+ if (ajaxMethods) {
1187
1289
  var selectRecords = $xeTable.getCheckboxRecords();
1188
1290
  var removeRecords = selectRecords.filter(function (row) {
1189
1291
  return !$xeTable.isInsertByRow(row);
@@ -1191,7 +1293,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1191
1293
  var body = {
1192
1294
  removeRecords: removeRecords
1193
1295
  };
1194
- var _commitParams = {
1296
+ var _commitParams2 = {
1195
1297
  $table: $xeTable,
1196
1298
  $grid: null,
1197
1299
  $gantt: $xeGantt,
@@ -1199,16 +1301,16 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1199
1301
  button: button,
1200
1302
  body: body,
1201
1303
  form: formData,
1202
- options: _ajaxMethods
1304
+ options: ajaxMethods
1203
1305
  };
1204
- var _applyArgs = [_commitParams].concat(args);
1306
+ var applyArgs = [_commitParams2].concat(args);
1205
1307
  if (selectRecords.length) {
1206
1308
  return $xeGantt.handleDeleteRow(code, 'vxe.grid.deleteSelectRecord', function () {
1207
1309
  if (!removeRecords.length) {
1208
1310
  return $xeTable.remove(selectRecords);
1209
1311
  }
1210
1312
  reactData.tableLoading = true;
1211
- return Promise.resolve((beforeDelete || _ajaxMethods).apply(void 0, _toConsumableArray(_applyArgs))).then(function (rest) {
1313
+ return Promise.resolve((beforeDelete || ajaxMethods).apply(void 0, _toConsumableArray(applyArgs))).then(function (rest) {
1212
1314
  reactData.tableLoading = false;
1213
1315
  $xeTable.setPendingRow(removeRecords, false);
1214
1316
  if (isRespMsg) {
@@ -1222,12 +1324,15 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1222
1324
  });
1223
1325
  }
1224
1326
  if (afterDelete) {
1225
- afterDelete.apply(void 0, _toConsumableArray(_applyArgs));
1327
+ afterDelete.apply(void 0, _toConsumableArray(applyArgs));
1226
1328
  } else {
1329
+ internalData.uFoot = true;
1227
1330
  $xeGantt.commitProxy('query');
1331
+ internalData.uFoot = false;
1332
+ $xeGantt.updateQueryFooter();
1228
1333
  }
1229
1334
  if (deleteSuccessMethods) {
1230
- deleteSuccessMethods(Object.assign(Object.assign({}, _commitParams), {
1335
+ deleteSuccessMethods(Object.assign(Object.assign({}, _commitParams2), {
1231
1336
  response: rest
1232
1337
  }));
1233
1338
  }
@@ -1248,7 +1353,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1248
1353
  });
1249
1354
  }
1250
1355
  if (deleteErrorMethods) {
1251
- deleteErrorMethods(Object.assign(Object.assign({}, _commitParams), {
1356
+ deleteErrorMethods(Object.assign(Object.assign({}, _commitParams2), {
1252
1357
  response: rest
1253
1358
  }));
1254
1359
  }
@@ -1277,16 +1382,16 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1277
1382
  }
1278
1383
  case 'save':
1279
1384
  {
1280
- var _ajaxMethods2 = ajax.save;
1385
+ var _ajaxMethods = ajax.save;
1281
1386
  var saveSuccessMethods = ajax.saveSuccess;
1282
1387
  var saveErrorMethods = ajax.saveError;
1283
- if (_ajaxMethods2) {
1388
+ if (_ajaxMethods) {
1284
1389
  var _body = $xeGantt.getRecordset();
1285
1390
  var insertRecords = _body.insertRecords,
1286
1391
  _removeRecords = _body.removeRecords,
1287
1392
  updateRecords = _body.updateRecords,
1288
1393
  pendingRecords = _body.pendingRecords;
1289
- var _commitParams2 = {
1394
+ var _commitParams3 = {
1290
1395
  $table: $xeTable,
1291
1396
  $grid: null,
1292
1397
  $gantt: $xeGantt,
@@ -1294,9 +1399,9 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1294
1399
  button: button,
1295
1400
  body: _body,
1296
1401
  form: formData,
1297
- options: _ajaxMethods2
1402
+ options: _ajaxMethods
1298
1403
  };
1299
- var _applyArgs2 = [_commitParams2].concat(args);
1404
+ var _applyArgs = [_commitParams3].concat(args);
1300
1405
  // 排除掉新增且标记为删除的数据
1301
1406
  if (insertRecords.length) {
1302
1407
  _body.pendingRecords = pendingRecords.filter(function (row) {
@@ -1321,7 +1426,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1321
1426
  }
1322
1427
  if (_body.insertRecords.length || _removeRecords.length || updateRecords.length || _body.pendingRecords.length) {
1323
1428
  reactData.tableLoading = true;
1324
- return Promise.resolve((beforeSave || _ajaxMethods2).apply(void 0, _toConsumableArray(_applyArgs2))).then(function (rest) {
1429
+ return Promise.resolve((beforeSave || _ajaxMethods).apply(void 0, _toConsumableArray(_applyArgs))).then(function (rest) {
1325
1430
  reactData.tableLoading = false;
1326
1431
  $xeTable.clearPendingRow();
1327
1432
  if (isRespMsg) {
@@ -1335,12 +1440,15 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1335
1440
  });
1336
1441
  }
1337
1442
  if (afterSave) {
1338
- afterSave.apply(void 0, _toConsumableArray(_applyArgs2));
1443
+ afterSave.apply(void 0, _toConsumableArray(_applyArgs));
1339
1444
  } else {
1445
+ internalData.uFoot = true;
1340
1446
  $xeGantt.commitProxy('query');
1447
+ internalData.uFoot = false;
1448
+ $xeGantt.updateQueryFooter();
1341
1449
  }
1342
1450
  if (saveSuccessMethods) {
1343
- saveSuccessMethods(Object.assign(Object.assign({}, _commitParams2), {
1451
+ saveSuccessMethods(Object.assign(Object.assign({}, _commitParams3), {
1344
1452
  response: rest
1345
1453
  }));
1346
1454
  }
@@ -1361,7 +1469,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1361
1469
  });
1362
1470
  }
1363
1471
  if (saveErrorMethods) {
1364
- saveErrorMethods(Object.assign(Object.assign({}, _commitParams2), {
1472
+ saveErrorMethods(Object.assign(Object.assign({}, _commitParams3), {
1365
1473
  response: rest
1366
1474
  }));
1367
1475
  }
@@ -1667,14 +1775,26 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
1667
1775
  },
1668
1776
  triggerToolbarCommitEvent: function triggerToolbarCommitEvent(params, evnt) {
1669
1777
  var $xeGantt = this;
1778
+ var internalData = $xeGantt.internalData;
1670
1779
  var code = params.code;
1671
- return $xeGantt.commitProxy(params, evnt).then(function (rest) {
1672
- if (code && rest && rest.status && ['query', 'reload', 'delete', 'save'].includes(code)) {
1673
- $xeGantt.dispatchEvent(code === 'delete' || code === 'save' ? "proxy-".concat(code) : 'proxy-query', Object.assign(Object.assign({}, rest), {
1674
- isReload: code === 'reload'
1675
- }), evnt);
1780
+ if (code) {
1781
+ var isUf = ['reload', 'delete', 'save'].includes(code);
1782
+ if (isUf) {
1783
+ internalData.uFoot = true;
1676
1784
  }
1677
- });
1785
+ var rest = $xeGantt.commitProxy(params, evnt).then(function (rest) {
1786
+ if (code && rest && rest.status && ['query', 'reload', 'delete', 'save'].includes(code)) {
1787
+ $xeGantt.dispatchEvent(code === 'delete' || code === 'save' ? "proxy-".concat(code) : 'proxy-query', Object.assign(Object.assign({}, rest), {
1788
+ isReload: code === 'reload'
1789
+ }), evnt);
1790
+ }
1791
+ });
1792
+ if (isUf) {
1793
+ $xeGantt.updateQueryFooter();
1794
+ }
1795
+ internalData.uFoot = false;
1796
+ return rest;
1797
+ }
1678
1798
  },
1679
1799
  triggerToolbarBtnEvent: function triggerToolbarBtnEvent(button, evnt) {
1680
1800
  var $xeGantt = this;