vxe-gantt 4.6.5 → 4.6.7
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/dist/all.esm.js +333 -189
- package/es/gantt/src/gantt-body.js +3 -1
- package/es/gantt/src/gantt-header.js +34 -8
- package/es/gantt/src/gantt-view.js +42 -17
- package/es/gantt/src/gantt.js +252 -161
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/lib/gantt/src/gantt-body.js +5 -1
- package/lib/gantt/src/gantt-body.min.js +1 -1
- package/lib/gantt/src/gantt-header.js +29 -8
- package/lib/gantt/src/gantt-header.min.js +1 -1
- package/lib/gantt/src/gantt-view.js +53 -18
- package/lib/gantt/src/gantt-view.min.js +1 -1
- package/lib/gantt/src/gantt.js +321 -204
- package/lib/gantt/src/gantt.min.js +1 -1
- package/lib/index.umd.js +428 -237
- package/lib/index.umd.min.js +1 -1
- package/lib/ui/index.js +1 -1
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/package.json +3 -3
- package/packages/gantt/src/gantt-body.ts +3 -1
- package/packages/gantt/src/gantt-header.ts +33 -8
- package/packages/gantt/src/gantt-view.ts +45 -17
- package/packages/gantt/src/gantt.ts +243 -153
package/dist/all.esm.js
CHANGED
|
@@ -6,7 +6,7 @@ import DomZIndex from 'dom-zindex';
|
|
|
6
6
|
import { VxeTable } from 'vxe-table';
|
|
7
7
|
|
|
8
8
|
const { setConfig: setConfig$1, setIcon } = VxeUI;
|
|
9
|
-
VxeUI.ganttVersion = "4.6.
|
|
9
|
+
VxeUI.ganttVersion = "4.6.7";
|
|
10
10
|
const ymdFormat = 'yyyy-MM-dd';
|
|
11
11
|
const ymdhmsFormat = 'yyyy-MM-dd HH:mm:ss';
|
|
12
12
|
setConfig$1({
|
|
@@ -115,7 +115,7 @@ setIcon({
|
|
|
115
115
|
});
|
|
116
116
|
|
|
117
117
|
const { log } = VxeUI;
|
|
118
|
-
const ganttVersion = `gantt v${"4.6.
|
|
118
|
+
const ganttVersion = `gantt v${"4.6.7"}`;
|
|
119
119
|
function createComponentLog(name) {
|
|
120
120
|
const uiVersion = VxeUI.uiVersion ? `ui v${VxeUI.uiVersion}` : '';
|
|
121
121
|
const tableVersion = VxeUI.tableVersion ? `table v${VxeUI.tableVersion}` : '';
|
|
@@ -451,7 +451,7 @@ var GanttViewHeaderComponent = defineVxeComponent({
|
|
|
451
451
|
setup() {
|
|
452
452
|
const $xeGantt = inject('$xeGantt', {});
|
|
453
453
|
const $xeGanttView = inject('$xeGanttView', {});
|
|
454
|
-
const { computeTaskViewOpts } = $xeGantt.getComputeMaps();
|
|
454
|
+
const { computeTaskViewOpts, computeScaleStep, computeMinScale } = $xeGantt.getComputeMaps();
|
|
455
455
|
const { reactData, internalData } = $xeGanttView;
|
|
456
456
|
const refElem = ref();
|
|
457
457
|
const refHeaderScroll = ref();
|
|
@@ -461,6 +461,8 @@ var GanttViewHeaderComponent = defineVxeComponent({
|
|
|
461
461
|
const { headerGroups, viewCellWidth } = reactData;
|
|
462
462
|
const { todayDateMaps, visibleColumn } = internalData;
|
|
463
463
|
const taskViewOpts = computeTaskViewOpts.value;
|
|
464
|
+
const minScale = computeMinScale.value;
|
|
465
|
+
const scaleStep = computeScaleStep.value;
|
|
464
466
|
const { showNowLine } = taskViewOpts;
|
|
465
467
|
return h('div', {
|
|
466
468
|
ref: refElem,
|
|
@@ -495,17 +497,31 @@ var GanttViewHeaderComponent = defineVxeComponent({
|
|
|
495
497
|
return h('tr', {
|
|
496
498
|
key: $rowIndex
|
|
497
499
|
}, columns.map((column, cIndex) => {
|
|
498
|
-
const { field, childCount, dateObj } = column;
|
|
500
|
+
const { field, childCount, dateObj, startDateObj, endDateObj } = column;
|
|
499
501
|
let label = `${column.title}`;
|
|
500
|
-
if (
|
|
501
|
-
label = getI18n$1(`vxe.gantt.
|
|
502
|
+
if ((isLast || (minScale && (minScale.type === 'date' || minScale.type === 'day') && (type === 'date' || type === 'day'))) && scaleStep > 1) {
|
|
503
|
+
label = getI18n$1(`vxe.gantt.stepFormat.${type}`, {
|
|
504
|
+
start: startDateObj,
|
|
505
|
+
end: endDateObj,
|
|
506
|
+
eStartLabel: getI18n$1(`vxe.gantt.dayss.w${startDateObj.e}`),
|
|
507
|
+
eEndLabel: getI18n$1(`vxe.gantt.dayss.w${endDateObj.e}`)
|
|
508
|
+
});
|
|
502
509
|
}
|
|
503
510
|
else {
|
|
504
|
-
if (
|
|
505
|
-
|
|
511
|
+
if (type === 'day') {
|
|
512
|
+
if ($rowIndex) {
|
|
513
|
+
label = getI18n$1(`vxe.gantt.tSimpleFormat.${type}`, {
|
|
514
|
+
eLabel: getI18n$1(`vxe.gantt.dayss.w${dateObj.e}`)
|
|
515
|
+
});
|
|
516
|
+
}
|
|
517
|
+
else {
|
|
518
|
+
label = getI18n$1(`vxe.gantt.tFullFormat.${type}`, {
|
|
519
|
+
eLabel: getI18n$1(`vxe.gantt.dayss.w${dateObj.e}`)
|
|
520
|
+
});
|
|
521
|
+
}
|
|
506
522
|
}
|
|
507
523
|
else {
|
|
508
|
-
if (
|
|
524
|
+
if ($rowIndex) {
|
|
509
525
|
label = getI18n$1(`vxe.gantt.tSimpleFormat.${type}`, dateObj);
|
|
510
526
|
}
|
|
511
527
|
else {
|
|
@@ -514,7 +530,17 @@ var GanttViewHeaderComponent = defineVxeComponent({
|
|
|
514
530
|
}
|
|
515
531
|
}
|
|
516
532
|
let cellVNs = label;
|
|
517
|
-
const ctParams = {
|
|
533
|
+
const ctParams = {
|
|
534
|
+
source: sourceType$4,
|
|
535
|
+
type: viewType$3,
|
|
536
|
+
column,
|
|
537
|
+
scaleObj: scaleItem,
|
|
538
|
+
title: label,
|
|
539
|
+
dateObj,
|
|
540
|
+
startDateObj,
|
|
541
|
+
endDateObj,
|
|
542
|
+
$rowIndex
|
|
543
|
+
};
|
|
518
544
|
if (titleSlot) {
|
|
519
545
|
cellVNs = $xeGantt.callSlot(titleSlot, ctParams);
|
|
520
546
|
}
|
|
@@ -1022,7 +1048,7 @@ var GanttViewBodyComponent = defineVxeComponent({
|
|
|
1022
1048
|
const { showNowLine, viewStyle } = taskViewOpts;
|
|
1023
1049
|
const scaleUnit = computeScaleUnit.value;
|
|
1024
1050
|
const { scaleItem } = headerGroups[headerGroups.length - 1] || {};
|
|
1025
|
-
const { field, dateObj } = column;
|
|
1051
|
+
const { field, dateObj, startDateObj, endDateObj } = column;
|
|
1026
1052
|
const { cellClassName, cellStyle } = viewStyle || {};
|
|
1027
1053
|
const todayValue = showNowLine && scaleItem ? todayDateMaps[scaleItem.type] : null;
|
|
1028
1054
|
const rowRest = fullAllDataRowIdData[rowid] || {};
|
|
@@ -1066,6 +1092,8 @@ var GanttViewBodyComponent = defineVxeComponent({
|
|
|
1066
1092
|
type: viewType$1,
|
|
1067
1093
|
scaleType: scaleUnit,
|
|
1068
1094
|
dateObj,
|
|
1095
|
+
startDateObj,
|
|
1096
|
+
endDateObj,
|
|
1069
1097
|
row,
|
|
1070
1098
|
column,
|
|
1071
1099
|
$rowIndex,
|
|
@@ -1393,7 +1421,7 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
1393
1421
|
let rightSize = ganttReactData.currRightSpacing + XEUtils.toNumber(gridding ? gridding.rightSpacing || 0 : 0);
|
|
1394
1422
|
if (scaleStep > 0) {
|
|
1395
1423
|
leftSize *= scaleStep;
|
|
1396
|
-
rightSize *=
|
|
1424
|
+
rightSize *= scaleStep;
|
|
1397
1425
|
}
|
|
1398
1426
|
switch (type) {
|
|
1399
1427
|
case 'year': {
|
|
@@ -1561,6 +1589,8 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
1561
1589
|
const minScale = computeMinScale.value;
|
|
1562
1590
|
const weekScale = computeWeekScale.value;
|
|
1563
1591
|
const scaleDateList = computeScaleDateList.value;
|
|
1592
|
+
const scaleStep = computeScaleStep.value;
|
|
1593
|
+
const weekStartDay = weekScale ? weekScale.startDay : undefined;
|
|
1564
1594
|
const fullCols = [];
|
|
1565
1595
|
const groupCols = [];
|
|
1566
1596
|
if (minScale && scaleUnit && scaleDateList.length) {
|
|
@@ -1606,65 +1636,88 @@ var GanttViewComponent = defineVxeComponent({
|
|
|
1606
1636
|
currGpCol.children.push(minCol);
|
|
1607
1637
|
}
|
|
1608
1638
|
};
|
|
1609
|
-
|
|
1610
|
-
|
|
1611
|
-
|
|
1612
|
-
const e = itemDate.getDay();
|
|
1639
|
+
const createDateObj = (date) => {
|
|
1640
|
+
let [yy, yyyy, M, MM, d, dd, H, HH, m, mm, s, ss] = XEUtils.toDateString(date, 'yy-yyyy-M-MM-d-dd-H-HH-m-mm-s-ss').split('-');
|
|
1641
|
+
const e = date.getDay();
|
|
1613
1642
|
const E = e + 1;
|
|
1614
|
-
const q = Math.ceil((
|
|
1615
|
-
const W = `${XEUtils.getYearWeek(
|
|
1643
|
+
const q = Math.ceil((date.getMonth() + 1) / 3);
|
|
1644
|
+
const W = `${XEUtils.getYearWeek(date, weekScale ? weekScale.startDay : undefined)}`;
|
|
1616
1645
|
const WW = XEUtils.padStart(W, 2, '0');
|
|
1617
1646
|
if (isMinWeek && checkWeekOfsetYear(W, M)) {
|
|
1618
1647
|
yyyy = `${Number(yyyy) + 1}`;
|
|
1619
1648
|
M = '1';
|
|
1620
1649
|
MM = '0' + M;
|
|
1621
1650
|
}
|
|
1622
|
-
|
|
1651
|
+
return { date, yy, yyyy, M, MM, d, dd, H, HH, m, mm, s, ss, q, W, WW, E, e };
|
|
1652
|
+
};
|
|
1653
|
+
for (let i = 0; i < scaleDateList.length; i++) {
|
|
1654
|
+
const itemDate = scaleDateList[i];
|
|
1655
|
+
const dateObj = createDateObj(itemDate);
|
|
1656
|
+
const { yyyy, MM, dd, HH, mm, ss, q, W, E } = dateObj;
|
|
1657
|
+
const startDateObj = dateObj;
|
|
1623
1658
|
const colMaps = {
|
|
1624
1659
|
year: {
|
|
1625
1660
|
field: yyyy,
|
|
1626
1661
|
title: yyyy,
|
|
1627
|
-
dateObj
|
|
1662
|
+
dateObj,
|
|
1663
|
+
startDateObj,
|
|
1664
|
+
endDateObj: scaleStep > 1 ? createDateObj(XEUtils.getWhatYear(itemDate, scaleStep - 1)) : startDateObj
|
|
1628
1665
|
},
|
|
1629
1666
|
quarter: {
|
|
1630
1667
|
field: `${yyyy}_q${q}`,
|
|
1631
1668
|
title: `${q}`,
|
|
1632
|
-
dateObj
|
|
1669
|
+
dateObj,
|
|
1670
|
+
startDateObj,
|
|
1671
|
+
endDateObj: scaleStep > 1 ? createDateObj(XEUtils.getWhatQuarter(itemDate, scaleStep - 1)) : startDateObj
|
|
1633
1672
|
},
|
|
1634
1673
|
month: {
|
|
1635
1674
|
field: `${yyyy}_${MM}`,
|
|
1636
1675
|
title: MM,
|
|
1637
|
-
dateObj
|
|
1676
|
+
dateObj,
|
|
1677
|
+
startDateObj,
|
|
1678
|
+
endDateObj: scaleStep > 1 ? createDateObj(XEUtils.getWhatMonth(itemDate, scaleStep - 1)) : startDateObj
|
|
1638
1679
|
},
|
|
1639
1680
|
week: {
|
|
1640
1681
|
field: `${yyyy}_W${W}`,
|
|
1641
1682
|
title: `${W}`,
|
|
1642
|
-
dateObj
|
|
1683
|
+
dateObj,
|
|
1684
|
+
startDateObj,
|
|
1685
|
+
endDateObj: scaleStep > 1 ? createDateObj(XEUtils.getWhatWeek(itemDate, scaleStep - 1, weekStartDay, weekStartDay)) : startDateObj
|
|
1643
1686
|
},
|
|
1644
1687
|
day: {
|
|
1645
1688
|
field: `${yyyy}_${MM}_${dd}_E${E}`,
|
|
1646
1689
|
title: `${E}`,
|
|
1647
|
-
dateObj
|
|
1690
|
+
dateObj,
|
|
1691
|
+
startDateObj,
|
|
1692
|
+
endDateObj: scaleStep > 1 ? createDateObj(XEUtils.getWhatDay(itemDate, scaleStep - 1)) : startDateObj
|
|
1648
1693
|
},
|
|
1649
1694
|
date: {
|
|
1650
1695
|
field: `${yyyy}_${MM}_${dd}`,
|
|
1651
1696
|
title: dd,
|
|
1652
|
-
dateObj
|
|
1697
|
+
dateObj,
|
|
1698
|
+
startDateObj,
|
|
1699
|
+
endDateObj: scaleStep > 1 ? createDateObj(XEUtils.getWhatDay(itemDate, scaleStep - 1)) : startDateObj
|
|
1653
1700
|
},
|
|
1654
1701
|
hour: {
|
|
1655
1702
|
field: `${yyyy}_${MM}_${dd}_${HH}`,
|
|
1656
1703
|
title: HH,
|
|
1657
|
-
dateObj
|
|
1704
|
+
dateObj,
|
|
1705
|
+
startDateObj,
|
|
1706
|
+
endDateObj: scaleStep > 1 ? createDateObj(XEUtils.getWhatHours(itemDate, scaleStep - 1)) : startDateObj
|
|
1658
1707
|
},
|
|
1659
1708
|
minute: {
|
|
1660
1709
|
field: `${yyyy}_${MM}_${dd}_${HH}_${mm}`,
|
|
1661
1710
|
title: mm,
|
|
1662
|
-
dateObj
|
|
1711
|
+
dateObj,
|
|
1712
|
+
startDateObj,
|
|
1713
|
+
endDateObj: scaleStep > 1 ? createDateObj(XEUtils.getWhatMinutes(itemDate, scaleStep - 1)) : startDateObj
|
|
1663
1714
|
},
|
|
1664
1715
|
second: {
|
|
1665
1716
|
field: `${yyyy}_${MM}_${dd}_${HH}_${mm}_${ss}`,
|
|
1666
1717
|
title: ss,
|
|
1667
|
-
dateObj
|
|
1718
|
+
dateObj,
|
|
1719
|
+
startDateObj,
|
|
1720
|
+
endDateObj: scaleStep > 1 ? createDateObj(XEUtils.getWhatSeconds(itemDate, scaleStep - 1)) : startDateObj
|
|
1668
1721
|
}
|
|
1669
1722
|
};
|
|
1670
1723
|
const minCol = colMaps[minScale.type];
|
|
@@ -4221,7 +4274,7 @@ var VxeGanttComponent = defineVxeComponent({
|
|
|
4221
4274
|
const proxyOpts = computeProxyOpts.value;
|
|
4222
4275
|
const pagerOpts = computePagerOpts.value;
|
|
4223
4276
|
const toolbarOpts = computeToolbarOpts.value;
|
|
4224
|
-
const { beforeQuery, afterQuery, beforeQueryFooter, afterQueryFooter, beforeDelete, afterDelete, beforeSave, afterSave, ajax = {} } = proxyOpts;
|
|
4277
|
+
const { beforeQuery: oldBeforeQuery, afterQuery: oldAfterQuery, beforeQueryFooter: oldBeforeQueryFooter, afterQueryFooter: oldAfterQueryFooter, beforeDelete: oldBeforeDelete, afterDelete: oldAfterDelete, beforeSave: oldBeforeSave, afterSave: oldAfterSave, ajax = {} } = proxyOpts;
|
|
4225
4278
|
const resConfigs = (proxyOpts.response || proxyOpts.props || {});
|
|
4226
4279
|
const $xeTable = refTable.value;
|
|
4227
4280
|
if (!$xeTable) {
|
|
@@ -4272,10 +4325,12 @@ var VxeGanttComponent = defineVxeComponent({
|
|
|
4272
4325
|
case 'initial':
|
|
4273
4326
|
case 'reload':
|
|
4274
4327
|
case 'query': {
|
|
4275
|
-
const
|
|
4276
|
-
const
|
|
4277
|
-
const
|
|
4278
|
-
|
|
4328
|
+
const bqMethod = ajax.beforeQuery;
|
|
4329
|
+
const qMethod = ajax.query;
|
|
4330
|
+
const aqMethod = ajax.afterQuery;
|
|
4331
|
+
const qsMethod = ajax.querySuccess;
|
|
4332
|
+
const qeMethod = ajax.queryError;
|
|
4333
|
+
if (qMethod) {
|
|
4279
4334
|
const isInited = code === 'initial';
|
|
4280
4335
|
const isReload = code === 'reload';
|
|
4281
4336
|
if (!isInited && reactData.tableLoading) {
|
|
@@ -4357,73 +4412,91 @@ var VxeGanttComponent = defineVxeComponent({
|
|
|
4357
4412
|
sorts: sortList,
|
|
4358
4413
|
filters: filterList,
|
|
4359
4414
|
form: formData,
|
|
4360
|
-
options:
|
|
4415
|
+
options: qMethod
|
|
4361
4416
|
};
|
|
4362
|
-
|
|
4363
|
-
|
|
4364
|
-
|
|
4365
|
-
|
|
4366
|
-
Promise.
|
|
4367
|
-
|
|
4368
|
-
|
|
4369
|
-
|
|
4370
|
-
|
|
4371
|
-
|
|
4372
|
-
|
|
4373
|
-
if (pagerConfig && isEnableConf(pagerOpts)) {
|
|
4374
|
-
const totalProp = resConfigs.total;
|
|
4375
|
-
const total = (XEUtils.isFunction(totalProp) ? totalProp(reParams) : XEUtils.get(rest, totalProp || 'page.total')) || 0;
|
|
4376
|
-
tablePage.total = XEUtils.toNumber(total);
|
|
4377
|
-
const resultProp = resConfigs.result;
|
|
4378
|
-
tableData = (XEUtils.isFunction(resultProp) ? resultProp(reParams) : XEUtils.get(rest, resultProp || 'result')) || [];
|
|
4379
|
-
// 检验当前页码,不能超出当前最大页数
|
|
4380
|
-
const pageCount = Math.max(Math.ceil(total / tablePage.pageSize), 1);
|
|
4381
|
-
if (tablePage.currentPage > pageCount) {
|
|
4382
|
-
tablePage.currentPage = pageCount;
|
|
4383
|
-
}
|
|
4417
|
+
const handleQuery = () => {
|
|
4418
|
+
reactData.sortData = sortList;
|
|
4419
|
+
reactData.filterData = filterList;
|
|
4420
|
+
reactData.tableLoading = true;
|
|
4421
|
+
return Promise.all([
|
|
4422
|
+
Promise.resolve((oldBeforeQuery || qMethod)(commitParams, ...args)),
|
|
4423
|
+
operPromise
|
|
4424
|
+
]).then(([rest]) => {
|
|
4425
|
+
reactData.tableLoading = false;
|
|
4426
|
+
if (aqMethod) {
|
|
4427
|
+
aqMethod(Object.assign(Object.assign({}, commitParams), { response: rest, status: 'success' }), ...args);
|
|
4384
4428
|
}
|
|
4385
4429
|
else {
|
|
4386
|
-
|
|
4387
|
-
if (
|
|
4388
|
-
|
|
4389
|
-
|
|
4390
|
-
|
|
4391
|
-
|
|
4392
|
-
|
|
4393
|
-
|
|
4394
|
-
|
|
4395
|
-
|
|
4396
|
-
|
|
4397
|
-
|
|
4398
|
-
|
|
4430
|
+
let tableData = [];
|
|
4431
|
+
if (rest) {
|
|
4432
|
+
const reParams = { data: rest, $table: $xeTable, $grid: null, $gantt: $xeGantt };
|
|
4433
|
+
if (pagerConfig && isEnableConf(pagerOpts)) {
|
|
4434
|
+
const totalProp = resConfigs.total;
|
|
4435
|
+
const total = (XEUtils.isFunction(totalProp) ? totalProp(reParams) : XEUtils.get(rest, totalProp || 'page.total')) || 0;
|
|
4436
|
+
tablePage.total = XEUtils.toNumber(total);
|
|
4437
|
+
const resultProp = resConfigs.result;
|
|
4438
|
+
tableData = (XEUtils.isFunction(resultProp) ? resultProp(reParams) : XEUtils.get(rest, resultProp || 'result')) || [];
|
|
4439
|
+
// 检验当前页码,不能超出当前最大页数
|
|
4440
|
+
const pageCount = Math.max(Math.ceil(total / tablePage.pageSize), 1);
|
|
4441
|
+
if (tablePage.currentPage > pageCount) {
|
|
4442
|
+
tablePage.currentPage = pageCount;
|
|
4443
|
+
}
|
|
4444
|
+
}
|
|
4445
|
+
else {
|
|
4446
|
+
const listProp = resConfigs.list;
|
|
4447
|
+
if (XEUtils.isArray(rest)) {
|
|
4448
|
+
tableData = rest;
|
|
4449
|
+
}
|
|
4450
|
+
else if (listProp) {
|
|
4451
|
+
tableData = (XEUtils.isFunction(listProp) ? listProp(reParams) : XEUtils.get(rest, listProp)) || [];
|
|
4452
|
+
}
|
|
4453
|
+
}
|
|
4454
|
+
if (showFooter) {
|
|
4455
|
+
const fdProp = resConfigs.footerData;
|
|
4456
|
+
const footerList = fdProp ? (XEUtils.isFunction(fdProp) ? fdProp(reParams) : XEUtils.get(rest, fdProp)) : [];
|
|
4457
|
+
if (XEUtils.isArray(footerList)) {
|
|
4458
|
+
reactData.footerData = footerList;
|
|
4459
|
+
}
|
|
4460
|
+
}
|
|
4399
4461
|
}
|
|
4400
|
-
}
|
|
4401
|
-
}
|
|
4402
|
-
if ($xeTable) {
|
|
4403
|
-
$xeTable.loadData(tableData);
|
|
4404
|
-
}
|
|
4405
|
-
else {
|
|
4406
|
-
nextTick(() => {
|
|
4407
|
-
const $xeTable = refTable.value;
|
|
4408
4462
|
if ($xeTable) {
|
|
4409
4463
|
$xeTable.loadData(tableData);
|
|
4410
4464
|
}
|
|
4411
|
-
|
|
4412
|
-
|
|
4413
|
-
|
|
4414
|
-
|
|
4415
|
-
|
|
4416
|
-
|
|
4417
|
-
|
|
4418
|
-
|
|
4419
|
-
|
|
4420
|
-
|
|
4421
|
-
|
|
4422
|
-
|
|
4423
|
-
|
|
4424
|
-
|
|
4425
|
-
|
|
4426
|
-
|
|
4465
|
+
else {
|
|
4466
|
+
nextTick(() => {
|
|
4467
|
+
const $xeTable = refTable.value;
|
|
4468
|
+
if ($xeTable) {
|
|
4469
|
+
$xeTable.loadData(tableData);
|
|
4470
|
+
}
|
|
4471
|
+
});
|
|
4472
|
+
}
|
|
4473
|
+
if (oldAfterQuery) {
|
|
4474
|
+
oldAfterQuery(Object.assign(Object.assign({}, commitParams), { response: rest }), ...args);
|
|
4475
|
+
}
|
|
4476
|
+
}
|
|
4477
|
+
if (qsMethod) {
|
|
4478
|
+
qsMethod(Object.assign(Object.assign({}, commitParams), { response: rest }));
|
|
4479
|
+
}
|
|
4480
|
+
return { status: true };
|
|
4481
|
+
}).catch((rest) => {
|
|
4482
|
+
reactData.tableLoading = false;
|
|
4483
|
+
if (aqMethod) {
|
|
4484
|
+
aqMethod(Object.assign(Object.assign({}, commitParams), { response: rest, status: 'error' }), ...args);
|
|
4485
|
+
}
|
|
4486
|
+
if (qeMethod) {
|
|
4487
|
+
qeMethod(Object.assign(Object.assign({}, commitParams), { response: rest }));
|
|
4488
|
+
}
|
|
4489
|
+
return { status: false };
|
|
4490
|
+
});
|
|
4491
|
+
};
|
|
4492
|
+
if (bqMethod) {
|
|
4493
|
+
return Promise.resolve(bqMethod(commitParams, ...args)).then(status => {
|
|
4494
|
+
if (status !== false) {
|
|
4495
|
+
return handleQuery();
|
|
4496
|
+
}
|
|
4497
|
+
});
|
|
4498
|
+
}
|
|
4499
|
+
return handleQuery();
|
|
4427
4500
|
}
|
|
4428
4501
|
else {
|
|
4429
4502
|
errLog('vxe.error.notFunc', ['proxy-config.ajax.query']);
|
|
@@ -4431,39 +4504,66 @@ var VxeGanttComponent = defineVxeComponent({
|
|
|
4431
4504
|
break;
|
|
4432
4505
|
}
|
|
4433
4506
|
case 'queryFooter': {
|
|
4434
|
-
const
|
|
4435
|
-
const
|
|
4436
|
-
const
|
|
4437
|
-
|
|
4507
|
+
const bqfMethod = ajax.beforeQueryFooter;
|
|
4508
|
+
const qfMethod = ajax.queryFooter;
|
|
4509
|
+
const aqfMethod = ajax.afterQueryFooter;
|
|
4510
|
+
const qfSuccessMethod = ajax.queryFooterSuccess;
|
|
4511
|
+
const qfErrorMethod = ajax.queryFooterError;
|
|
4512
|
+
if (qfMethod) {
|
|
4438
4513
|
let filterList = [];
|
|
4439
4514
|
if ($xeTable) {
|
|
4440
4515
|
filterList = $xeTable.getCheckedFilters();
|
|
4441
4516
|
}
|
|
4517
|
+
let pageParams = {};
|
|
4518
|
+
if (pagerConfig) {
|
|
4519
|
+
if (isEnableConf(pagerOpts)) {
|
|
4520
|
+
pageParams = Object.assign({}, tablePage);
|
|
4521
|
+
}
|
|
4522
|
+
}
|
|
4442
4523
|
const commitParams = {
|
|
4443
4524
|
$table: $xeTable,
|
|
4444
4525
|
$grid: null,
|
|
4445
4526
|
$gantt: $xeGantt,
|
|
4446
4527
|
code,
|
|
4447
4528
|
button,
|
|
4529
|
+
page: pageParams,
|
|
4448
4530
|
filters: filterList,
|
|
4449
4531
|
form: formData,
|
|
4450
|
-
options:
|
|
4532
|
+
options: qfMethod
|
|
4451
4533
|
};
|
|
4452
|
-
|
|
4453
|
-
|
|
4454
|
-
|
|
4455
|
-
|
|
4456
|
-
|
|
4457
|
-
|
|
4458
|
-
|
|
4459
|
-
|
|
4460
|
-
|
|
4461
|
-
|
|
4462
|
-
|
|
4463
|
-
|
|
4464
|
-
|
|
4465
|
-
|
|
4466
|
-
|
|
4534
|
+
const handleQueryFooter = () => {
|
|
4535
|
+
return Promise.resolve((oldBeforeQueryFooter || qfMethod)(commitParams, ...args)).then(rest => {
|
|
4536
|
+
if (aqfMethod) {
|
|
4537
|
+
aqfMethod(Object.assign(Object.assign({}, commitParams), { response: rest, status: 'success' }), ...args);
|
|
4538
|
+
}
|
|
4539
|
+
else {
|
|
4540
|
+
reactData.footerData = XEUtils.isArray(rest) ? rest : [];
|
|
4541
|
+
if (oldAfterQueryFooter) {
|
|
4542
|
+
oldAfterQueryFooter(Object.assign(Object.assign({}, commitParams), { response: rest }), ...args);
|
|
4543
|
+
}
|
|
4544
|
+
}
|
|
4545
|
+
if (qfSuccessMethod) {
|
|
4546
|
+
qfSuccessMethod(Object.assign(Object.assign({}, commitParams), { response: rest }));
|
|
4547
|
+
}
|
|
4548
|
+
return { status: true };
|
|
4549
|
+
}).catch((rest) => {
|
|
4550
|
+
if (aqfMethod) {
|
|
4551
|
+
aqfMethod(Object.assign(Object.assign({}, commitParams), { response: rest, status: 'error' }), ...args);
|
|
4552
|
+
}
|
|
4553
|
+
if (qfErrorMethod) {
|
|
4554
|
+
qfErrorMethod(Object.assign(Object.assign({}, commitParams), { response: rest }));
|
|
4555
|
+
}
|
|
4556
|
+
return { status: false };
|
|
4557
|
+
});
|
|
4558
|
+
};
|
|
4559
|
+
if (bqfMethod) {
|
|
4560
|
+
return Promise.resolve(bqfMethod(commitParams, ...args)).then(status => {
|
|
4561
|
+
if (status !== false) {
|
|
4562
|
+
return handleQueryFooter();
|
|
4563
|
+
}
|
|
4564
|
+
});
|
|
4565
|
+
}
|
|
4566
|
+
return handleQueryFooter();
|
|
4467
4567
|
}
|
|
4468
4568
|
else {
|
|
4469
4569
|
errLog('vxe.error.notFunc', ['proxy-config.ajax.queryFooter']);
|
|
@@ -4471,10 +4571,12 @@ var VxeGanttComponent = defineVxeComponent({
|
|
|
4471
4571
|
break;
|
|
4472
4572
|
}
|
|
4473
4573
|
case 'delete': {
|
|
4474
|
-
const
|
|
4574
|
+
const bdMethod = ajax.beforeDelete;
|
|
4575
|
+
const dMethod = ajax.delete;
|
|
4576
|
+
const adMethod = ajax.afterDelete;
|
|
4475
4577
|
const deleteSuccessMethods = ajax.deleteSuccess;
|
|
4476
4578
|
const deleteErrorMethods = ajax.deleteError;
|
|
4477
|
-
if (
|
|
4579
|
+
if (dMethod) {
|
|
4478
4580
|
const selectRecords = $xeGantt.getCheckboxRecords();
|
|
4479
4581
|
const removeRecords = selectRecords.filter(row => !$xeTable.isInsertByRow(row));
|
|
4480
4582
|
const body = { removeRecords };
|
|
@@ -4486,49 +4588,69 @@ var VxeGanttComponent = defineVxeComponent({
|
|
|
4486
4588
|
button,
|
|
4487
4589
|
body,
|
|
4488
4590
|
form: formData,
|
|
4489
|
-
options:
|
|
4591
|
+
options: dMethod
|
|
4490
4592
|
};
|
|
4491
4593
|
if (selectRecords.length) {
|
|
4492
4594
|
return handleDeleteRow(code, 'vxe.grid.deleteSelectRecord', () => {
|
|
4493
4595
|
if (!removeRecords.length) {
|
|
4494
4596
|
return $xeTable.remove(selectRecords);
|
|
4495
4597
|
}
|
|
4496
|
-
|
|
4497
|
-
|
|
4498
|
-
.
|
|
4499
|
-
|
|
4500
|
-
|
|
4501
|
-
|
|
4502
|
-
|
|
4503
|
-
VxeUI.modal.message({ content: getRespMsg(rest, 'vxe.grid.delSuccess'), status: 'success' });
|
|
4598
|
+
const handleDelete = () => {
|
|
4599
|
+
reactData.tableLoading = true;
|
|
4600
|
+
return Promise.resolve((oldBeforeDelete || dMethod)(commitParams, ...args))
|
|
4601
|
+
.then(rest => {
|
|
4602
|
+
reactData.tableLoading = false;
|
|
4603
|
+
if (adMethod) {
|
|
4604
|
+
adMethod(Object.assign(Object.assign({}, commitParams), { response: rest, status: 'success' }), ...args);
|
|
4504
4605
|
}
|
|
4505
|
-
|
|
4506
|
-
|
|
4507
|
-
|
|
4508
|
-
|
|
4509
|
-
|
|
4510
|
-
|
|
4511
|
-
|
|
4512
|
-
|
|
4513
|
-
|
|
4514
|
-
|
|
4515
|
-
|
|
4516
|
-
|
|
4517
|
-
|
|
4518
|
-
|
|
4519
|
-
|
|
4520
|
-
|
|
4521
|
-
reactData.tableLoading = false;
|
|
4522
|
-
if (isRespMsg) {
|
|
4523
|
-
if (VxeUI.modal) {
|
|
4524
|
-
VxeUI.modal.message({ id: code, content: getRespMsg(rest, 'vxe.grid.operError'), status: 'error' });
|
|
4606
|
+
else {
|
|
4607
|
+
$xeTable.setPendingRow(removeRecords, false);
|
|
4608
|
+
if (isRespMsg) {
|
|
4609
|
+
if (VxeUI.modal) {
|
|
4610
|
+
VxeUI.modal.message({ content: getRespMsg(rest, 'vxe.grid.delSuccess'), status: 'success' });
|
|
4611
|
+
}
|
|
4612
|
+
}
|
|
4613
|
+
if (oldAfterDelete) {
|
|
4614
|
+
oldAfterDelete(Object.assign(Object.assign({}, commitParams), { response: rest }), ...args);
|
|
4615
|
+
}
|
|
4616
|
+
else {
|
|
4617
|
+
internalData.uFoot = true;
|
|
4618
|
+
$xeGantt.commitProxy('query');
|
|
4619
|
+
internalData.uFoot = false;
|
|
4620
|
+
updateQueryFooter();
|
|
4621
|
+
}
|
|
4525
4622
|
}
|
|
4526
|
-
|
|
4527
|
-
|
|
4528
|
-
|
|
4529
|
-
|
|
4530
|
-
|
|
4531
|
-
|
|
4623
|
+
if (deleteSuccessMethods) {
|
|
4624
|
+
deleteSuccessMethods(Object.assign(Object.assign({}, commitParams), { response: rest }));
|
|
4625
|
+
}
|
|
4626
|
+
return { status: true };
|
|
4627
|
+
})
|
|
4628
|
+
.catch(rest => {
|
|
4629
|
+
reactData.tableLoading = false;
|
|
4630
|
+
if (adMethod) {
|
|
4631
|
+
adMethod(Object.assign(Object.assign({}, commitParams), { response: rest, status: 'error' }), ...args);
|
|
4632
|
+
}
|
|
4633
|
+
else {
|
|
4634
|
+
if (isRespMsg) {
|
|
4635
|
+
if (VxeUI.modal) {
|
|
4636
|
+
VxeUI.modal.message({ id: code, content: getRespMsg(rest, 'vxe.grid.operError'), status: 'error' });
|
|
4637
|
+
}
|
|
4638
|
+
}
|
|
4639
|
+
}
|
|
4640
|
+
if (deleteErrorMethods) {
|
|
4641
|
+
deleteErrorMethods(Object.assign(Object.assign({}, commitParams), { response: rest }));
|
|
4642
|
+
}
|
|
4643
|
+
return { status: false };
|
|
4644
|
+
});
|
|
4645
|
+
};
|
|
4646
|
+
if (bdMethod) {
|
|
4647
|
+
return Promise.resolve(bdMethod(commitParams, ...args)).then(status => {
|
|
4648
|
+
if (status !== false) {
|
|
4649
|
+
return handleDelete();
|
|
4650
|
+
}
|
|
4651
|
+
});
|
|
4652
|
+
}
|
|
4653
|
+
return handleDelete();
|
|
4532
4654
|
});
|
|
4533
4655
|
}
|
|
4534
4656
|
else {
|
|
@@ -4545,10 +4667,12 @@ var VxeGanttComponent = defineVxeComponent({
|
|
|
4545
4667
|
break;
|
|
4546
4668
|
}
|
|
4547
4669
|
case 'save': {
|
|
4548
|
-
const
|
|
4549
|
-
const
|
|
4550
|
-
const
|
|
4551
|
-
|
|
4670
|
+
const bSaveMethod = ajax.beforeSave;
|
|
4671
|
+
const sMethod = ajax.save;
|
|
4672
|
+
const aSaveMethod = ajax.afterSave;
|
|
4673
|
+
const sSuccessMethod = ajax.saveSuccess;
|
|
4674
|
+
const sErrorMethod = ajax.saveError;
|
|
4675
|
+
if (sMethod) {
|
|
4552
4676
|
const body = $xeTable.getRecordset();
|
|
4553
4677
|
const { insertRecords, removeRecords, updateRecords, pendingRecords } = body;
|
|
4554
4678
|
const commitParams = {
|
|
@@ -4559,7 +4683,7 @@ var VxeGanttComponent = defineVxeComponent({
|
|
|
4559
4683
|
button,
|
|
4560
4684
|
body,
|
|
4561
4685
|
form: formData,
|
|
4562
|
-
options:
|
|
4686
|
+
options: sMethod
|
|
4563
4687
|
};
|
|
4564
4688
|
// 排除掉新增且标记为删除的数据
|
|
4565
4689
|
if (insertRecords.length) {
|
|
@@ -4580,42 +4704,62 @@ var VxeGanttComponent = defineVxeComponent({
|
|
|
4580
4704
|
return;
|
|
4581
4705
|
}
|
|
4582
4706
|
if (body.insertRecords.length || removeRecords.length || updateRecords.length || body.pendingRecords.length) {
|
|
4583
|
-
|
|
4584
|
-
|
|
4585
|
-
.
|
|
4586
|
-
|
|
4587
|
-
|
|
4588
|
-
|
|
4589
|
-
|
|
4590
|
-
VxeUI.modal.message({ content: getRespMsg(rest, 'vxe.grid.saveSuccess'), status: 'success' });
|
|
4707
|
+
const handleSave = () => {
|
|
4708
|
+
reactData.tableLoading = true;
|
|
4709
|
+
return Promise.resolve((oldBeforeSave || sMethod)(commitParams, ...args))
|
|
4710
|
+
.then(rest => {
|
|
4711
|
+
reactData.tableLoading = false;
|
|
4712
|
+
if (aSaveMethod) {
|
|
4713
|
+
aSaveMethod(Object.assign(Object.assign({}, commitParams), { response: rest, status: 'success' }), ...args);
|
|
4591
4714
|
}
|
|
4592
|
-
|
|
4593
|
-
|
|
4594
|
-
|
|
4595
|
-
|
|
4596
|
-
|
|
4597
|
-
|
|
4598
|
-
|
|
4599
|
-
|
|
4600
|
-
|
|
4601
|
-
|
|
4602
|
-
|
|
4603
|
-
|
|
4604
|
-
|
|
4605
|
-
|
|
4606
|
-
|
|
4607
|
-
|
|
4608
|
-
reactData.tableLoading = false;
|
|
4609
|
-
if (isRespMsg) {
|
|
4610
|
-
if (VxeUI.modal) {
|
|
4611
|
-
VxeUI.modal.message({ id: code, content: getRespMsg(rest, 'vxe.grid.operError'), status: 'error' });
|
|
4715
|
+
else {
|
|
4716
|
+
$xeTable.clearPendingRow();
|
|
4717
|
+
if (isRespMsg) {
|
|
4718
|
+
if (VxeUI.modal) {
|
|
4719
|
+
VxeUI.modal.message({ content: getRespMsg(rest, 'vxe.grid.saveSuccess'), status: 'success' });
|
|
4720
|
+
}
|
|
4721
|
+
}
|
|
4722
|
+
if (oldAfterSave) {
|
|
4723
|
+
oldAfterSave(Object.assign(Object.assign({}, commitParams), { response: rest }), ...args);
|
|
4724
|
+
}
|
|
4725
|
+
else {
|
|
4726
|
+
internalData.uFoot = true;
|
|
4727
|
+
$xeGantt.commitProxy('query');
|
|
4728
|
+
internalData.uFoot = false;
|
|
4729
|
+
updateQueryFooter();
|
|
4730
|
+
}
|
|
4612
4731
|
}
|
|
4613
|
-
|
|
4614
|
-
|
|
4615
|
-
|
|
4616
|
-
|
|
4617
|
-
|
|
4618
|
-
|
|
4732
|
+
if (sSuccessMethod) {
|
|
4733
|
+
sSuccessMethod(Object.assign(Object.assign({}, commitParams), { response: rest }));
|
|
4734
|
+
}
|
|
4735
|
+
return { status: true };
|
|
4736
|
+
})
|
|
4737
|
+
.catch(rest => {
|
|
4738
|
+
reactData.tableLoading = false;
|
|
4739
|
+
if (aSaveMethod) {
|
|
4740
|
+
aSaveMethod(Object.assign(Object.assign({}, commitParams), { response: rest, status: 'error' }), ...args);
|
|
4741
|
+
}
|
|
4742
|
+
else {
|
|
4743
|
+
if (isRespMsg) {
|
|
4744
|
+
if (VxeUI.modal) {
|
|
4745
|
+
VxeUI.modal.message({ id: code, content: getRespMsg(rest, 'vxe.grid.operError'), status: 'error' });
|
|
4746
|
+
}
|
|
4747
|
+
}
|
|
4748
|
+
}
|
|
4749
|
+
if (sErrorMethod) {
|
|
4750
|
+
sErrorMethod(Object.assign(Object.assign({}, commitParams), { response: rest }));
|
|
4751
|
+
}
|
|
4752
|
+
return { status: false };
|
|
4753
|
+
});
|
|
4754
|
+
};
|
|
4755
|
+
if (bSaveMethod) {
|
|
4756
|
+
return Promise.resolve(bSaveMethod(commitParams, ...args)).then(status => {
|
|
4757
|
+
if (status !== false) {
|
|
4758
|
+
return handleSave();
|
|
4759
|
+
}
|
|
4760
|
+
});
|
|
4761
|
+
}
|
|
4762
|
+
return handleSave();
|
|
4619
4763
|
}
|
|
4620
4764
|
else {
|
|
4621
4765
|
if (isActiveMsg) {
|