easy3wui 1.5.55-beta1 → 1.5.55-beta4
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/Easy3wEditBigTable/index.js +87 -47
- package/lib/index.js +9 -0
- package/package.json +1 -1
|
@@ -48,12 +48,9 @@ var _Easy3wEditBigTableForm = require('./Easy3wEditBigTableForm');
|
|
|
48
48
|
|
|
49
49
|
var _Easy3wEditBigTableForm2 = _interopRequireDefault(_Easy3wEditBigTableForm);
|
|
50
50
|
|
|
51
|
-
var _lodash = require('lodash');
|
|
52
|
-
|
|
53
51
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
|
|
54
52
|
|
|
55
|
-
/* eslint-disable no-alert */
|
|
56
|
-
var Selectors = _reactDataGridAddons.Data.Selectors;
|
|
53
|
+
var Selectors = _reactDataGridAddons.Data.Selectors; /* eslint-disable no-alert */
|
|
57
54
|
|
|
58
55
|
var Easy3wEditBigTable = function (_Component) {
|
|
59
56
|
(0, _inherits3['default'])(Easy3wEditBigTable, _Component);
|
|
@@ -74,8 +71,7 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
74
71
|
};
|
|
75
72
|
|
|
76
73
|
_this.onGridRowsUpdated = function (objUpdated) {
|
|
77
|
-
var
|
|
78
|
-
fromRowData = objUpdated.fromRowData;
|
|
74
|
+
var fromRowData = objUpdated.fromRowData;
|
|
79
75
|
var updated = objUpdated.updated;
|
|
80
76
|
var _this$props = _this.props,
|
|
81
77
|
touchAutoCompute = _this$props.touchAutoCompute,
|
|
@@ -86,7 +82,6 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
86
82
|
// 数据变更-自动计算行数据
|
|
87
83
|
updated = touchAutoCompute(objUpdated);
|
|
88
84
|
}
|
|
89
|
-
console.log('onGridRowsUpdated', objUpdated, updated);
|
|
90
85
|
var autoAddNumberIdxEdit = fromRowData.autoAddNumber_idx_edit;
|
|
91
86
|
|
|
92
87
|
dataList[autoAddNumberIdxEdit] = (0, _extends3['default'])({}, fromRowData, updated);
|
|
@@ -101,22 +96,37 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
101
96
|
};
|
|
102
97
|
|
|
103
98
|
_this.onRowsSelected = function (rows) {
|
|
104
|
-
_this.
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
99
|
+
var arrValues = _this.state.arrValues;
|
|
100
|
+
var rowKey = _this.props.rowKey;
|
|
101
|
+
|
|
102
|
+
var arrValuesNew = arrValues.concat(rows.map(function (r) {
|
|
103
|
+
return r.row[rowKey];
|
|
104
|
+
})); // 表格选择行索引
|
|
105
|
+
_this.onSelectedRowsChange(arrValuesNew);
|
|
109
106
|
};
|
|
110
107
|
|
|
111
108
|
_this.onRowsDeselected = function (rows) {
|
|
112
|
-
var
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
109
|
+
var arrValues = _this.state.arrValues;
|
|
110
|
+
var rowKey = _this.props.rowKey;
|
|
111
|
+
|
|
112
|
+
var arrValuesNew = arrValues.filter(function (key) {
|
|
113
|
+
var flag = true;
|
|
114
|
+
rows.map(function (r) {
|
|
115
|
+
var row = r.row;
|
|
116
|
+
|
|
117
|
+
if (key === row[rowKey]) {
|
|
118
|
+
// 删除已取消选择的行
|
|
119
|
+
flag = false;
|
|
120
|
+
}
|
|
121
|
+
return r;
|
|
122
|
+
});
|
|
123
|
+
return flag;
|
|
119
124
|
});
|
|
125
|
+
_this.onSelectedRowsChange(arrValuesNew);
|
|
126
|
+
};
|
|
127
|
+
|
|
128
|
+
_this.onSelectedRowsChange = function (arrValues) {
|
|
129
|
+
_this.setState({ arrValues: arrValues });
|
|
120
130
|
};
|
|
121
131
|
|
|
122
132
|
_this.touchAddRow = function () {
|
|
@@ -135,14 +145,14 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
135
145
|
var _this$props3 = _this.props,
|
|
136
146
|
onGridRowsUpdated = _this$props3.onGridRowsUpdated,
|
|
137
147
|
dataList = _this$props3.dataList;
|
|
138
|
-
var
|
|
148
|
+
var arrValues = _this.state.arrValues;
|
|
139
149
|
|
|
140
|
-
if (
|
|
150
|
+
if (arrValues.length) {
|
|
141
151
|
var newArr = []; // 复制的新数组
|
|
142
|
-
|
|
143
|
-
var newRow = (0, _extends3['default'])({}, dataList[
|
|
152
|
+
arrValues.forEach(function (key) {
|
|
153
|
+
var newRow = (0, _extends3['default'])({}, dataList[key]);
|
|
144
154
|
newArr.push(newRow);
|
|
145
|
-
return
|
|
155
|
+
return key;
|
|
146
156
|
});
|
|
147
157
|
var dataListNew = [].concat(dataList, newArr);
|
|
148
158
|
if (onGridRowsUpdated && typeof onGridRowsUpdated === 'function') {
|
|
@@ -160,21 +170,36 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
160
170
|
_this.deleteRow = function () {
|
|
161
171
|
var _this$props4 = _this.props,
|
|
162
172
|
dataList = _this$props4.dataList,
|
|
163
|
-
onGridRowsUpdated = _this$props4.onGridRowsUpdated
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
+
onGridRowsUpdated = _this$props4.onGridRowsUpdated,
|
|
174
|
+
objToolbarProps = _this$props4.objToolbarProps,
|
|
175
|
+
rowKey = _this$props4.rowKey;
|
|
176
|
+
var deleteRowInterface = objToolbarProps.deleteRowInterface;
|
|
177
|
+
var arrValues = _this.state.arrValues;
|
|
178
|
+
|
|
179
|
+
if (arrValues.length) {
|
|
180
|
+
// const dataListNew = []; // 删除选择行后的新数组
|
|
181
|
+
var dataListDel = []; // 要删除的行数组
|
|
182
|
+
var dataListNew = dataList.filter(function (row) {
|
|
183
|
+
var flag = true;
|
|
184
|
+
arrValues.map(function (key) {
|
|
185
|
+
if (key === row[rowKey]) {
|
|
186
|
+
dataListDel.push(row);
|
|
187
|
+
// 删除选择的行
|
|
188
|
+
flag = false;
|
|
189
|
+
}
|
|
190
|
+
return key;
|
|
191
|
+
});
|
|
192
|
+
return flag;
|
|
173
193
|
});
|
|
194
|
+
if (deleteRowInterface && typeof deleteRowInterface === 'function') {
|
|
195
|
+
// 删除行接口
|
|
196
|
+
deleteRowInterface(dataListDel, arrValues);
|
|
197
|
+
}
|
|
174
198
|
if (onGridRowsUpdated && typeof onGridRowsUpdated === 'function') {
|
|
175
199
|
// 数据变更-回调函数
|
|
176
200
|
onGridRowsUpdated('deleteRow', dataListNew);
|
|
177
201
|
}
|
|
202
|
+
_this.onSelectedRowsChange([]); // 选择行清空
|
|
178
203
|
} else {
|
|
179
204
|
_modal2['default'].error({
|
|
180
205
|
title: '错误',
|
|
@@ -258,7 +283,8 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
258
283
|
var _this$props5 = _this.props,
|
|
259
284
|
touchAutoCompute = _this$props5.touchAutoCompute,
|
|
260
285
|
onGridRowsUpdated = _this$props5.onGridRowsUpdated,
|
|
261
|
-
dataList = _this$props5.dataList
|
|
286
|
+
dataList = _this$props5.dataList,
|
|
287
|
+
rowKey = _this$props5.rowKey;
|
|
262
288
|
// if (touchAutoCompute && typeof touchAutoCompute === 'function') { // 数据变更-自动计算行数据
|
|
263
289
|
// updated = touchAutoCompute(objUpdated);
|
|
264
290
|
// }
|
|
@@ -280,8 +306,6 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
280
306
|
// toRow 改变的单元格的新行序号
|
|
281
307
|
// toRowId 改变的单元格的新行id
|
|
282
308
|
// updated 改变的单元格的新值
|
|
283
|
-
var rowKey = _this.ReactDataGridRef.props.rowKey;
|
|
284
|
-
|
|
285
309
|
updated = touchAutoCompute({ cellKey: objColumn.key, fromRow: autoAddNumberIdxView, toRow: autoAddNumberIdxView, fromRowId: row[rowKey], toRowId: row[rowKey], rowIds: [row[rowKey]], updated: updated, action: 'CELL_BATCH_CHANGE', fromRowData: row });
|
|
286
310
|
}
|
|
287
311
|
dataList[autoAddNumberIdxEdit] = (0, _extends3['default'])({}, row, updated);
|
|
@@ -300,10 +324,11 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
300
324
|
sortDirection = _this$state.sortDirection;
|
|
301
325
|
var _this$props6 = _this.props,
|
|
302
326
|
dataList = _this$props6.dataList,
|
|
303
|
-
enableCellSelect = _this$props6.enableCellSelect
|
|
327
|
+
enableCellSelect = _this$props6.enableCellSelect,
|
|
328
|
+
rowSelection = _this$props6.rowSelection;
|
|
304
329
|
|
|
305
330
|
var rows = dataList;
|
|
306
|
-
if (enableCellSelect) {
|
|
331
|
+
if (enableCellSelect || rowSelection) {
|
|
307
332
|
rows = _this.touchLoopDataBefore();
|
|
308
333
|
}
|
|
309
334
|
return Selectors.getRows({ rows: rows, filters: filters, sortColumn: sortColumn, sortDirection: sortDirection });
|
|
@@ -322,11 +347,12 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
322
347
|
_this.touchLoopDataBefore = function () {
|
|
323
348
|
var dataList = _this.props.dataList;
|
|
324
349
|
|
|
325
|
-
|
|
350
|
+
dataList.map(function (row, index) {
|
|
326
351
|
// autoAddNumber_idx_edit 自动添加序号 数据更新时使用确定当前更新的行
|
|
327
|
-
|
|
352
|
+
dataList[index] = (0, _extends3['default'])({}, row, { autoAddNumber_idx_edit: index });
|
|
353
|
+
return row;
|
|
328
354
|
});
|
|
329
|
-
return
|
|
355
|
+
return dataList;
|
|
330
356
|
};
|
|
331
357
|
|
|
332
358
|
_this.touchLoopData = function () {
|
|
@@ -489,8 +515,10 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
489
515
|
};
|
|
490
516
|
|
|
491
517
|
_this.getReactDataGridProps = function () {
|
|
518
|
+
var arrValues = _this.state.arrValues;
|
|
492
519
|
var _this$props8 = _this.props,
|
|
493
520
|
enableCellSelect = _this$props8.enableCellSelect,
|
|
521
|
+
rowKey = _this$props8.rowKey,
|
|
494
522
|
objToolbarProps = _this$props8.objToolbarProps,
|
|
495
523
|
rowSelection = _this$props8.rowSelection;
|
|
496
524
|
|
|
@@ -518,8 +546,11 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
518
546
|
onRowsSelected: _this.onRowsSelected,
|
|
519
547
|
onRowsDeselected: _this.onRowsDeselected,
|
|
520
548
|
selectBy: {
|
|
521
|
-
|
|
522
|
-
|
|
549
|
+
keys: {
|
|
550
|
+
rowKey: rowKey || 'id',
|
|
551
|
+
values: arrValues
|
|
552
|
+
}
|
|
553
|
+
// indexes: this.state.arrValues,
|
|
523
554
|
}
|
|
524
555
|
};
|
|
525
556
|
} else if (rowSelection) {
|
|
@@ -537,7 +568,11 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
537
568
|
|
|
538
569
|
var columnsNew = [].concat(columns);
|
|
539
570
|
if (autoAddNumber && typeof autoAddNumber === 'boolean') {
|
|
540
|
-
|
|
571
|
+
var objColumns = columns && columns.length > 0 ? columns[0] : {};
|
|
572
|
+
var _objColumns$frozen = objColumns.frozen,
|
|
573
|
+
frozen = _objColumns$frozen === undefined ? false : _objColumns$frozen;
|
|
574
|
+
|
|
575
|
+
columnsNew = [{ name: '序号', key: 'autoAddNumber_idx_view', resizable: true, width: 50, frozen: frozen }].concat(columnsNew);
|
|
541
576
|
}
|
|
542
577
|
_this.columns = columnsNew;
|
|
543
578
|
return columnsNew;
|
|
@@ -619,7 +654,7 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
619
654
|
}
|
|
620
655
|
_this.state = {
|
|
621
656
|
// 表格选择
|
|
622
|
-
|
|
657
|
+
arrValues: [], // 表格选择行索引
|
|
623
658
|
// 查询条件
|
|
624
659
|
filters: {},
|
|
625
660
|
// 排序--sort
|
|
@@ -647,6 +682,8 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
647
682
|
|
|
648
683
|
// 表格选择---取消选择
|
|
649
684
|
|
|
685
|
+
// 改变选择状态
|
|
686
|
+
|
|
650
687
|
// #endregion 表格选择
|
|
651
688
|
// #region 右上角按钮处理--toolbar
|
|
652
689
|
// 新增
|
|
@@ -718,7 +755,7 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
718
755
|
return _react2['default'].createElement(
|
|
719
756
|
'div',
|
|
720
757
|
{ style: { backgroundColor: '#fff' } },
|
|
721
|
-
_react2['default'].createElement(_reactDataGrid2['default'], (0, _extends3['default'])({
|
|
758
|
+
_react2['default'].createElement(_reactDataGrid2['default'], (0, _extends3['default'])({}, this.props, {
|
|
722
759
|
ref: this.ReactDataGridRef,
|
|
723
760
|
columns: columns // 表头
|
|
724
761
|
// rows={rows}
|
|
@@ -765,5 +802,8 @@ var Easy3wEditBigTable = function (_Component) {
|
|
|
765
802
|
return Easy3wEditBigTable;
|
|
766
803
|
}(_react.Component);
|
|
767
804
|
|
|
805
|
+
Easy3wEditBigTable.defaultProps = {
|
|
806
|
+
rowKey: 'autoAddNumber_idx_edit'
|
|
807
|
+
};
|
|
768
808
|
exports['default'] = Easy3wEditBigTable;
|
|
769
809
|
module.exports = exports['default'];
|
package/lib/index.js
CHANGED
|
@@ -389,4 +389,13 @@ Object.defineProperty(exports, 'Easy3wGetDesensitization', {
|
|
|
389
389
|
}
|
|
390
390
|
});
|
|
391
391
|
|
|
392
|
+
var _Easy3wEditBigTable = require('./Easy3wEditBigTable');
|
|
393
|
+
|
|
394
|
+
Object.defineProperty(exports, 'Easy3wEditBigTable', {
|
|
395
|
+
enumerable: true,
|
|
396
|
+
get: function get() {
|
|
397
|
+
return _interopRequireDefault(_Easy3wEditBigTable)['default'];
|
|
398
|
+
}
|
|
399
|
+
});
|
|
400
|
+
|
|
392
401
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
|