@luck-design-biz/luckda 0.0.14 → 0.0.15-1

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.
@@ -9,7 +9,6 @@ import { AutoForm } from '@luck-design-biz/base/FormList';
9
9
  import ldBuilder from '../../helper/ldBuilder';
10
10
  import { getFormItem, formItemDataFormat, dataFormat, behaviorCall } from '../../utils';
11
11
  import { LuckDaContext } from '../Builder';
12
- var defaultOpe = ['read', 'add', 'update', 'delete'];
13
12
  var buildLdAutoForm = function buildLdAutoForm(_ref) {
14
13
  var _ref$columns = _ref.columns,
15
14
  columns = _ref$columns === void 0 ? [] : _ref$columns,
@@ -133,8 +132,7 @@ var buildLdAutoForm = function buildLdAutoForm(_ref) {
133
132
  })
134
133
  // onAdd={onOperate(onAdd, 'add')}
135
134
  ,
136
- onUpdate: onOperate(onUpdate, 'update'),
137
- operates: defaultOpe
135
+ onUpdate: onOperate(onUpdate, 'update')
138
136
  }, formConfig), basicItems);
139
137
  };
140
138
  export default ldBuilder(buildLdAutoForm);
@@ -1,15 +1,18 @@
1
+ import _regeneratorRuntime from "@babel/runtime/helpers/esm/regeneratorRuntime";
2
+ import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
1
3
  import _extends from "@babel/runtime/helpers/esm/extends";
2
4
  import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
3
5
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
4
6
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
5
7
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
6
- var _excluded = ["namespace", "formState", "formMode", "loading", "wrapperRef", "readOnly", "mainFormLdId", "renderFormList", "renderAffixLeft", "renderAffixRight", "beforeSubmit", "showSaveBtn", "saveBtnTitle", "affixLayout", "onValueChange", "afterSubmit", "renderFormExtra"],
7
- _excluded2 = ["id", "header", "title", "readOnly", "extraConfig", "renderTopLeft"],
8
- _excluded3 = ["ldId", "initData", "overModel"];
8
+ var _excluded = ["namespace", "formState", "formMode", "formOperates", "loading", "wrapperRef", "readOnly", "mainFormLdId", "renderFormList", "renderAffixLeft", "renderAffixRight", "beforeSubmit", "showSaveBtn", "saveBtnTitle", "affixLayout", "onValueChange", "afterSubmit", "renderFormExtra"],
9
+ _excluded2 = ["readFieldProps", "dataSets", "doAction", "resources"],
10
+ _excluded3 = ["id", "header", "title", "readOnly", "extraConfig", "renderTopLeft"],
11
+ _excluded4 = ["ldId", "initData", "overModel"];
9
12
  import React, { useContext, useRef, forwardRef, Fragment, useImperativeHandle, useState } from 'react';
10
13
  import { connect, getDvaApp, useRouteMatch } from 'umi';
11
14
  import PropTypes from 'prop-types';
12
- import { useCreation, useMemoizedFn } from 'ahooks';
15
+ import { useCreation, useMemoizedFn, useAsyncEffect } from 'ahooks';
13
16
  import { BasicDivider } from 'luck-design';
14
17
  import { ChildrenUtil } from '@luck-design-biz/base/utils';
15
18
  import { FormList, FormListAffix, FormBtn } from '@luck-design-biz/base/FormList';
@@ -20,6 +23,9 @@ import { LuckDaContext } from '../Builder';
20
23
  import { LuckDaPopContext } from '../LdPop';
21
24
  import createModel from './model';
22
25
  import { onBatchSubmitAction } from '../../helper/action';
26
+ import { isArray, sortBy, mapValues } from 'lodash';
27
+ import { BpmButton } from '@luck-design-biz/base/bpm';
28
+ import { readBehaviorCall } from '../../services';
23
29
 
24
30
  // 组件
