@luck-design-biz/luckda 0.0.16 → 0.0.17-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.
@@ -6,7 +6,7 @@ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
6
6
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
7
7
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
8
8
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
9
- var _excluded = ["namespace", "formState", "formMode", "formOperates", "loading", "wrapperRef", "readOnly", "mainFormLdId", "renderFormList", "renderAffixLeft", "renderAffixRight", "beforeSubmit", "showSaveBtn", "saveBtnTitle", "affixLayout", "onValueChange", "afterSubmit", "renderFormExtra"],
9
+ var _excluded = ["namespace", "formState", "formMode", "formOperates", "loading", "wrapperRef", "readOnly", "mainFormLdId", "renderFormList", "renderAffixLeft", "renderAffixRight", "beforeSubmit", "showSaveBtn", "saveBtnTitle", "affixLayout", "onValueChange", "afterSubmit", "renderFormExtra", "bpmButtonProps"],
10
10
  _excluded2 = ["dataSets", "doAction", "resources"],
11
11
  _excluded3 = ["id", "header", "title", "readOnly", "extraConfig", "renderTopLeft"],
12
12
  _excluded4 = ["ldId", "initData", "overModel"];
@@ -53,6 +53,8 @@ var LdFormList = function LdFormList(_ref) {
53
53
  renderFormExtra = _ref$renderFormExtra === void 0 ? function () {
54
54
  return /*#__PURE__*/React.createElement(React.Fragment, null);
55
55
  } : _ref$renderFormExtra,
56
+ _ref$bpmButtonProps = _ref.bpmButtonProps,
57
+ bpmButtonProps = _ref$bpmButtonProps === void 0 ? {} : _ref$bpmButtonProps,
56
58
  props = _objectWithoutProperties(_ref, _excluded);
57
59
  var _useState = useState(false),
58
60
  _useState2 = _slicedToArray(_useState, 2),
@@ -110,63 +112,64 @@ var LdFormList = function LdFormList(_ref) {
110
112
 
111
113
  /**zss添加**/
112
114
  var renderAffixRightCustom = function renderAffixRightCustom() {
113
- return /*#__PURE__*/React.createElement(React.Fragment, null, renderAffixRight && renderAffixRight(), /*#__PURE__*/React.createElement(BpmButton, {
115
+ return /*#__PURE__*/React.createElement(React.Fragment, null, renderAffixRight && renderAffixRight(), /*#__PURE__*/React.createElement(BpmButton, _extends({
114
116
  bizData: bizData,
115
117
  suppressDept: false
116
- }));
118
+ }, bpmButtonProps)));
117
119
  };
118
120
  useAsyncEffect( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
119
- var _props$ticketData, _params, response, _yield$readBehaviorCa, code, data, _props$ticketData2, _props$ticketData3, bpmInfoObj, tempObj;
121
+ var _props$ticketData, PRIMARY, _params, response, _yield$readBehaviorCa, code, data, _props$ticketData2, _props$ticketData3, bpmInfoObj, tempObj;
120
122
  return _regeneratorRuntime().wrap(function _callee$(_context) {
121
123
  while (1) switch (_context.prev = _context.next) {
122
124
  case 0:
123
125
  if (!(formMode !== 'add')) {
124
- _context.next = 12;
126
+ _context.next = 13;
125
127
  break;
126
128
  }
129
+ PRIMARY = window.appConfig.constraintKeys.PRIMARY;
127
130
  _params = {
128
- indocno: (_props$ticketData = props.ticketData) === null || _props$ticketData === void 0 ? void 0 : _props$ticketData.indocno,
131
+ indocno: (_props$ticketData = props.ticketData) === null || _props$ticketData === void 0 ? void 0 : _props$ticketData[PRIMARY],
129
132
  moduleCode: rest.moduleCode,
130
133
  datasetCode: mainDataSetKey,
131
134
  mainDataSetKey: mainDataSetKey,
132
135
  behaviorKey: 'readBpmDeploy'
133
136
  }; // 请求是否有工作流服务
134
- _context.next = 4;
137
+ _context.next = 5;
135
138
  return readBehaviorCall(_params);
136
- case 4:
139
+ case 5:
137
140
  response = _context.sent;
138
141
  if (!(response.code === 1 && response.data)) {
139
- _context.next = 12;
142
+ _context.next = 13;
140
143
  break;
141
144
  }
142
- _context.next = 8;
145
+ _context.next = 9;
143
146
  return readBehaviorCall(_objectSpread(_objectSpread({}, _params), {}, {
144
147
  behaviorKey: 'readBpm'
145
148
  }));
146
- case 8:
149
+ case 9:
147
150
  _yield$readBehaviorCa = _context.sent;
148
151
  code = _yield$readBehaviorCa.code;
149
152
  data = _yield$readBehaviorCa.data;
150
153
  if (code == 1 && data) {
151
154
  bpmInfoObj = data.bpmInfo;
152
- tempObj = {
155
+ tempObj = _objectSpread(_objectSpread({}, props.formData[mainFormLdId]), {}, {
153
156
  bizKey: bpmInfoObj.bizKey,
154
157
  sname: bpmInfoObj.name,
155
158
  modelKey: bpmInfoObj.bpmKey,
156
- idocid: (_props$ticketData2 = props.ticketData) === null || _props$ticketData2 === void 0 ? void 0 : _props$ticketData2.indocno,
159
+ idocid: (_props$ticketData2 = props.ticketData) === null || _props$ticketData2 === void 0 ? void 0 : _props$ticketData2[PRIMARY],
157
160
  moduleCode: rest.moduleCode,
158
161
  datasetCode: mainDataSetKey,
159
- indocno: (_props$ticketData3 = props.ticketData) === null || _props$ticketData3 === void 0 ? void 0 : _props$ticketData3.indocno
160
- };
162
+ indocno: (_props$ticketData3 = props.ticketData) === null || _props$ticketData3 === void 0 ? void 0 : _props$ticketData3[PRIMARY]
163
+ });
161
164
  setBizData(tempObj);
162
165
  setIsCustomRenderAffixRight(true);
163
166
  }
164
- case 12:
167
+ case 13:
165
168
  case "end":
166
169
  return _context.stop();
167
170
  }
168
171
  }, _callee);
169
- })), []);
172
+ })), [props.formData]);
170
173
  var handleBatchSubmit = function handleBatchSubmit(values, action) {
171
174
  var _ref7 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
172
175
  formCode = _ref7.formCode,
@@ -192,6 +195,7 @@ var LdFormList = function LdFormList(_ref) {
192
195
  afterSubmit(success, mainKey, res);
193
196
  } else {
194
197
  var _formListRef$current;
198
+ formListRef.current.setFormMode('info');
195
199
  props.parentModelName && ((_formListRef$current = formListRef.current) === null || _formListRef$current === void 0 ? void 0 : _formListRef$current.doParentsQuery());
196
200
  var mainFormData = res.detail[res.list[0]];
197
201
  formListRef.current.onQuery(null, _defineProperty({}, mainFormLdId, mainFormData), function () {
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _toConsumableArray from "@babel/runtime/helpers/esm/toConsumableArray";
3
3
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
- var _excluded = ["columns", "resources", "actions", "doAction", "afterInit", "namespace", "wrapperRef", "list", "detail", "params", "filters", "loading", "unclosableSet", "onQuery", "doQuery", "pageno", "pagesize", "totalCount", "columnsRewrite", "columnsReset", "batchOperations", "formatDataSource", "resultSet", "actionsColumn", "readFilter", "isFlow", "isTreeGrid"],
5
+ var _excluded = ["columns", "resources", "actions", "doAction", "afterInit", "namespace", "wrapperRef", "list", "detail", "params", "filters", "loading", "unclosableSet", "onQuery", "doQuery", "pageno", "pagesize", "totalCount", "columnsRewrite", "columnsReset", "batchOperations", "formatDataSource", "resultSet", "actionsColumn", "readFilter", "isFlow", "isTreeGrid", "writable"],
6
6
  _excluded2 = ["ldId", "moduleCode", "suppressInit", "overModel", "afterQuery", "isTreeGrid"];
7
7
  import React, { forwardRef, useImperativeHandle, useRef, useEffect } from 'react';
8
8
  import { getDvaApp } from 'umi';
@@ -42,6 +42,7 @@ var LdGrid = function LdGrid(_ref) {
42
42
  readFilter = _ref.readFilter,
43
43
  isFlow = _ref.isFlow,
44
44
  isTreeGrid = _ref.isTreeGrid,
45
+ writable = _ref.writable,
45
46
  props = _objectWithoutProperties(_ref, _excluded);
46
47
  var gridRef = useRef(null);
47
48
  var treeConfig = useCreation(function () {
@@ -99,7 +100,7 @@ var LdGrid = function LdGrid(_ref) {
99
100
  result.push(customColumns[field]);
100
101
  } else if (defaultColumns[field].isShowInGrid)
101
102
  // 数据集中存在的字段和自定义结合展示
102
- result.push(getGridColumn(defaultColumns[field], customColumns[field] || {}, isTreeGrid));
103
+ result.push(getGridColumn(defaultColumns[field], customColumns[field] || {}, isTreeGrid, writable));
103
104
  }, []);
104
105
  }, [columns, columnsRewrite, columnsReset]);
105
106
  var _actionsColumn = useCreation(function () {
@@ -90,7 +90,7 @@ var LdTree = function LdTree(_ref) {
90
90
  defaultExpandedKeys: defaultExpanded
91
91
  });
92
92
  }
93
- var treeData = dataToTreeFormat ? dataToTreeFormat(data) : dataToTree(data, null, rowKey, window.appConfig.constraintKeys.PARENT);
93
+ var treeData = dataToTreeFormat ? dataToTreeFormat(data) : dataToTree(data, null, window.appConfig.constraintKeys.PRIMARY, window.appConfig.constraintKeys.PARENT);
94
94
  setDataSource(treeData);
95
95
  afterInit && afterInit(treeData);
96
96
  }
@@ -158,7 +158,7 @@ export var onBatchSubmitAction = function onBatchSubmitAction(_ref3, callback) {
158
158
  } else {
159
159
  result[formInfo.dataSetKey] = transform(value, function (_result, _value, _key) {
160
160
  _result[_key] = _value.map(function (_val) {
161
- return _objectSpread(_objectSpread({}, dataFormat(gridColumns, _val)), {}, _defineProperty({}, window.appConfig.constraintKeys.PRIMARY, _key === 'addList' ? null : item[window.appConfig.constraintKeys.PRIMARY]));
161
+ return _objectSpread(_objectSpread({}, dataFormat(gridColumns, _val)), {}, _defineProperty({}, window.appConfig.constraintKeys.PRIMARY, _key === 'addList' ? null : _val[window.appConfig.constraintKeys.PRIMARY]));
162
162
  });
163
163
  }, {});
164
164
  }
package/es/helper/form.js CHANGED
@@ -86,6 +86,7 @@ export function translator() {
86
86
  label: '不满足验证要求'
87
87
  })
88
88
  }];
