uepay-mesh 4.0.1 → 4.0.2

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.
@@ -122,6 +122,7 @@ FormQueryAbleTable.propTypes = _objectSpread({}, _queryAbleTable.default.propTyp
122
122
  FormQueryAbleTable.defaultProps = _objectSpread(_objectSpread({}, _queryAbleTable.default.defaultProps), {}, {
123
123
  options: {
124
124
  add: true,
125
+ multiple: true,
125
126
  search: true,
126
127
  setting: true,
127
128
  excel: true,
@@ -23,6 +23,8 @@ var _queryAbleTableContext = require("./context/queryAbleTableContext");
23
23
 
24
24
  var _serverEnums = require("../config/serverEnums");
25
25
 
26
+ var _remove = require("../crud/remove");
27
+
26
28
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
27
29
 
28
30
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
@@ -171,6 +173,40 @@ class QueryAbleTable extends _react.default.Component {
171
173
 
172
174
  _defineProperty(this, "handleExcel", () => {});
173
175
 
176
+ _defineProperty(this, "handleBatchDelete", records => {
177
+ const {
178
+ host
179
+ } = this.props,
180
+ {
181
+ collect,
182
+ collectId
183
+ } = this,
184
+ _this = this;
185
+
186
+ _this.setState({
187
+ loading: true
188
+ });
189
+
190
+ (0, _remove.removeRecords)({
191
+ host,
192
+ collect,
193
+ collectId,
194
+ records,
195
+ bpm: {
196
+ isDraft: false
197
+ },
198
+ handle: (state, msg, sucPkList) => {
199
+ if ('SUC' === state) {
200
+ _this.flush();
201
+ } else {}
202
+
203
+ _this.setState({
204
+ loading: false
205
+ });
206
+ }
207
+ });
208
+ });
209
+
174
210
  _defineProperty(this, "flush", () => {
175
211
  this.tableDom.conditionSearch();
176
212
  });
@@ -351,6 +387,7 @@ class QueryAbleTable extends _react.default.Component {
351
387
  loading: loading,
352
388
  result: result,
353
389
  actionColumn: this.getActionColumn(),
390
+ onBatchDelete: this.handleBatchDelete,
354
391
  onAction: this.handleAction,
355
392
  pkLabel: pkName
356
393
  });
@@ -105,6 +105,7 @@ function DeleteOptions(_ref3) {
105
105
  bpm: {
106
106
  isDraft: false
107
107
  },
108
+ //TODO 刪除暫時不考慮流程
108
109
  handle: handleResult
109
110
  });
110
111
  }
@@ -25,6 +25,10 @@ var _ClearOutlined = _interopRequireDefault(require("@ant-design/icons/lib/icons
25
25
 
26
26
  var _withReduxSearch = require("../../hoc/withReduxSearch");
27
27
 
28
+ var _OrderedListOutlined = _interopRequireDefault(require("@ant-design/icons/lib/icons/OrderedListOutlined"));
29
+
30
+ var _multiOptions = _interopRequireDefault(require("./tableOptons/multiOptions"));
31
+
28
32
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
33
 
30
34
  function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
@@ -80,11 +84,13 @@ const initOptions = collectId => {
80
84
  return retOptions;
81
85
  };
82
86
  /**
87
+ * @param props.multiple
83
88
  * @param props.reduxSearch {ReduxSearch}
84
89
  * @param props.onSearch {Function}
85
90
  * @param props.deliverAuth {Number} 授权权限
86
91
  * @param props.collect {Object} 数据集对象
87
92
  * @param props.columns {Array} 已经过滤的列表显示字段
93
+ * @param props.onMultiple {Function} (multiVisible)=>{是否激活多选}
88
94
  * @param props.onModify {Function} (options:{tableSize, columnRelation, pageSize, excludeKeys})=>{}
89
95
  * @example options:{
90
96
  * excel: 显示Excel操作框
@@ -159,6 +165,14 @@ class TableOptions extends _react.default.Component {
159
165
  });
160
166
  });
161
167
 
168
+ _defineProperty(this, "handleMultiple", () => {
169
+ this.props.onMultiple(true);
170
+ });
171
+
172
+ _defineProperty(this, "handleMultipleCancel", () => {
173
+ this.props.onMultiple(false);
174
+ });
175
+
162
176
  _defineProperty(this, "handleAddFile", () => {
163
177
  this.props.onAction(_serverEnums.OptionsState.ADD);
164
178
  });
@@ -184,9 +198,28 @@ class TableOptions extends _react.default.Component {
184
198
  };
185
199
  }
186
200
 
201
+ /**
202
+ * 检查是否具有新增权限
203
+ * @param opt
204
+ * @param auth
205
+ * @param deliverAuth
206
+ * @return {*|boolean}
207
+ */
187
208
  static checkAddAuth(opt, auth, deliverAuth) {
188
209
  return opt && deliverAuth >= _serverEnums.OptionsFlag.ADD && _serverEnums.OptionsFlag.ADD === (auth & _serverEnums.OptionsFlag.ADD);
189
210
  }
211
+ /**
212
+ * 检查是否具有删除权限
213
+ * @param opt
214
+ * @param auth
215
+ * @param deliverAuth
216
+ * @return {*|boolean}
217
+ */
218
+
219
+
220
+ static checkDeleteAuth(opt, auth, deliverAuth) {
221
+ return opt && deliverAuth >= _serverEnums.OptionsFlag.DEL && _serverEnums.OptionsFlag.DEL === (auth & _serverEnums.OptionsFlag.DEL);
222
+ }
190
223
 
191
224
  render() {
192
225
  const {
@@ -197,16 +230,26 @@ class TableOptions extends _react.default.Component {
197
230
  excludeKeys
198
231
  } = this.state,
199
232
  {
233
+ loading,
200
234
  collect,
201
235
  columns,
202
236
  options,
203
237
  deliverAuth,
204
- reduxSearch
238
+ multiple,
239
+ reduxSearch,
240
+ onMultiDelete
205
241
  } = this.props;
206
- return /*#__PURE__*/_react.default.createElement("span", null, /*#__PURE__*/_react.default.createElement(ButtonGroup, null, options.excel && /*#__PURE__*/_react.default.createElement(_antd.Button, {
242
+ return /*#__PURE__*/_react.default.createElement("span", null, multiple ? /*#__PURE__*/_react.default.createElement(_multiOptions.default, {
243
+ loading: loading,
244
+ onBatchCancel: this.handleMultipleCancel,
245
+ onBatchDelete: onMultiDelete
246
+ }) : /*#__PURE__*/_react.default.createElement(ButtonGroup, null, options.excel && /*#__PURE__*/_react.default.createElement(_antd.Button, {
207
247
  icon: /*#__PURE__*/_react.default.createElement(_icons.FileExcelOutlined, null),
208
248
  onClick: this.props.onExcel
209
- }, "Excel"), TableOptions.checkAddAuth(options.add, collect.options, deliverAuth) && /*#__PURE__*/_react.default.createElement(_antd.Button, {
249
+ }, "Excel"), TableOptions.checkDeleteAuth(options.multiple, collect.options, deliverAuth) && /*#__PURE__*/_react.default.createElement(_antd.Button, {
250
+ icon: /*#__PURE__*/_react.default.createElement(_OrderedListOutlined.default, null),
251
+ onClick: this.handleMultiple
252
+ }, "\u591A\u9078"), TableOptions.checkAddAuth(options.add, collect.options, deliverAuth) && /*#__PURE__*/_react.default.createElement(_antd.Button, {
210
253
  icon: /*#__PURE__*/_react.default.createElement(_icons.PlusOutlined, null),
211
254
  onClick: this.handleAddFile
212
255
  }, "\u65B0\u589E"), options.search && /*#__PURE__*/_react.default.createElement(_antd.Button, {
@@ -260,8 +303,12 @@ class TableOptions extends _react.default.Component {
260
303
  }
261
304
 
262
305
  TableOptions.propTypes = {
306
+ loading: _propTypes.default.bool,
263
307
  collect: _propTypes.default.object.isRequired,
264
308
  options: _propTypes.default.object.isRequired,
309
+ multiple: _propTypes.default.bool.isRequired,
310
+ onMultiDelete: _propTypes.default.func.isRequired,
311
+ onMultiple: _propTypes.default.func.isRequired,
265
312
  onSearch: _propTypes.default.func.isRequired,
266
313
  onModify: _propTypes.default.func.isRequired,
267
314
  onExcel: _propTypes.default.func,
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+
8
+ var _react = _interopRequireDefault(require("react"));
9
+
10
+ var _antd = require("antd");
11
+
12
+ var _DeleteOutlined = _interopRequireDefault(require("@ant-design/icons/lib/icons/DeleteOutlined"));
13
+
14
+ var _RollbackOutlined = _interopRequireDefault(require("@ant-design/icons/lib/icons/RollbackOutlined"));
15
+
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+
18
+ const ButtonGroup = _antd.Button.Group;
19
+
20
+ function MultiOptions(_ref) {
21
+ let {
22
+ loading,
23
+ onBatchDelete,
24
+ onBatchCancel
25
+ } = _ref;
26
+ return /*#__PURE__*/_react.default.createElement(ButtonGroup, null, /*#__PURE__*/_react.default.createElement(_antd.Popconfirm, {
27
+ title: "\u5220\u9664\u540E\u6570\u636E\u5C07\u7121\u6CD5\u6062\u5FA9\uFF0C\u78BA\u8A8D\u522A\u9664?",
28
+ onConfirm: onBatchDelete
29
+ }, /*#__PURE__*/_react.default.createElement(_antd.Button, {
30
+ loading: loading,
31
+ icon: /*#__PURE__*/_react.default.createElement(_DeleteOutlined.default, null)
32
+ }, "\u522A\u9664")), /*#__PURE__*/_react.default.createElement(_antd.Popconfirm, {
33
+ title: "\u4FEE\u6539\u6578\u64DA\u5C1A\u672A\u63D0\u4EA4\uFF0C\u78BA\u8A8D\u53D6\u6D88?",
34
+ onConfirm: onBatchCancel
35
+ }, /*#__PURE__*/_react.default.createElement(_antd.Button, {
36
+ loading: loading,
37
+ icon: /*#__PURE__*/_react.default.createElement(_RollbackOutlined.default, null)
38
+ }, "\u53D6\u6D88")));
39
+ }
40
+
41
+ var _default = MultiOptions;
42
+ exports.default = _default;
@@ -179,6 +179,17 @@ class StandardTable extends _react.default.Component {
179
179
  })();
180
180
  });
181
181
 
182
+ _defineProperty(this, "handleMultipleChange", multiVisible => {
183
+ this.multiRows = [];
184
+ this.setState({
185
+ multiVisible
186
+ });
187
+ });
188
+
189
+ _defineProperty(this, "handleBatchDelete", () => {
190
+ this.props.onBatchDelete(this.multiRows);
191
+ });
192
+
182
193
  _defineProperty(this, "handleTableChange", (pagination, filters, inputSorter, _ref2) => {
183
194
  let {
184
195
  currentDataSource,
@@ -234,7 +245,9 @@ class StandardTable extends _react.default.Component {
234
245
 
235
246
  this.state = {
236
247
  excludeKeys: _excludeKeys,
237
- tableSize: _tableSize
248
+ tableSize: _tableSize,
249
+ multiVisible: false //支持table列表的多选操作,目前仅支持删除项。是否激活
250
+
238
251
  };
239
252
  this.page = {
240
253
  size: _pageSize,
@@ -242,6 +255,17 @@ class StandardTable extends _react.default.Component {
242
255
  to: 0 + _pageSize
243
256
  };
244
257
  this.columnRelation = _columnRelation; //字段並列信息
258
+
259
+ this.multiRows = [];
260
+
261
+ const _this2 = this;
262
+
263
+ this.rowSelection = {
264
+ type: "checkbox",
265
+ onChange: function onChange(keys, rows) {
266
+ _this2.multiRows = rows;
267
+ }
268
+ };
245
269
  }
246
270
  /**
247
271
  * 處理列表數據
@@ -312,7 +336,8 @@ class StandardTable extends _react.default.Component {
312
336
  showSizeChanger: false,
313
337
  showQuickJumper: true
314
338
  } : false;
315
- }
339
+ } //操作选项变更
340
+
316
341
 
317
342
  handleRowClass() {
318
343
  return 'uepay-row';
@@ -463,7 +488,8 @@ class StandardTable extends _react.default.Component {
463
488
  } = result,
464
489
  {
465
490
  tableSize,
466
- excludeKeys
491
+ excludeKeys,
492
+ multiVisible
467
493
  } = this.state,
468
494
  {
469
495
  onRow,
@@ -493,7 +519,11 @@ class StandardTable extends _react.default.Component {
493
519
  })), /*#__PURE__*/_react.default.createElement("div", {
494
520
  className: "default-opt"
495
521
  }, /*#__PURE__*/_react.default.createElement(_tableOptions.default, {
522
+ loading: loading,
496
523
  options: options,
524
+ multiple: multiVisible,
525
+ onMultiple: this.handleMultipleChange,
526
+ onMultiDelete: this.handleBatchDelete,
497
527
  collect: collect,
498
528
  columns: this.columns,
499
529
  deliverAuth: deliverAuth,
@@ -503,6 +533,7 @@ class StandardTable extends _react.default.Component {
503
533
  onExcel: this.handleExcel,
504
534
  onAction: onAction
505
535
  }))), /*#__PURE__*/_react.default.createElement(_antd.Table, _extends({
536
+ rowSelection: multiVisible ? this.rowSelection : false,
506
537
  size: size || tableSize,
507
538
  dataSource: dataSource,
508
539
  onChange: this.handleTableChange,
@@ -542,6 +573,7 @@ StandardTable.propTypes = {
542
573
  //查询结果信息
543
574
  onQuery: _propTypes.default.func.isRequired,
544
575
  onExcel: _propTypes.default.func,
576
+ onBatchDelete: _propTypes.default.func,
545
577
  size: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.string]),
546
578
  pageOptions: _propTypes.default.oneOfType([_propTypes.default.bool, _propTypes.default.object]),
547
579
  pageSize: _propTypes.default.number,
@@ -552,6 +584,7 @@ StandardTable.defaultProps = {
552
584
  options: {
553
585
  add: true,
554
586
  //添加新行按钮
587
+ multiple: true,
555
588
  search: true,
556
589
  //添加搜索按钮
557
590
  setting: true,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "uepay-mesh",
3
- "version": "4.0.1",
3
+ "version": "4.0.2",
4
4
  "description": "数据中心数据集设计工具前端",
5
5
  "main": "index.js",
6
6
  "typings": "index.d.ts",
@@ -31,7 +31,7 @@
31
31
  "@ant-design/icons": "^4.2.1",
32
32
  "@zeit/next-css": "^1.0.1",
33
33
  "@zeit/next-sass": "^1.0.1",
34
- "antd": "^4.16.11",
34
+ "antd": "^4.17.4",
35
35
  "babel-plugin-import": "^1.12.2",
36
36
  "classnames": "^2.2.6",
37
37
  "core-js": "^2.6.11",
@@ -44,7 +44,7 @@
44
44
  "node-sass": "^4.13.0",
45
45
  "react": "^16.12.0",
46
46
  "react-dom": "^16.12.0",
47
- "uepay-mesh": "4.0.1",
47
+ "uepay-mesh": "4.0.2",
48
48
  "uepay-ops2": "4.0.1"
49
49
  }
50
50
  }