25
31
  var LdFormList = function LdFormList(_ref) {
@@ -27,6 +33,7 @@ var LdFormList = function LdFormList(_ref) {
27
33
  var namespace = _ref.namespace,
28
34
  formState = _ref.formState,
29
35
  formMode = _ref.formMode,
36
+ formOperates = _ref.formOperates,
30
37
  loading = _ref.loading,
31
38
  wrapperRef = _ref.wrapperRef,
32
39
  readOnly = _ref.readOnly,
@@ -50,11 +57,24 @@ var LdFormList = function LdFormList(_ref) {
50
57
  _useState2 = _slicedToArray(_useState, 2),
51
58
  submitLoading = _useState2[0],
52
59
  setSubmitLoading = _useState2[1];
60
+ var _useState3 = useState(false),
61
+ _useState4 = _slicedToArray(_useState3, 2),
62
+ isCustomRenderAffixRight = _useState4[0],
63
+ setIsCustomRenderAffixRight = _useState4[1];
64
+ var _useState5 = useState({}),
65
+ _useState6 = _slicedToArray(_useState5, 2),
66
+ bizData = _useState6[0],
67
+ setBizData = _useState6[1];
53
68
  var _ref2 = useContext(LuckDaPopContext) || {},
54
69
  defaultLayout = _ref2.affixLayout;
55
- var _ref3 = useContext(LuckDaContext) || {},
56
- dataSets = _ref3.dataSets,
57
- doAction = _ref3.doAction;
70
+ var _ref3 = useContext(FormWindowContext) || {},
71
+ formWindow = _ref3.formWindow;
72
+ var _ref4 = useContext(LuckDaContext) || {},
73
+ readFieldProps = _ref4.readFieldProps,
74
+ dataSets = _ref4.dataSets,
75
+ doAction = _ref4.doAction,
76
+ resources = _ref4.resources,
77
+ rest = _objectWithoutProperties(_ref4, _excluded2);
58
78
  var formListRef = useRef(null);
59
79
  useImperativeHandle(wrapperRef, function () {
60
80
  return _objectSpread(_objectSpread({}, formListRef.current), {}, {
@@ -74,8 +94,8 @@ var LdFormList = function LdFormList(_ref) {
74
94
  });
75
95
  });
76
96
  var handleValueChange = useMemoizedFn(function (change) {
77
- var _ref4 = formListRef.current || {},
78
- formRefs = _ref4.formRefs;
97
+ var _ref5 = formListRef.current || {},
98
+ formRefs = _ref5.formRefs;
79
99
  var data = formRefs && Object.keys(formRefs).map(function (key) {
80
100
  var _formRefs$key, _formRefs$key$formRef, _formRefs$key$current;
81
101
  var getValue = (((_formRefs$key = formRefs[key]) === null || _formRefs$key === void 0 ? void 0 : (_formRefs$key$formRef = _formRefs$key.formRef) === null || _formRefs$key$formRef === void 0 ? void 0 : _formRefs$key$formRef.current) ? formRefs[key].getData : null) || ((_formRefs$key$current = formRefs[key].current) === null || _formRefs$key$current === void 0 ? void 0 : _formRefs$key$current.getFieldsValue);
@@ -89,11 +109,63 @@ var LdFormList = function LdFormList(_ref) {
89
109
  formId: formId
90
110
  }, extraConfig)));
91
111
  });
112
+
113
+ /**zss添加**/
114
+ var renderAffixRightCustom = function renderAffixRightCustom() {
115
+ console.log('renderAffixRightCustom');
116
+ return /*#__PURE__*/React.createElement(React.Fragment, null, renderAffixRight && renderAffixRight(), /*#__PURE__*/React.createElement(BpmButton, {
117
+ bizData: bizData,
118
+ suppressDept: false
119
+ }));
120
+ };
121
+ useAsyncEffect( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
122
+ var _props$ticketData, _params, _yield$readBehaviorCa, code, data, _props$ticketData2, _props$ticketData3, bpmInfoObj, tempObj;
123
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
124
+ while (1) switch (_context.prev = _context.next) {
125
+ case 0:
126
+ if (!(formMode !== 'add')) {
127
+ _context.next = 8;
128
+ break;
129
+ }
130
+ _params = {
131
+ indocno: (_props$ticketData = props.ticketData) === null || _props$ticketData === void 0 ? void 0 : _props$ticketData.indocno,
132
+ moduleCode: rest.moduleCode,
133
+ datasetCode: mainDataSetKey,
134
+ mainDataSetKey: mainDataSetKey,
135
+ behaviorKey: 'readBpm'
136
+ };
137
+ _context.next = 4;
138
+ return readBehaviorCall(_params);
139
+ case 4:
140
+ _yield$readBehaviorCa = _context.sent;
141
+ code = _yield$readBehaviorCa.code;
142
+ data = _yield$readBehaviorCa.data;
143
+ if (code == 1 && data) {
144
+ bpmInfoObj = data.bpmInfo;
145
+ tempObj = {
146
+ bizKey: bpmInfoObj.bizKey,
147
+ sname: bpmInfoObj.name,
148
+ modelKey: bpmInfoObj.bpmKey,
149
+ // basekey : bpmInfoObj.buskey,
150
+ idocid: (_props$ticketData2 = props.ticketData) === null || _props$ticketData2 === void 0 ? void 0 : _props$ticketData2.indocno,
151
+ moduleCode: rest.moduleCode,
152
+ datasetCode: mainDataSetKey,
153
+ indocno: (_props$ticketData3 = props.ticketData) === null || _props$ticketData3 === void 0 ? void 0 : _props$ticketData3.indocno
154
+ };
155
+ setBizData(tempObj);
156
+ setIsCustomRenderAffixRight(true);
157
+ }
158
+ case 8:
159
+ case "end":
160
+ return _context.stop();
161
+ }
162
+ }, _callee);
163
+ })), []);
92
164
  var handleBatchSubmit = function handleBatchSubmit(values, action) {
93
- var _ref6 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
94
- formCode = _ref6.formCode,
95
- formKey = _ref6.formKey,
96
- formUid = _ref6.formUid;
165
+ var _ref8 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
166
+ formCode = _ref8.formCode,
167
+ formKey = _ref8.formKey,
168
+ formUid = _ref8.formUid;
97
169
  setSubmitLoading(true);
98
170
  onBatchSubmitAction({
99
171
  values: values,
@@ -150,7 +222,15 @@ var LdFormList = function LdFormList(_ref) {
150
222
  formRef: formListRef,
151
223
  renderExtra: renderExtra
152
224
  });
153
- var formList = renderFormList(formConfig);
225
+ var formList = useCreation(function () {
226
+ var _list = renderFormList(formConfig);
227
+ var extraList = renderFormExtra && isArray(renderFormExtra(formConfig)) ? renderFormExtra(formConfig) : [renderFormExtra(formConfig)];
228
+ var list = _list.concat(extraList);
229
+ return sortBy(list, function (o) {
230
+ var _o$props;
231
+ return o.order || ((_o$props = o.props) === null || _o$props === void 0 ? void 0 : _o$props.order);
232
+ });
233
+ }, [formConfig]);
154
234
  var mainDataSetKey = (_formList$find = formList.find(function (i) {
155
235
  return i.id === mainFormLdId;
156
236
  })) === null || _formList$find === void 0 ? void 0 : _formList$find.dataSetKey;
@@ -158,7 +238,10 @@ var LdFormList = function LdFormList(_ref) {
158
238
  editFlow: true,
159
239
  formState: formState,
160
240
  formMode: formMode,
161
- loading: loading || submitLoading
241
+ loading: loading || submitLoading,
242
+ formOperates: mapValues(formOperates, function () {
243
+ return resources;
244
+ })
162
245
  }, props, {
163
246
  modelName: namespace,
164
247
  ref: formListRef,
@@ -171,68 +254,71 @@ var LdFormList = function LdFormList(_ref) {
171
254
  }), /*#__PURE__*/React.createElement(FormListAffix, {
172
255
  showSaveBtn: !readOnly && showSaveBtn,
173
256
  renderLeft: renderAffixLeft,
174
- renderRight: renderAffixRight,
257
+ renderRight: isCustomRenderAffixRight ? renderAffixRightCustom : renderAffixRight,
175
258
  title: saveBtnTitle,
176
259
  layout: affixLayout || defaultLayout
177
260
  }), formList.map(function (formProps) {
178
- var _ref7 = formProps || {},
179
- ldId = _ref7.id,
180
- _ref7$header = _ref7.header,
181
- header = _ref7$header === void 0 ? 'collapse' : _ref7$header,
182
- title = _ref7.title,
183
- _readOnly = _ref7.readOnly,
184
- _ref7$extraConfig = _ref7.extraConfig,
185
- extraConfig = _ref7$extraConfig === void 0 ? {} : _ref7$extraConfig,
186
- _ref7$renderTopLeft = _ref7.renderTopLeft,
187
- _renderTopLeft = _ref7$renderTopLeft === void 0 ? function () {
188
- return /*#__PURE__*/React.createElement(React.Fragment, null);
189
- } : _ref7$renderTopLeft,
190
- _props = _objectWithoutProperties(_ref7, _excluded2);
191
- var _props$type = _props.type,
192
- type = _props$type === void 0 ? 'auto' : _props$type;
193
- var renderForm = type === 'auto' ? buildLdAutoForm : buildLdGridForm;
194
- if (header === 'collapse' || header === 'collapseFollow') return /*#__PURE__*/React.createElement(Collapse, {
195
- title: title || ldId,
196
- extra: type === 'auto' && renderExtra(ldId, extraConfig, 'graphic'),
197
- id: ldId,
198
- key: ldId,
199
- mode: header === 'collapse' && ldId !== mainFormLdId && 'tab'
200
- }, renderForm(_objectSpread(_objectSpread({}, _props), {}, {
201
- ldId: ldId,
202
- mainFormLdId: mainFormLdId,
203
- mainDataSetKey: mainDataSetKey,
204
- readOnly: readOnly || _readOnly,
205
- onValueChange: handleValueChange,
206
- ticketData: props.ticketData,
207
- renderTopLeft: function renderTopLeft() {
208
- return type === 'auto' ? _renderTopLeft() : [renderExtra(ldId, extraConfig, 'text'), _renderTopLeft()];
209
- }
210
- })));
211
- return /*#__PURE__*/React.createElement(Fragment, {
212
- key: ldId
213
- }, header === 'divider' && /*#__PURE__*/React.createElement(BasicDivider, {
214
- title: title || ldId,
215
- id: ldId
216
- }), type === 'auto' && /*#__PURE__*/React.createElement("div", {
217
- style: {
218
- textAlign: 'right'
219
- }
220
- }, renderExtra(ldId, extraConfig, 'graphic')), renderForm(_objectSpread(_objectSpread({}, _props), {}, {
221
- ldId: ldId,
222
- mainFormLdId: mainFormLdId,
223
- mainDataSetKey: mainDataSetKey,
224
- readOnly: readOnly || _readOnly,
225
- onValueChange: handleValueChange,
226
- ticketData: props.ticketData,
227
- renderTopLeft: function renderTopLeft() {
228
- return type === 'auto' ? _renderTopLeft() : [renderExtra(ldId, extraConfig, 'graphic'), _renderTopLeft()];
229
- }
230
- })));
231
- }), ChildrenUtil.deepMap(renderFormExtra(formConfig), function (child) {
232
- var _child$type;
233
- return /*#__PURE__*/React.cloneElement(child, ((_child$type = child.type) === null || _child$type === void 0 ? void 0 : _child$type.displayName) === 'Collapse' ? {
234
- mode: child.props.mode || 'tab'
235
- } : {});
261
+ if (formProps.dataSetKey) {
262
+ var _ref9 = formProps || {},
263
+ ldId = _ref9.id,
264
+ _ref9$header = _ref9.header,
265
+ header = _ref9$header === void 0 ? 'collapse' : _ref9$header,
266
+ title = _ref9.title,
267
+ _readOnly = _ref9.readOnly,
268
+ _ref9$extraConfig = _ref9.extraConfig,
269
+ extraConfig = _ref9$extraConfig === void 0 ? {} : _ref9$extraConfig,
270
+ _ref9$renderTopLeft = _ref9.renderTopLeft,
271
+ _renderTopLeft = _ref9$renderTopLeft === void 0 ? function () {
272
+ return /*#__PURE__*/React.createElement(React.Fragment, null);
273
+ } : _ref9$renderTopLeft,
274
+ _props = _objectWithoutProperties(_ref9, _excluded3);
275
+ var _props$type = _props.type,
276
+ type = _props$type === void 0 ? 'auto' : _props$type;
277
+ var renderForm = type === 'auto' ? buildLdAutoForm : buildLdGridForm;
278
+ if (header === 'collapse' || header === 'collapseFollow') return /*#__PURE__*/React.createElement(Collapse, {
279
+ title: title || ldId,
280
+ extra: type === 'auto' && renderExtra(ldId, extraConfig, 'graphic'),
281
+ id: ldId,
282
+ key: ldId,
283
+ mode: header === 'collapse' && ldId !== mainFormLdId && 'tab'
284
+ }, renderForm(_objectSpread(_objectSpread({}, _props), {}, {
285
+ ldId: ldId,
286
+ mainFormLdId: mainFormLdId,
287
+ mainDataSetKey: mainDataSetKey,
288
+ readOnly: readOnly || _readOnly,
289
+ onValueChange: handleValueChange,
290
+ ticketData: props.ticketData,
291
+ renderTopLeft: function renderTopLeft() {
292
+ return type === 'auto' ? _renderTopLeft() : [renderExtra(ldId, extraConfig, 'text'), _renderTopLeft()];
293
+ }
294
+ })));
295
+ return /*#__PURE__*/React.createElement(Fragment, {
296
+ key: ldId
297
+ }, header === 'divider' && /*#__PURE__*/React.createElement(BasicDivider, {
298
+ title: title || ldId,
299
+ id: ldId
300
+ }), type === 'auto' && /*#__PURE__*/React.createElement("div", {
301
+ style: {
302
+ textAlign: 'right'
303
+ }
304
+ }, renderExtra(ldId, extraConfig, 'graphic')), renderForm(_objectSpread(_objectSpread({}, _props), {}, {
305
+ ldId: ldId,
306
+ mainFormLdId: mainFormLdId,
307
+ mainDataSetKey: mainDataSetKey,
308
+ readOnly: readOnly || _readOnly,
309
+ onValueChange: handleValueChange,
310
+ ticketData: props.ticketData,
311
+ renderTopLeft: function renderTopLeft() {
312
+ return type === 'auto' ? _renderTopLeft() : [renderExtra(ldId, extraConfig, 'graphic'), _renderTopLeft()];
313
+ }
314
+ })));
315
+ }
316
+ return ChildrenUtil.deepMap(formProps, function (child) {
317
+ var _child$type;
318
+ return /*#__PURE__*/React.cloneElement(child, ((_child$type = child.type) === null || _child$type === void 0 ? void 0 : _child$type.displayName) === 'Collapse' ? _objectSpread(_objectSpread({}, child.props), {}, {
319
+ mode: child.props.mode || 'tab'
320
+ }) : child.props);
321
+ })[0];
236
322
  }));
237
323
  };