89
+ if (allConfig['desensitized']) _props.desensitized = allConfig['desensitized']; // 脱敏
89
90
  return _props;
90
91
  }
91
92
 
@@ -2,8 +2,8 @@ import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
3
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
4
4
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
5
- var _excluded = ["formId", "formRef", "showNote", "operates", "loading", "uploadUrl", "forbiddenTypes", "beforeUpload", "formMode", "onUploadChange", "zipName", "resetActions", "getUrl"];
6
- import React, { useState, useRef } from 'react';
5
+ var _excluded = ["formId", "formRef", "showNote", "operates", "loading", "uploadUrl", "forbiddenTypes", "beforeUpload", "formMode", "onUploadChange", "zipName", "resetActions", "getUrl", "wrapperRef"];
6
+ import React, { useState, useRef, forwardRef } from 'react';
7
7
  import { getDvaApp } from 'umi';
8
8
  import { useMemoizedFn } from 'ahooks';
9
9
  import { Button, Upload, Tooltip, Icon } from 'antd';
@@ -64,6 +64,7 @@ var UploadGridForm = function UploadGridForm(_ref) {
64
64
  zipName = _ref$zipName === void 0 ? 'download.zip' : _ref$zipName,
65
65
  resetActions = _ref.resetActions,
66
66
  getUrl = _ref.getUrl,
67
+ wrapperRef = _ref.wrapperRef,
67
68
  rest = _objectWithoutProperties(_ref, _excluded);
68
69
  var _useState = useState(false),
69
70
  _useState2 = _slicedToArray(_useState, 2),
@@ -73,7 +74,7 @@ var UploadGridForm = function UploadGridForm(_ref) {
73
74
  _useState4 = _slicedToArray(_useState3, 2),
74
75
  uploadLoading = _useState4[0],
75
76
  setUploadLoading = _useState4[1];
76
- var gridRef = useRef(null);
77
+ var gridRef = wrapperRef || useRef(null);
77
78
  var _getDvaApp$_store$get = (_getDvaApp = getDvaApp()) === null || _getDvaApp === void 0 ? void 0 : _getDvaApp._store.getState().user,
78
79
  currentUser = _getDvaApp$_store$get.currentUser;
79
80
 
@@ -86,7 +87,6 @@ var UploadGridForm = function UploadGridForm(_ref) {
86
87
  var filenames = selectedRows.map(function (item) {
87
88
  return item.fileId || item.uid;
88
89
  });
89
- console.log('handleDownload1', filenames, selectedRows);
90
90
  downloadFile(filenames, 'downloadOne');
91
91
  cb && cb(true);
92
92
  } else {
@@ -94,7 +94,6 @@ var UploadGridForm = function UploadGridForm(_ref) {
94
94
  var files = selectedRows.map(function (item) {
95
95
  return item.fileId || item.uid;
96
96
  }).join(',');
97
- console.log('handleDownload2', files, selectedRows);
98
97
  patchDownloadZip(getUrl('downloadZip'), files, {
99
98
  zipName: zipName
100
99
  }).then(function () {
@@ -372,5 +371,10 @@ var UploadGridForm = function UploadGridForm(_ref) {
372
371
  }
373
372
  }))));
374
373
  };
375
- UploadGridForm.displayName = 'GridForm';
376
- export default UploadGridForm;
374
+ var Com = /*#__PURE__*/forwardRef(function (props, ref) {
375
+ return /*#__PURE__*/React.createElement(UploadGridForm, _extends({
376
+ wrapperRef: ref
377
+ }, props));
378
+ });
379
+ export default Com;
380
+ Com.displayName = 'GridForm';
@@ -15,10 +15,11 @@ function buildComponent(props) {
15
15
  note = _props$note === void 0 ? '' : _props$note,
16
16
  rest = _objectWithoutProperties(props, _excluded);
17
17
  var formId = "annex_".concat(_formId);
18
- var getUrl = function getUrl(behaviorKey, _note) {
19
- var formData = rest.formData,
20
- mainFormLdId = rest.mainFormLdId,
21
- ticketData = rest.ticketData;
18
+ var getUrl = function getUrl(behaviorKey, _note, docUid) {
19
+ var ticketData = rest.ticketData,
20
+ formData = rest.formData,
21
+ mainFormLdId = rest.mainFormLdId;
22
+ var PRIMARY_KEY = window.appConfig.constraintKeys.PRIMARY;
22
23
  var params = omitBy({
23
24
  moduleCode: moduleCode,
24
25
  bucket: bucket,
@@ -26,7 +27,7 @@ function buildComponent(props) {
26
27
  tag: formId,
27
28
  note: _note || note,
28
29
  active: !(behaviorKey === 'loadFileGrid' || rest.formMode === 'add' || rest.formMode === 'update'),
29
- docUid: formData && formData[mainFormLdId] && formData[mainFormLdId][window.appConfig.constraintKeys.PRIMARY] || ticketData && ticketData[window.appConfig.constraintKeys.PRIMARY]
30
+ docUid: docUid || formData[mainFormLdId] && formData[mainFormLdId][PRIMARY_KEY] || ticketData && ticketData[PRIMARY_KEY]
30
31
  }, isNil);
31
32
  return "".concat(window.appConfig.OSS_HOST_V3, "?").concat(stringify(params));
32
33
  };
@@ -36,8 +37,14 @@ function buildComponent(props) {
36
37
  rowKey: "uid"
37
38
  }, rest, {
38
39
  onQuery: {
39
- api: function api() {
40
- return request(getUrl('loadFileGrid'));
40
+ api: function api(_ref) {
41
+ var docUid = _ref.docUid;
42
+ return request(getUrl('loadFileGrid', null, docUid));
43
+ },
44
+ get: function get(formData) {
45
+ return {
46
+ docUid: formData && formData[rest.mainFormLdId] && formData[rest.mainFormLdId][window.appConfig.constraintKeys.PRIMARY]
47
+ };
41
48
  },
42
49
  format: function format(data) {
43
50
  return data.map(function (i) {
package/es/utils/grid.js CHANGED
@@ -1,3 +1,4 @@
1
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
1
2
  import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
2
3
  import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
4
  var _excluded = ["comName", "property"],
@@ -5,13 +6,14 @@ var _excluded = ["comName", "property"],
5
6
  _excluded3 = ["filter", "filterParams"];
6
7
  import React from "react";
7
8
  import { getDvaApp } from 'umi';
8
- import { merge, isNil, isArray, includes } from 'lodash';
9
+ import { merge, isNil, isArray, includes, capitalize } from 'lodash';
9
10
  import { Switch, Tag } from 'antd';
10
11
  import moment from 'moment';
11
- import { UploadGridCell } from '@luck-design-biz/base';
12
+ import UploadGridCell from '../upload/GridCell';
12
13
  import { formatMessage } from '@luck-design-biz/base/utils';
13
14
  import api from '@/services/ApiConfig';
14
- import { defaultComName, translator, formatCustomProps } from '../helper/form';
15
+ import { defaultComName, translator, formatCustomProps, splitStrToObj } from '../helper/form';
16
+ import * as formItemUtils from '../helper/FromItems';
15
17
 
16
18
  // const { dispatch } = getDvaApp()?._store;
17
19
 
@@ -98,6 +100,7 @@ export var getGridColumn = function getGridColumn() {
98
100
  props = _objectWithoutProperties(_ref, _excluded);
99
101
  var customProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
100
102
  var isTreeGrid = arguments.length > 2 ? arguments[2] : undefined;
103
+ var writable = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
101
104
  var _props$isVirtual = props.isVirtual,
102
105
  isVirtual = _props$isVirtual === void 0 ? false : _props$isVirtual;
103
106
  var _translator = translator(props),
@@ -219,5 +222,63 @@ export var getGridColumn = function getGridColumn() {
219
222
  data.filter = 'text';
220
223
  }
221
224
  } else data.filter = false;
225
+ if (writable && props.isShowInForm && !props.isReadOnly) {
226
+ data.editable = props.isNotNull ? {
227
+ required: true
228
+ } : true;
229
+ if (_props.cellWriter) data.cellWriter = _props.cellWriter;else {
230
+ var formItemCom = capitalize(comName || defaultComName[property]) === 'Textarea' ? 'String' : capitalize(comName || defaultComName[property]);
231
+ var getFormItemUtils = formItemUtils["get".concat(formItemCom, "Item")];
232
+ var formItemProps = {};
233
+ switch (formItemCom) {
234
+ case 'date':
235
+ formItemProps = {
236
+ dataFormat: function dataFormat(value) {
237
+ var _ref2;
238
+ return _ref2 = {}, _defineProperty(_ref2, name, value ? moment(value).valueOf() : undefined), _defineProperty(_ref2, "".concat(name, "_virtual"), value ? moment(value).format('YYYY-MM-DD HH:mm:ss') : undefined), _ref2;
239
+ },
240
+ inputFormat: function inputFormat(value, record, params) {
241
+ return moment(record["".concat(name, "_virtual")], 'YYYY-MM-DD HH:mm:ss');
242
+ }
243
+ };
244
+ break;
245
+ case 'user':
246
+ case 'select':
247
+ case 'group':
248
+ if (translateProps.multiple) {
249
+ formItemProps = {
250
+ dataFormat: function dataFormat(value) {
251
+ var _ref3;
252
+ return _ref3 = {}, _defineProperty(_ref3, name, value.map(function (v) {
253
+ return v.value || v.key;
254
+ }).join(',')), _defineProperty(_ref3, "".concat(name, "_virtual"), value.map(function (v) {
255
+ return v.label;
256
+ }).join(',')), _ref3;
257
+ },
258
+ inputFormat: function inputFormat(value, record, params) {
259
+ return _defineProperty({}, name, splitStrToObj(value, record["".concat(name, "_virtual")]));
260
+ }
261
+ };
262
+ } else {
263
+ formItemProps = {
264
+ dataFormat: function dataFormat(value) {
265
+ var _ref5;
266
+ return _ref5 = {}, _defineProperty(_ref5, name, value ? value.value || value.key : undefined), _defineProperty(_ref5, "".concat(name, "_virtual"), value ? value.label : undefined), _ref5;
267
+ },
268
+ inputFormat: function inputFormat(value, record, params) {
269
+ return _defineProperty({}, name, !isNil(value) ? {
270
+ key: value,
271
+ value: value,
272
+ label: record["".concat(name, "_virtual")]
273
+ } : undefined);
274
+ }
275
+ };
276
+ }
277
+ break;
278
+ }
279
+ ;
280
+ data.cellWriter = getFormItemUtils(_objectSpread(_objectSpread({}, _props), formItemProps));
281
+ }
282
+ }
222
283
  return data;
223
284
  };
@@ -31,7 +31,7 @@ var _action = require("../../helper/action");
31
31
  var _lodash = require("lodash");
32
32
  var _bpm = require("@luck-design-biz/base/bpm");
33
33
  var _services = require("../../services");
34
- var _excluded = ["namespace", "formState", "formMode", "formOperates", "loading", "wrapperRef", "readOnly", "mainFormLdId", "renderFormList", "renderAffixLeft", "renderAffixRight", "beforeSubmit", "showSaveBtn", "saveBtnTitle", "affixLayout", "onValueChange", "afterSubmit", "renderFormExtra"],
34
+ var _excluded = ["namespace", "formState", "formMode", "formOperates", "loading", "wrapperRef", "readOnly", "mainFormLdId", "renderFormList", "renderAffixLeft", "renderAffixRight", "beforeSubmit", "showSaveBtn", "saveBtnTitle", "affixLayout", "onValueChange", "afterSubmit", "renderFormExtra", "bpmButtonProps"],
35
35
  _excluded2 = ["dataSets", "doAction", "resources"],
36
36
  _excluded3 = ["id", "header", "title", "readOnly", "extraConfig", "renderTopLeft"],
37
37
  _excluded4 = ["ldId", "initData", "overModel"];
@@ -60,6 +60,8 @@ var LdFormList = function LdFormList(_ref) {
60
60
  renderFormExtra = _ref$renderFormExtra === void 0 ? function () {
61
61
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
62
62
  } : _ref$renderFormExtra,
63
+ _ref$bpmButtonProps = _ref.bpmButtonProps,
64
+ bpmButtonProps = _ref$bpmButtonProps === void 0 ? {} : _ref$bpmButtonProps,
63
65
  props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
64
66
  var _useState = (0, _react.useState)(false),
65
67
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
@@ -117,63 +119,64 @@ var LdFormList = function LdFormList(_ref) {
117
119
 
118
120
  /**zss添加**/
119
121
  var renderAffixRightCustom = function renderAffixRightCustom() {
120
- return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, renderAffixRight && renderAffixRight(), /*#__PURE__*/_react.default.createElement(_bpm.BpmButton, {
122
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, renderAffixRight && renderAffixRight(), /*#__PURE__*/_react.default.createElement(_bpm.BpmButton, (0, _extends2.default)({
121
123
  bizData: bizData,
122
124
  suppressDept: false
123
- }));
125
+ }, bpmButtonProps)));
124
126
  };
125
127
  (0, _ahooks.useAsyncEffect)( /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
126
- var _props$ticketData, _params, response, _yield$readBehaviorCa, code, data, _props$ticketData2, _props$ticketData3, bpmInfoObj, tempObj;
128
+ var _props$ticketData, PRIMARY, _params, response, _yield$readBehaviorCa, code, data, _props$ticketData2, _props$ticketData3, bpmInfoObj, tempObj;
127
129
  return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
128
130
  while (1) switch (_context.prev = _context.next) {
129
131
  case 0:
130
132
  if (!(formMode !== 'add')) {
131
- _context.next = 12;
133
+ _context.next = 13;
132
134
  break;
133
135
  }
136
+ PRIMARY = window.appConfig.constraintKeys.PRIMARY;
134
137
  _params = {
135
- indocno: (_props$ticketData = props.ticketData) === null || _props$ticketData === void 0 ? void 0 : _props$ticketData.indocno,
138
+ indocno: (_props$ticketData = props.ticketData) === null || _props$ticketData === void 0 ? void 0 : _props$ticketData[PRIMARY],
136
139
  moduleCode: rest.moduleCode,
137
140
  datasetCode: mainDataSetKey,
138
141
  mainDataSetKey: mainDataSetKey,
139
142
  behaviorKey: 'readBpmDeploy'
140
143
  }; // 请求是否有工作流服务
141
- _context.next = 4;
144
+ _context.next = 5;
142
145
  return (0, _services.readBehaviorCall)(_params);
143
- case 4:
146
+ case 5:
144
147
  response = _context.sent;
145
148
  if (!(response.code === 1 && response.data)) {
146
- _context.next = 12;
149
+ _context.next = 13;
147
150
  break;
148
151
  }
149
- _context.next = 8;
152
+ _context.next = 9;
150
153
  return (0, _services.readBehaviorCall)((0, _objectSpread2.default)((0, _objectSpread2.default)({}, _params), {}, {
151
154
  behaviorKey: 'readBpm'
152
155
  }));
153
- case 8:
156
+ case 9:
154
157
  _yield$readBehaviorCa = _context.sent;
155
158
  code = _yield$readBehaviorCa.code;
156
159
  data = _yield$readBehaviorCa.data;
157
160
  if (code == 1 && data) {
158
161
  bpmInfoObj = data.bpmInfo;
159
- tempObj = {
162
+ tempObj = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, props.formData[mainFormLdId]), {}, {
160
163
  bizKey: bpmInfoObj.bizKey,
161
164
  sname: bpmInfoObj.name,
162
165
  modelKey: bpmInfoObj.bpmKey,
163
- idocid: (_props$ticketData2 = props.ticketData) === null || _props$ticketData2 === void 0 ? void 0 : _props$ticketData2.indocno,
166
+ idocid: (_props$ticketData2 = props.ticketData) === null || _props$ticketData2 === void 0 ? void 0 : _props$ticketData2[PRIMARY],
164
167
  moduleCode: rest.moduleCode,
165
168
  datasetCode: mainDataSetKey,
166
- indocno: (_props$ticketData3 = props.ticketData) === null || _props$ticketData3 === void 0 ? void 0 : _props$ticketData3.indocno
167
- };
169
+ indocno: (_props$ticketData3 = props.ticketData) === null || _props$ticketData3 === void 0 ? void 0 : _props$ticketData3[PRIMARY]
170
+ });
168
171
  setBizData(tempObj);
169
172
  setIsCustomRenderAffixRight(true);
170
173
  }
171
- case 12:
174
+ case 13:
172
175
  case "end":
173
176
  return _context.stop();
174
177
  }
175
178
  }, _callee);
176
- })), []);
179
+ })), [props.formData]);
177
180
  var handleBatchSubmit = function handleBatchSubmit(values, action) {
178
181
  var _ref7 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
179
182
  formCode = _ref7.formCode,
@@ -199,6 +202,7 @@ var LdFormList = function LdFormList(_ref) {
199
202
  afterSubmit(success, mainKey, res);
200
203
  } else {
201
204
  var _formListRef$current;
205
+ formListRef.current.setFormMode('info');
202
206
  props.parentModelName && ((_formListRef$current = formListRef.current) === null || _formListRef$current === void 0 ? void 0 : _formListRef$current.doParentsQuery());
203
207
  var mainFormData = res.detail[res.list[0]];
204
208
  formListRef.current.onQuery(null, (0, _defineProperty2.default)({}, mainFormLdId, mainFormData), function () {
@@ -20,7 +20,7 @@ var _List = require("@luck-design-biz/base/List");
20
20
  var _ldBuilder = _interopRequireDefault(require("../../helper/ldBuilder"));
21
21
  var _utils = require("../../utils");
22
22
  var _model = _interopRequireDefault(require("./model"));
23
- var _excluded = ["columns", "resources", "actions", "doAction", "afterInit", "namespace", "wrapperRef", "list", "detail", "params", "filters", "loading", "unclosableSet", "onQuery", "doQuery", "pageno", "pagesize", "totalCount", "columnsRewrite", "columnsReset", "batchOperations", "formatDataSource", "resultSet", "actionsColumn", "readFilter", "isFlow", "isTreeGrid"],
23
+ var _excluded = ["columns", "resources", "actions", "doAction", "afterInit", "namespace", "wrapperRef", "list", "detail", "params", "filters", "loading", "unclosableSet", "onQuery", "doQuery", "pageno", "pagesize", "totalCount", "columnsRewrite", "columnsReset", "batchOperations", "formatDataSource", "resultSet", "actionsColumn", "readFilter", "isFlow", "isTreeGrid", "writable"],
24
24
  _excluded2 = ["ldId", "moduleCode", "suppressInit", "overModel", "afterQuery", "isTreeGrid"];
25
25
  var LdGrid = function LdGrid(_ref) {
26
26
  var columns = _ref.columns,
@@ -50,6 +50,7 @@ var LdGrid = function LdGrid(_ref) {
50
50
  readFilter = _ref.readFilter,
51
51
  isFlow = _ref.isFlow,
52
52
  isTreeGrid = _ref.isTreeGrid,
53
+ writable = _ref.writable,
53
54
  props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
54
55
  var gridRef = (0, _react.useRef)(null);
55
56
  var treeConfig = (0, _ahooks.useCreation)(function () {
@@ -107,7 +108,7 @@ var LdGrid = function LdGrid(_ref) {
107
108
  result.push(customColumns[field]);
108
109
  } else if (defaultColumns[field].isShowInGrid)
109
110
  // 数据集中存在的字段和自定义结合展示
110
- result.push((0, _utils.getGridColumn)(defaultColumns[field], customColumns[field] || {}, isTreeGrid));
111
+ result.push((0, _utils.getGridColumn)(defaultColumns[field], customColumns[field] || {}, isTreeGrid, writable));
111
112
  }, []);
112
113
  }, [columns, columnsRewrite, columnsReset]);
113
114
  var _actionsColumn = (0, _ahooks.useCreation)(function () {
@@ -98,7 +98,7 @@ var LdTree = function LdTree(_ref) {
98
98
  defaultExpandedKeys: defaultExpanded
99
99
  });
100
100
  }
101
- var treeData = dataToTreeFormat ? dataToTreeFormat(data) : (0, _utils.dataToTree)(data, null, rowKey, window.appConfig.constraintKeys.PARENT);
101
+ var treeData = dataToTreeFormat ? dataToTreeFormat(data) : (0, _utils.dataToTree)(data, null, window.appConfig.constraintKeys.PRIMARY, window.appConfig.constraintKeys.PARENT);
102
102
  setDataSource(treeData);
103
103
  afterInit && afterInit(treeData);
104
104
  }
@@ -166,7 +166,7 @@ var onBatchSubmitAction = function onBatchSubmitAction(_ref3, callback) {
166
166
  } else {
167
167
  result[formInfo.dataSetKey] = (0, _lodash.transform)(value, function (_result, _value, _key) {
168
168
  _result[_key] = _value.map(function (_val) {
169
- return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, (0, _utils2.dataFormat)(gridColumns, _val)), {}, (0, _defineProperty2.default)({}, window.appConfig.constraintKeys.PRIMARY, _key === 'addList' ? null : item[window.appConfig.constraintKeys.PRIMARY]));
169
+ return (0, _objectSpread4.default)((0, _objectSpread4.default)({}, (0, _utils2.dataFormat)(gridColumns, _val)), {}, (0, _defineProperty2.default)({}, window.appConfig.constraintKeys.PRIMARY, _key === 'addList' ? null : _val[window.appConfig.constraintKeys.PRIMARY]));
170
170
  });
171
171
  }, {});
172
172
  }
@@ -97,6 +97,7 @@ function translator() {
97
97
  label: '不满足验证要求'
98
98
  })