238
324
 
@@ -245,9 +331,9 @@ var builder = function builder(WrappedComponent, namespace, initData) {
245
331
  formMode: 'add'
246
332
  }, initData)
247
333
  });
248
- return connect(function (_ref8) {
249
- var modelName = _ref8[namespace],
250
- loading = _ref8.loading;
334
+ return connect(function (_ref10) {
335
+ var modelName = _ref10[namespace],
336
+ loading = _ref10.loading;
251
337
  return {
252
338
  formData: modelName.formData,
253
339
  formOperates: modelName.formOperates,
@@ -258,11 +344,11 @@ var builder = function builder(WrappedComponent, namespace, initData) {
258
344
  };
259
345
  })(WrappedComponent);
260
346
  };
261
- var Index = function Index(_ref9) {
262
- var namespace = _ref9.ldId,
263
- initData = _ref9.initData,
264
- overModel = _ref9.overModel,
265
- props = _objectWithoutProperties(_ref9, _excluded3);
347
+ var Index = function Index(_ref11) {
348
+ var namespace = _ref11.ldId,
349
+ initData = _ref11.initData,
350
+ overModel = _ref11.overModel,
351
+ props = _objectWithoutProperties(_ref11, _excluded4);
266
352
  var match = useRouteMatch();
267
353
  var Component = useCreation(function () {
268
354
  var _getDvaApp3, _getDvaApp4, _match$params;
@@ -12,7 +12,6 @@ import { getFormColumn, formItemDataFormat, dataFormat, behaviorCall } from '../
12
12
  import { defaultComName } from '../../helper/form';
13
13
  import { LuckDaContext } from '../Builder';
14
14
  import styles from './index.less';
15
- var defaultOpe = ['read', 'add', 'update', 'delete'];
16
15
  var buildLdGridForm = function buildLdGridForm(_ref) {
17
16
  var _ref$columns = _ref.columns,
18
17
  columns = _ref$columns === void 0 ? [] : _ref$columns,
@@ -133,7 +132,6 @@ var buildLdGridForm = function buildLdGridForm(_ref) {
133
132
  };
134
133
  return /*#__PURE__*/React.createElement(GridForm, _extends({
135
134
  noAddon: true,
136
- operates: defaultOpe,
137
135
  orderByAdd: "asc",
138
136
  rowSelection: true,
139
137
  type: type,
package/es/utils/grid.js CHANGED
@@ -1,3 +1,4 @@
1
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
1
2
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
2
3
  var _excluded = ["comName", "property"],
3
4
  _excluded2 = ["name"],
@@ -33,7 +34,7 @@ export function getColumnRender(name, type) {
33
34
  break;
34
35
  case 'year':
35
36
  render = function render(text, record) {
36
- return record["".concat(name, "_virtual")] || (text ? moment(value).format('YYYY-MM-DD') : undefined);
37
+ return record["".concat(name, "_virtual")] || (text ? moment(text).format('YYYY-MM-DD') : undefined);
37
38
  };
38
39
  break;
39
40
  case 'user':
@@ -95,11 +96,11 @@ export var getGridColumn = function getGridColumn() {
95
96
  filter = _merge.filter,
96
97
  filterParams = _merge.filterParams,
97
98
  _props = _objectWithoutProperties(_merge, _excluded3);
98
- var data = {
99
+ var data = _objectSpread(_objectSpread({}, _props), {}, {
99
100
  field: name,
100
101
  title: _props.label,
101
102
  render: _props.render || getColumnRender(name, comName || defaultComName[property], _props)
102
- };
103
+ });
103
104
  if (isTreeGrid || isVirtual || includes(['user', 'select', 'group', 'switch', 'color', 'region'], comName || defaultComName[property])) data.sortable = false;
104
105
  // data.filter = false;
105
106
  if (!isNil(filter)) {
@@ -109,6 +110,7 @@ export var getGridColumn = function getGridColumn() {
109
110
  } else if (!isTreeGrid && !isVirtual) {
110
111
  var _props$config2;
111
112
  if ((_props.mode || ((_props$config2 = _props.config) === null || _props$config2 === void 0 ? void 0 : _props$config2.mode)) === 'multiple') {
113
+ data.field = "".concat(name, "_virtual");
112
114
  data.filter = 'text';
113
115
  return data;
114
116
  }
@@ -17,7 +17,6 @@ var _ldBuilder = _interopRequireDefault(require("../../helper/ldBuilder"));
17
17
  var _utils = require("../../utils");
18
18
  var _Builder = require("../Builder");
19
19
  var _excluded = ["columns", "resources", "actions", "doAction", "ldId", "dataSetKey", "filedsRewrite", "mainFormLdId", "mainDataSetKey", "onValueChange", "onQuery", "onAdd", "onUpdate", "moduleCode", "defaultDataSourceFormat", "ticketData", "relationKey"];
20
- var defaultOpe = ['read', 'add', 'update', 'delete'];
21
20
  var buildLdAutoForm = function buildLdAutoForm(_ref) {
22
21
  var _ref$columns = _ref.columns,
23
22
  columns = _ref$columns === void 0 ? [] : _ref$columns,
@@ -141,8 +140,7 @@ var buildLdAutoForm = function buildLdAutoForm(_ref) {
141
140
  })
142
141
  // onAdd={onOperate(onAdd, 'add')}
143
142
  ,
144
- onUpdate: onOperate(onUpdate, 'update'),
145
- operates: defaultOpe
143
+ onUpdate: onOperate(onUpdate, 'update')
146
144
  }, formConfig), basicItems);
147
145
  };
148
146
  var _default = (0, _ldBuilder.default)(buildLdAutoForm);
@@ -6,6 +6,8 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.default = void 0;
9
+ var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
10
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
9
11
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
12
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
13
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
@@ -25,15 +27,20 @@ var _Builder = require("../Builder");
25
27
  var _LdPop = require("../LdPop");
26
28
  var _model = _interopRequireDefault(require("./model"));
27
29
  var _action = require("../../helper/action");
28
- var _excluded = ["namespace", "formState", "formMode", "loading", "wrapperRef", "readOnly", "mainFormLdId", "renderFormList", "renderAffixLeft", "renderAffixRight", "beforeSubmit", "showSaveBtn", "saveBtnTitle", "affixLayout", "onValueChange", "afterSubmit", "renderFormExtra"],
29
- _excluded2 = ["id", "header", "title", "readOnly", "extraConfig", "renderTopLeft"],
30
- _excluded3 = ["ldId", "initData", "overModel"];
30
+ var _lodash = require("lodash");
31
+ var _bpm = require("@luck-design-biz/base/bpm");
32
+ var _services = require("../../services");
33
+ var _excluded = ["namespace", "formState", "formMode", "formOperates", "loading", "wrapperRef", "readOnly", "mainFormLdId", "renderFormList", "renderAffixLeft", "renderAffixRight", "beforeSubmit", "showSaveBtn", "saveBtnTitle", "affixLayout", "onValueChange", "afterSubmit", "renderFormExtra"],
34
+ _excluded2 = ["readFieldProps", "dataSets", "doAction", "resources"],
35
+ _excluded3 = ["id", "header", "title", "readOnly", "extraConfig", "renderTopLeft"],
36
+ _excluded4 = ["ldId", "initData", "overModel"];
31
37
  // 组件
32
38
  var LdFormList = function LdFormList(_ref) {
33
39
  var _formList$find;
34
40
  var namespace = _ref.namespace,
35
41
  formState = _ref.formState,
36
42
  formMode = _ref.formMode,
43
+ formOperates = _ref.formOperates,
37
44
  loading = _ref.loading,
38
45
  wrapperRef = _ref.wrapperRef,
39
46
  readOnly = _ref.readOnly,
@@ -57,11 +64,24 @@ var LdFormList = function LdFormList(_ref) {
57
64
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
58
65
  submitLoading = _useState2[0],
59
66
  setSubmitLoading = _useState2[1];
67
+ var _useState3 = (0, _react.useState)(false),
68
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
69
+ isCustomRenderAffixRight = _useState4[0],
70
+ setIsCustomRenderAffixRight = _useState4[1];
71
+ var _useState5 = (0, _react.useState)({}),
72
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
73
+ bizData = _useState6[0],
74
+ setBizData = _useState6[1];
60
75
  var _ref2 = (0, _react.useContext)(_LdPop.LuckDaPopContext) || {},
61
76
  defaultLayout = _ref2.affixLayout;
62
- var _ref3 = (0, _react.useContext)(_Builder.LuckDaContext) || {},
63
- dataSets = _ref3.dataSets,
64
- doAction = _ref3.doAction;
77
+ var _ref3 = (0, _react.useContext)(FormWindowContext) || {},
78
+ formWindow = _ref3.formWindow;
79
+ var _ref4 = (0, _react.useContext)(_Builder.LuckDaContext) || {},
80
+ readFieldProps = _ref4.readFieldProps,
81
+ dataSets = _ref4.dataSets,
82
+ doAction = _ref4.doAction,
83
+ resources = _ref4.resources,
84
+ rest = (0, _objectWithoutProperties2.default)(_ref4, _excluded2);
65
85
  var formListRef = (0, _react.useRef)(null);
66
86
  (0, _react.useImperativeHandle)(wrapperRef, function () {
67
87
  return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, formListRef.current), {}, {
@@ -81,8 +101,8 @@ var LdFormList = function LdFormList(_ref) {
81
101
  });
82
102
  });
83
103
  var handleValueChange = (0, _ahooks.useMemoizedFn)(function (change) {
84
- var _ref4 = formListRef.current || {},
85
- formRefs = _ref4.formRefs;
104
+ var _ref5 = formListRef.current || {},
105
+ formRefs = _ref5.formRefs;
86
106
  var data = formRefs && Object.keys(formRefs).map(function (key) {
87
107
  var _formRefs$key, _formRefs$key$formRef, _formRefs$key$current;
88
108
  var getValue = (((_formRefs$key = formRefs[key]) === null || _formRefs$key === void 0 ? void 0 : (_formRefs$key$formRef = _formRefs$key.formRef) === null || _formRefs$key$formRef === void 0 ? void 0 : _formRefs$key$formRef.current) ? formRefs[key].getData : null) || ((_formRefs$key$current = formRefs[key].current) === null || _formRefs$key$current === void 0 ? void 0 : _formRefs$key$current.getFieldsValue);
@@ -96,11 +116,63 @@ var LdFormList = function LdFormList(_ref) {
96
116
  formId: formId
97
117
  }, extraConfig)));
98
118
  });
119
+
120
+ /**zss添加**/
121
+ var renderAffixRightCustom = function renderAffixRightCustom() {
122
+ console.log('renderAffixRightCustom');
123
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, renderAffixRight && renderAffixRight(), /*#__PURE__*/_react.default.createElement(_bpm.BpmButton, {
124
+ bizData: bizData,
125
+ suppressDept: false
126
+ }));
127
+ };
128
+ (0, _ahooks.useAsyncEffect)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
129
+ var _props$ticketData, _params, _yield$readBehaviorCa, code, data, _props$ticketData2, _props$ticketData3, bpmInfoObj, tempObj;
130
+ return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
131
+ while (1) switch (_context.prev = _context.next) {
132
+ case 0:
133
+ if (!(formMode !== 'add')) {
134
+ _context.next = 8;
135
+ break;
136
+ }
137
+ _params = {
138
+ indocno: (_props$ticketData = props.ticketData) === null || _props$ticketData === void 0 ? void 0 : _props$ticketData.indocno,
139
+ moduleCode: rest.moduleCode,
140
+ datasetCode: mainDataSetKey,
141
+ mainDataSetKey: mainDataSetKey,
142
+ behaviorKey: 'readBpm'
143
+ };
144
+ _context.next = 4;
145
+ return (0, _services.readBehaviorCall)(_params);
146
+ case 4:
147
+ _yield$readBehaviorCa = _context.sent;
148
+ code = _yield$readBehaviorCa.code;
149
+ data = _yield$readBehaviorCa.data;
150
+ if (code == 1 && data) {
151
+ bpmInfoObj = data.bpmInfo;
152
+ tempObj = {
153
+ bizKey: bpmInfoObj.bizKey,
154
+ sname: bpmInfoObj.name,
155
+ modelKey: bpmInfoObj.bpmKey,
156
+ // basekey : bpmInfoObj.buskey,
157
+ idocid: (_props$ticketData2 = props.ticketData) === null || _props$ticketData2 === void 0 ? void 0 : _props$ticketData2.indocno,
158
+ moduleCode: rest.moduleCode,
159
+ datasetCode: mainDataSetKey,
160
+ indocno: (_props$ticketData3 = props.ticketData) === null || _props$ticketData3 === void 0 ? void 0 : _props$ticketData3.indocno
161
+ };
162
+ setBizData(tempObj);
163
+ setIsCustomRenderAffixRight(true);
164
+ }
165
+ case 8:
166
+ case "end":
167
+ return _context.stop();
168
+ }
169
+ }, _callee);
170
+ })), []);
99
171
  var handleBatchSubmit = function handleBatchSubmit(values, action) {
100
- var _ref6 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
101
- formCode = _ref6.formCode,
102
- formKey = _ref6.formKey,
103
- formUid = _ref6.formUid;
172
+ var _ref8 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
173
+ formCode = _ref8.formCode,
174
+ formKey = _ref8.formKey,
175
+ formUid = _ref8.formUid;
104
176
  setSubmitLoading(true);
105
177
  (0, _action.onBatchSubmitAction)({
106
178
  values: values,
@@ -157,7 +229,15 @@ var LdFormList = function LdFormList(_ref) {
157
229
  formRef: formListRef,
158
230
  renderExtra: renderExtra
159
231
  });
160
- var formList = renderFormList(formConfig);
232
+ var formList = (0, _ahooks.useCreation)(function () {
233
+ var _list = renderFormList(formConfig);
234
+ var extraList = renderFormExtra && (0, _lodash.isArray)(renderFormExtra(formConfig)) ? renderFormExtra(formConfig) : [renderFormExtra(formConfig)];
235
+ var list = _list.concat(extraList);
236
+ return (0, _lodash.sortBy)(list, function (o) {
237
+ var _o$props;
238
+ return o.order || ((_o$props = o.props) === null || _o$props === void 0 ? void 0 : _o$props.order);
239
+ });
240
+ }, [formConfig]);
161
241
  var mainDataSetKey = (_formList$find = formList.find(function (i) {
162
242
  return i.id === mainFormLdId;
163
243
  })) === null || _formList$find === void 0 ? void 0 : _formList$find.dataSetKey;
@@ -165,7 +245,10 @@ var LdFormList = function LdFormList(_ref) {
165
245
  editFlow: true,
166
246
  formState: formState,
167
247
  formMode: formMode,
168
- loading: loading || submitLoading
248
+ loading: loading || submitLoading,
249
+ formOperates: (0, _lodash.mapValues)(formOperates, function () {
250
+ return resources;
251
+ })
169
252
  }, props, {
170
253
  modelName: namespace,
171
254
  ref: formListRef,
@@ -178,68 +261,71 @@ var LdFormList = function LdFormList(_ref) {
178
261
  }), /*#__PURE__*/_react.default.createElement(_FormList.FormListAffix, {
179
262
  showSaveBtn: !readOnly && showSaveBtn,
180
263
  renderLeft: renderAffixLeft,
181
- renderRight: renderAffixRight,
264
+ renderRight: isCustomRenderAffixRight ? renderAffixRightCustom : renderAffixRight,
182
265
  title: saveBtnTitle,
183
266
  layout: affixLayout || defaultLayout
184
267
  }), formList.map(function (formProps) {
185
- var _ref7 = formProps || {},
186
- ldId = _ref7.id,
187
- _ref7$header = _ref7.header,
188
- header = _ref7$header === void 0 ? 'collapse' : _ref7$header,
189
- title = _ref7.title,
190
- _readOnly = _ref7.readOnly,
191
- _ref7$extraConfig = _ref7.extraConfig,
192
- extraConfig = _ref7$extraConfig === void 0 ? {} : _ref7$extraConfig,
193
- _ref7$renderTopLeft = _ref7.renderTopLeft,
194
- _renderTopLeft = _ref7$renderTopLeft === void 0 ? function () {
195
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
196
- } : _ref7$renderTopLeft,
197
- _props = (0, _objectWithoutProperties2.default)(_ref7, _excluded2);
198
- var _props$type = _props.type,
199
- type = _props$type === void 0 ? 'auto' : _props$type;
200
- var renderForm = type === 'auto' ? _LdAutoForm.default : _LdGridForm.default;
201
- if (header === 'collapse' || header === 'collapseFollow') return /*#__PURE__*/_react.default.createElement(_base.Collapse, {
202
- title: title || ldId,
203
- extra: type === 'auto' && renderExtra(ldId, extraConfig, 'graphic'),
204
- id: ldId,
205
- key: ldId,
206
- mode: header === 'collapse' && ldId !== mainFormLdId && 'tab'
207
- }, renderForm((0, _objectSpread2.default)((0, _objectSpread2.default)({}, _props), {}, {
208
- ldId: ldId,
209
- mainFormLdId: mainFormLdId,
210
- mainDataSetKey: mainDataSetKey,
211
- readOnly: readOnly || _readOnly,
212
- onValueChange: handleValueChange,
213
- ticketData: props.ticketData,
214
- renderTopLeft: function renderTopLeft() {
215
- return type === 'auto' ? _renderTopLeft() : [renderExtra(ldId, extraConfig, 'text'), _renderTopLeft()];
216
- }
217
- })));
218
- return /*#__PURE__*/_react.default.createElement(_react.Fragment, {
219
- key: ldId
220
- }, header === 'divider' && /*#__PURE__*/_react.default.createElement(_luckDesign.BasicDivider, {
221
- title: title || ldId,
222
- id: ldId
223
- }), type === 'auto' && /*#__PURE__*/_react.default.createElement("div", {
224
- style: {
225
- textAlign: 'right'
226
- }
227
- }, renderExtra(ldId, extraConfig, 'graphic')), renderForm((0, _objectSpread2.default)((0, _objectSpread2.default)({}, _props), {}, {
228
- ldId: ldId,
229
- mainFormLdId: mainFormLdId,
230
- mainDataSetKey: mainDataSetKey,
231
- readOnly: readOnly || _readOnly,
232
- onValueChange: handleValueChange,
233
- ticketData: props.ticketData,
234
- renderTopLeft: function renderTopLeft() {
235
- return type === 'auto' ? _renderTopLeft() : [renderExtra(ldId, extraConfig, 'graphic'), _renderTopLeft()];
236
- }
237
- })));
238
- }), _utils.ChildrenUtil.deepMap(renderFormExtra(formConfig), function (child) {
239
- var _child$type;
240
- return /*#__PURE__*/_react.default.cloneElement(child, ((_child$type = child.type) === null || _child$type === void 0 ? void 0 : _child$type.displayName) === 'Collapse' ? {
241
- mode: child.props.mode || 'tab'
242
- } : {});
268
+ if (formProps.dataSetKey) {
269
+ var _ref9 = formProps || {},
270
+ ldId = _ref9.id,
271
+ _ref9$header = _ref9.header,
272
+ header = _ref9$header === void 0 ? 'collapse' : _ref9$header,
273
+ title = _ref9.title,
274
+ _readOnly = _ref9.readOnly,
275
+ _ref9$extraConfig = _ref9.extraConfig,
276
+ extraConfig = _ref9$extraConfig === void 0 ? {} : _ref9$extraConfig,
277
+ _ref9$renderTopLeft = _ref9.renderTopLeft,
278
+ _renderTopLeft = _ref9$renderTopLeft === void 0 ? function () {
279
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
280
+ } : _ref9$renderTopLeft,
281
+ _props = (0, _objectWithoutProperties2.default)(_ref9, _excluded3);
282
+ var _props$type = _props.type,
283
+ type = _props$type === void 0 ? 'auto' : _props$type;
284
+ var renderForm = type === 'auto' ? _LdAutoForm.default : _LdGridForm.default;
285
+ if (header === 'collapse' || header === 'collapseFollow') return /*#__PURE__*/_react.default.createElement(_base.Collapse, {
286
+ title: title || ldId,
287
+ extra: type === 'auto' && renderExtra(ldId, extraConfig, 'graphic'),
288
+ id: ldId,
289
+ key: ldId,
290
+ mode: header === 'collapse' && ldId !== mainFormLdId && 'tab'
291
+ }, renderForm((0, _objectSpread2.default)((0, _objectSpread2.default)({}, _props), {}, {
292
+ ldId: ldId,
293
+ mainFormLdId: mainFormLdId,
294
+ mainDataSetKey: mainDataSetKey,
295
+ readOnly: readOnly || _readOnly,
296
+ onValueChange: handleValueChange,
297
+ ticketData: props.ticketData,
298
+ renderTopLeft: function renderTopLeft() {
299
+ return type === 'auto' ? _renderTopLeft() : [renderExtra(ldId, extraConfig, 'text'), _renderTopLeft()];
300
+ }
301
+ })));
302
+ return /*#__PURE__*/_react.default.createElement(_react.Fragment, {
303
+ key: ldId
304
+ }, header === 'divider' && /*#__PURE__*/_react.default.createElement(_luckDesign.BasicDivider, {
305
+ title: title || ldId,
306
+ id: ldId
307
+ }), type === 'auto' && /*#__PURE__*/_react.default.createElement("div", {
308
+ style: {
309
+ textAlign: 'right'
310
+ }
311
+ }, renderExtra(ldId, extraConfig, 'graphic')), renderForm((0, _objectSpread2.default)((0, _objectSpread2.default)({}, _props), {}, {
312
+ ldId: ldId,
313
+ mainFormLdId: mainFormLdId,
314
+ mainDataSetKey: mainDataSetKey,
315
+ readOnly: readOnly || _readOnly,
316
+ onValueChange: handleValueChange,
317
+ ticketData: props.ticketData,
318
+ renderTopLeft: function renderTopLeft() {
319
+ return type === 'auto' ? _renderTopLeft() : [renderExtra(ldId, extraConfig, 'graphic'), _renderTopLeft()];
320
+ }
321
+ })));
322
+ }
323
+ return _utils.ChildrenUtil.deepMap(formProps, function (child) {
324
+ var _child$type;
325
+ return /*#__PURE__*/_react.default.cloneElement(child, ((_child$type = child.type) === null || _child$type === void 0 ? void 0 : _child$type.displayName) === 'Collapse' ? (0, _objectSpread2.default)((0, _objectSpread2.default)({}, child.props), {}, {
326
+ mode: child.props.mode || 'tab'
327
+ }) : child.props);
328
+ })[0];
243
329
  }));
244
330
  };
245
331
 
@@ -252,9 +338,9 @@ var builder = function builder(WrappedComponent, namespace, initData) {
252
338
  formMode: 'add'
253
339
  }, initData)
254
340
  });