99
99
  }];
100
+ if (allConfig['desensitized']) _props.desensitized = allConfig['desensitized']; // 脱敏
100
101
  return _props;
101
102
  }
102
103
 
@@ -20,7 +20,7 @@ var _luckDesign = require("luck-design");
20
20
  var _ApiConfig = _interopRequireDefault(require("@/services/ApiConfig"));
21
21
  var _FormList = require("@luck-design-biz/base/FormList");
22
22
  var _utils = require("@luck-design-biz/base/utils");
23
- var _excluded = ["formId", "formRef", "showNote", "operates", "loading", "uploadUrl", "forbiddenTypes", "beforeUpload", "formMode", "onUploadChange", "zipName", "resetActions", "getUrl"];
23
+ var _excluded = ["formId", "formRef", "showNote", "operates", "loading", "uploadUrl", "forbiddenTypes", "beforeUpload", "formMode", "onUploadChange", "zipName", "resetActions", "getUrl", "wrapperRef"];
24
24
  var columns = [{
25
25
  field: 'name',
26
26
  title: '附件名称'
@@ -72,6 +72,7 @@ var UploadGridForm = function UploadGridForm(_ref) {
72
72
  zipName = _ref$zipName === void 0 ? 'download.zip' : _ref$zipName,
73
73
  resetActions = _ref.resetActions,
74
74
  getUrl = _ref.getUrl,
75
+ wrapperRef = _ref.wrapperRef,
75
76
  rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
76
77
  var _useState = (0, _react.useState)(false),
77
78
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
@@ -81,7 +82,7 @@ var UploadGridForm = function UploadGridForm(_ref) {
81
82
  _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
82
83
  uploadLoading = _useState4[0],
83
84
  setUploadLoading = _useState4[1];
84
- var gridRef = (0, _react.useRef)(null);
85
+ var gridRef = wrapperRef || (0, _react.useRef)(null);
85
86
  var _getDvaApp$_store$get = (_getDvaApp = (0, _umi.getDvaApp)()) === null || _getDvaApp === void 0 ? void 0 : _getDvaApp._store.getState().user,
86
87
  currentUser = _getDvaApp$_store$get.currentUser;
87
88
 
@@ -94,7 +95,6 @@ var UploadGridForm = function UploadGridForm(_ref) {
94
95
  var filenames = selectedRows.map(function (item) {
95
96
  return item.fileId || item.uid;
96
97
  });
97
- console.log('handleDownload1', filenames, selectedRows);
98
98
  downloadFile(filenames, 'downloadOne');
99
99
  cb && cb(true);
100
100
  } else {
@@ -102,7 +102,6 @@ var UploadGridForm = function UploadGridForm(_ref) {
102
102
  var files = selectedRows.map(function (item) {
103
103
  return item.fileId || item.uid;
104
104
  }).join(',');
105
- console.log('handleDownload2', files, selectedRows);
106
105
  (0, _utils.patchDownloadZip)(getUrl('downloadZip'), files, {
107
106
  zipName: zipName
108
107
  }).then(function () {
@@ -380,6 +379,11 @@ var UploadGridForm = function UploadGridForm(_ref) {
380
379
  }
381
380
  }))));
382
381
  };
383
- UploadGridForm.displayName = 'GridForm';
384
- var _default = UploadGridForm;
385
- exports.default = _default;
382
+ var Com = /*#__PURE__*/(0, _react.forwardRef)(function (props, ref) {
383
+ return /*#__PURE__*/_react.default.createElement(UploadGridForm, (0, _extends2.default)({
384
+ wrapperRef: ref
385
+ }, props));
386
+ });
387
+ var _default = Com;
388
+ exports.default = _default;
389
+ Com.displayName = 'GridForm';
@@ -22,10 +22,11 @@ function buildComponent(props) {
22
22
  note = _props$note === void 0 ? '' : _props$note,
23
23
  rest = (0, _objectWithoutProperties2.default)(props, _excluded);
24
24
  var formId = "annex_".concat(_formId);
25
- var getUrl = function getUrl(behaviorKey, _note) {
26
- var formData = rest.formData,
27
- mainFormLdId = rest.mainFormLdId,
28
- ticketData = rest.ticketData;
25
+ var getUrl = function getUrl(behaviorKey, _note, docUid) {
26
+ var ticketData = rest.ticketData,
27
+ formData = rest.formData,
28
+ mainFormLdId = rest.mainFormLdId;
29
+ var PRIMARY_KEY = window.appConfig.constraintKeys.PRIMARY;
29
30
  var params = (0, _lodash.omitBy)({
30
31
  moduleCode: moduleCode,
31
32
  bucket: bucket,
@@ -33,7 +34,7 @@ function buildComponent(props) {
33
34
  tag: formId,
34
35
  note: _note || note,
35
36
  active: !(behaviorKey === 'loadFileGrid' || rest.formMode === 'add' || rest.formMode === 'update'),
36
- docUid: formData && formData[mainFormLdId] && formData[mainFormLdId][window.appConfig.constraintKeys.PRIMARY] || ticketData && ticketData[window.appConfig.constraintKeys.PRIMARY]
37
+ docUid: docUid || formData[mainFormLdId] && formData[mainFormLdId][PRIMARY_KEY] || ticketData && ticketData[PRIMARY_KEY]
37
38
  }, _lodash.isNil);
38
39
  return "".concat(window.appConfig.OSS_HOST_V3, "?").concat((0, _querystring.stringify)(params));
39
40
  };
@@ -43,8 +44,14 @@ function buildComponent(props) {
43
44
  rowKey: "uid"
44
45
  }, rest, {
45
46
  onQuery: {
46
- api: function api() {
47
- return (0, _utils.request)(getUrl('loadFileGrid'));
47
+ api: function api(_ref) {
48
+ var docUid = _ref.docUid;
49
+ return (0, _utils.request)(getUrl('loadFileGrid', null, docUid));
50
+ },
51
+ get: function get(formData) {
52
+ return {
53
+ docUid: formData && formData[rest.mainFormLdId] && formData[rest.mainFormLdId][window.appConfig.constraintKeys.PRIMARY]
54
+ };
48
55
  },
49
56
  format: function format(data) {
50
57
  return data.map(function (i) {
package/lib/utils/grid.js CHANGED
@@ -1,11 +1,13 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.getColumnRender = getColumnRender;
8
9
  exports.getGridColumn = void 0;
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
11
  var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
10
12
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
13
  var _react = _interopRequireDefault(require("react"));
@@ -13,10 +15,11 @@ var _umi = require("umi");
13
15
  var _lodash = require("lodash");
14
16
  var _antd = require("antd");
15
17
  var _moment = _interopRequireDefault(require("moment"));
16
- var _base = require("@luck-design-biz/base");
18
+ var _GridCell = _interopRequireDefault(require("../upload/GridCell"));
17
19
  var _utils = require("@luck-design-biz/base/utils");
18
20
  var _ApiConfig = _interopRequireDefault(require("@/services/ApiConfig"));
19
21
  var _form = require("../helper/form");
22
+ var formItemUtils = _interopRequireWildcard(require("../helper/FromItems"));
20
23
  var _excluded = ["comName", "property"],
21
24
  _excluded2 = ["name"],
22
25
  _excluded3 = ["filter", "filterParams"];
@@ -89,7 +92,7 @@ function getColumnRender(name, type) {
89
92
  previewUrl: "".concat(_ApiConfig.default.LUCKDA_HOST).concat(file.previewUrl)
90
93
  };
91
94
  });
92
- return /*#__PURE__*/_react.default.createElement(_base.UploadGridCell, {
95
+ return /*#__PURE__*/_react.default.createElement(_GridCell.default, {
93
96
  fileList: fileList
94
97
  });
95
98
  };
@@ -105,6 +108,7 @@ var getGridColumn = function getGridColumn() {
105
108
  props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
106
109
  var customProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
107
110
  var isTreeGrid = arguments.length > 2 ? arguments[2] : undefined;
111
+ var writable = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
108
112
  var _props$isVirtual = props.isVirtual,
109
113
  isVirtual = _props$isVirtual === void 0 ? false : _props$isVirtual;
110
114
  var _translator = (0, _form.translator)(props),
@@ -226,6 +230,64 @@ var getGridColumn = function getGridColumn() {
226
230
  data.filter = 'text';
227
231
  }
228
232
  } else data.filter = false;
233
+ if (writable && props.isShowInForm && !props.isReadOnly) {
234
+ data.editable = props.isNotNull ? {
235
+ required: true
236
+ } : true;
237
+ if (_props.cellWriter) data.cellWriter = _props.cellWriter;else {
238
+ var formItemCom = (0, _lodash.capitalize)(comName || _form.defaultComName[property]) === 'Textarea' ? 'String' : (0, _lodash.capitalize)(comName || _form.defaultComName[property]);
239
+ var getFormItemUtils = formItemUtils["get".concat(formItemCom, "Item")];
240
+ var formItemProps = {};
241
+ switch (formItemCom) {
242
+ case 'date':
243
+ formItemProps = {
244
+ dataFormat: function dataFormat(value) {
245
+ var _ref2;
246
+ return _ref2 = {}, (0, _defineProperty2.default)(_ref2, name, value ? (0, _moment.default)(value).valueOf() : undefined), (0, _defineProperty2.default)(_ref2, "".concat(name, "_virtual"), value ? (0, _moment.default)(value).format('YYYY-MM-DD HH:mm:ss') : undefined), _ref2;
247
+ },
248
+ inputFormat: function inputFormat(value, record, params) {
249
+ return (0, _moment.default)(record["".concat(name, "_virtual")], 'YYYY-MM-DD HH:mm:ss');
250
+ }
251
+ };
252
+ break;
253
+ case 'user':
254
+ case 'select':
255
+ case 'group':
256
+ if (translateProps.multiple) {
257
+ formItemProps = {
258
+ dataFormat: function dataFormat(value) {
259
+ var _ref3;
260
+ return _ref3 = {}, (0, _defineProperty2.default)(_ref3, name, value.map(function (v) {
261
+ return v.value || v.key;
262
+ }).join(',')), (0, _defineProperty2.default)(_ref3, "".concat(name, "_virtual"), value.map(function (v) {
263
+ return v.label;
264
+ }).join(',')), _ref3;
265
+ },
266
+ inputFormat: function inputFormat(value, record, params) {
267
+ return (0, _defineProperty2.default)({}, name, (0, _form.splitStrToObj)(value, record["".concat(name, "_virtual")]));
268
+ }
269
+ };
270
+ } else {
271
+ formItemProps = {
272
+ dataFormat: function dataFormat(value) {
273
+ var _ref5;
274
+ return _ref5 = {}, (0, _defineProperty2.default)(_ref5, name, value ? value.value || value.key : undefined), (0, _defineProperty2.default)(_ref5, "".concat(name, "_virtual"), value ? value.label : undefined), _ref5;
275
+ },
276
+ inputFormat: function inputFormat(value, record, params) {
277
+ return (0, _defineProperty2.default)({}, name, !(0, _lodash.isNil)(value) ? {
278
+ key: value,
279
+ value: value,
280
+ label: record["".concat(name, "_virtual")]
281
+ } : undefined);
282
+ }
283
+ };
284
+ }
285
+ break;
286
+ }
287
+ ;
288
+ data.cellWriter = getFormItemUtils((0, _objectSpread2.default)((0, _objectSpread2.default)({}, _props), formItemProps));
289
+ }
290
+ }
229
291
  return data;
230
292
  };
231
293
  exports.getGridColumn = getGridColumn;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@luck-design-biz/luckda",
3
- "version": "0.0.16",
3
+ "version": "0.0.17-1",
4
4
  "scripts": {
5
5
  "start": "dumi dev",
6
6
  "docs:build": "dumi build",