255
- return (0, _umi.connect)(function (_ref8) {
256
- var modelName = _ref8[namespace],
257
- loading = _ref8.loading;
341
+ return (0, _umi.connect)(function (_ref10) {
342
+ var modelName = _ref10[namespace],
343
+ loading = _ref10.loading;
258
344
  return {
259
345
  formData: modelName.formData,
260
346
  formOperates: modelName.formOperates,
@@ -265,11 +351,11 @@ var builder = function builder(WrappedComponent, namespace, initData) {
265
351
  };
266
352
  })(WrappedComponent);
267
353
  };
268
- var Index = function Index(_ref9) {
269
- var namespace = _ref9.ldId,
270
- initData = _ref9.initData,
271
- overModel = _ref9.overModel,
272
- props = (0, _objectWithoutProperties2.default)(_ref9, _excluded3);
354
+ var Index = function Index(_ref11) {
355
+ var namespace = _ref11.ldId,
356
+ initData = _ref11.initData,
357
+ overModel = _ref11.overModel,
358
+ props = (0, _objectWithoutProperties2.default)(_ref11, _excluded4);
273
359
  var match = (0, _umi.useRouteMatch)();
274
360
  var Component = (0, _ahooks.useCreation)(function () {
275
361
  var _getDvaApp3, _getDvaApp4, _match$params;
@@ -20,7 +20,6 @@ var _form = require("../../helper/form");
20
20
  var _Builder = require("../Builder");
21
21
  var _index = _interopRequireDefault(require("./index.less"));
22
22
  var _excluded = ["columns", "resources", "actions", "doAction", "ldId", "dataSetKey", "columnsRewrite", "onQuery", "onAdd", "onUpdate", "onDelete", "mainFormLdId", "mainDataSetKey", "onValueChange", "type", "afterOperate", "moduleCode", "defaultDataSourceFormat", "ticketData", "className", "formRef", "formMode"];
23
- var defaultOpe = ['read', 'add', 'update', 'delete'];
24
23
  var buildLdGridForm = function buildLdGridForm(_ref) {
25
24
  var _ref$columns = _ref.columns,
26
25
  columns = _ref$columns === void 0 ? [] : _ref$columns,
@@ -141,7 +140,6 @@ var buildLdGridForm = function buildLdGridForm(_ref) {
141
140
  };
142
141
  return /*#__PURE__*/_react.default.createElement(_FormList.GridForm, (0, _extends2.default)({
143
142
  noAddon: true,
144
- operates: defaultOpe,
145
143
  orderByAdd: "asc",
146
144
  rowSelection: true,
147
145
  type: type,
package/lib/utils/grid.js CHANGED
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.getColumnRender = getColumnRender;
8
8
  exports.getGridColumn = void 0;
9
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
9
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
11
  var _react = _interopRequireDefault(require("react"));
11
12
  var _umi = require("umi");
@@ -40,7 +41,7 @@ function getColumnRender(name, type) {
40
41
  break;
41
42
  case 'year':
42
43
  render = function render(text, record) {
43
- return record["".concat(name, "_virtual")] || (text ? (0, _moment.default)(value).format('YYYY-MM-DD') : undefined);
44
+ return record["".concat(name, "_virtual")] || (text ? (0, _moment.default)(text).format('YYYY-MM-DD') : undefined);
44
45
  };
45
46
  break;
46
47
  case 'user':
@@ -102,11 +103,11 @@ var getGridColumn = function getGridColumn() {
102
103
  filter = _merge.filter,
103
104
  filterParams = _merge.filterParams,
104
105
  _props = (0, _objectWithoutProperties2.default)(_merge, _excluded3);
105
- var data = {
106
+ var data = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _props), {}, {
106
107
  field: name,
107
108
  title: _props.label,
108
109
  render: _props.render || getColumnRender(name, comName || _form.defaultComName[property], _props)
109
- };
110
+ });
110
111
  if (isTreeGrid || isVirtual || (0, _lodash.includes)(['user', 'select', 'group', 'switch', 'color', 'region'], comName || _form.defaultComName[property])) data.sortable = false;
111
112
  // data.filter = false;
112
113
  if (!(0, _lodash.isNil)(filter)) {
@@ -116,6 +117,7 @@ var getGridColumn = function getGridColumn() {
116
117
  } else if (!isTreeGrid && !isVirtual) {
117
118
  var _props$config2;
118
119
  if ((_props.mode || ((_props$config2 = _props.config) === null || _props$config2 === void 0 ? void 0 : _props$config2.mode)) === 'multiple') {
120
+ data.field = "".concat(name, "_virtual");
119
121
  data.filter = 'text';
120
122
  return data;
121
123
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luck-design-biz/luckda",
3
- "version": "0.0.14",
3
+ "version": "0.0.15-1",
4
4
  "scripts": {
5
5
  "start": "dumi dev",
6
6
  "docs:build": "dumi build",