@bchr/bchr-front-lib 0.3.87 → 0.3.91

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.
@@ -10,6 +10,8 @@ var UI_RENDER_TYPE = {
10
10
  INPUT_NUMBER: "inputNumber",
11
11
  TEXT_AREA: "textArea",
12
12
  DATE: "date",
13
+ DATE_YEAR: "dateYear",
14
+ DATE_MONTH: "dateMonth",
13
15
  DATE_TIME: "dateTime",
14
16
  SELECT: "select",
15
17
  TREE_SELECT: "treeSelect",
@@ -128,12 +128,41 @@ var FormForBrowse = /*#__PURE__*/function (_React$Component) {
128
128
  }));
129
129
  });
130
130
 
131
- _defineProperty(_assertThisInitialized(_this), "buildFormItems", function () {
131
+ _defineProperty(_assertThisInitialized(_this), "buildFormItems", function (editFormulasState) {
132
132
  var _this$props = _this.props,
133
+ initialValues = _this$props.initialValues,
133
134
  info_set_fields = _this$props.info_set_fields,
134
135
  ext_form_items = _this$props.ext_form_items;
135
136
 
136
137
  if (info_set_fields && info_set_fields.length > 0) {
138
+ info_set_fields.forEach(function (formItem) {
139
+ formItem.initialValue = null;
140
+
141
+ _this.preParseFormItemExtConfig(formItem);
142
+
143
+ if (formItem.editFormulaConfigs) {
144
+ for (var i = 0, len = formItem.editFormulaConfigs.length; i < len; i++) {
145
+ var editFormulaConfig = formItem.editFormulaConfigs[i];
146
+ var initialValue = formItem.ui_render_type === 'switch' ? (initialValues[formItem.code] || '').toLowerCase() !== 'true' : initialValues[formItem.code];
147
+ var formulaValueOf = formItem.ui_render_type === 'switch' ? (editFormulaConfig.onValueOf || '').toLowerCase() !== 'true' : editFormulaConfig.onValueOf;
148
+
149
+ if (formulaValueOf === initialValue) {
150
+ var currentOtherFormItemResponses = editFormulaConfig.otherFormItemResponses;
151
+ currentOtherFormItemResponses.forEach(function (item) {
152
+ info_set_fields.forEach(function (formItemInner) {
153
+ if (formItemInner.code === item.formItemCode) {
154
+ if (item.formItemValue === 'disabled') {
155
+ formItemInner.b_disabled = true;
156
+ } else if (item.formItemValue === 'enabled') {
157
+ formItemInner.b_disabled = false;
158
+ }
159
+ }
160
+ });
161
+ });
162
+ }
163
+ }
164
+ }
165
+ });
137
166
  var groupNames = info_set_fields.map(function (item) {
138
167
  return item.belong_form_group;
139
168
  }).filter(function (item, index, arr) {
@@ -192,6 +221,86 @@ var FormForBrowse = /*#__PURE__*/function (_React$Component) {
192
221
  }
193
222
  });
194
223
 
224
+ _defineProperty(_assertThisInitialized(_this), "preParseFormItemExtConfig", function (formItem) {
225
+ var formulas = formItem['edit_formula'];
226
+
227
+ if (formulas && formulas.length > 5) {
228
+ var rawFormulaTextArray = formulas.split(';');
229
+ var pureFormulaTextItems = [];
230
+
231
+ for (var i = 0, len = rawFormulaTextArray.length; i < len; i++) {
232
+ var rawFormulaTextItem = rawFormulaTextArray[i];
233
+
234
+ if (rawFormulaTextItem && rawFormulaTextItem.trim().length > 0) {
235
+ pureFormulaTextItems.push(rawFormulaTextItem.trim());
236
+ }
237
+ }
238
+
239
+ if (pureFormulaTextItems.length === 0) {
240
+ return;
241
+ }
242
+
243
+ var editFormulaConfigs = [];
244
+
245
+ for (var _i = 0, _len = pureFormulaTextItems.length; _i < _len; _i++) {
246
+ var formulaTextItem = pureFormulaTextItems[_i];
247
+ var formulaChildTextItems = formulaTextItem.split("=>");
248
+
249
+ if (formulaChildTextItems.length !== 2) {
250
+ continue;
251
+ }
252
+
253
+ var formItemValueText = formulaChildTextItems[0].trim();
254
+ var onChangeEventText = formulaChildTextItems[1].trim();
255
+
256
+ if (formItemValueText.length === 0 || onChangeEventText.length === 0) {
257
+ continue;
258
+ }
259
+
260
+ if (formItemValueText.startsWith("(") && formItemValueText.endsWith(")")) {
261
+ formItemValueText = formItemValueText.substr(1, formItemValueText.length - 2);
262
+ }
263
+
264
+ var editFormulaConfig = {
265
+ onValueOf: formItemValueText,
266
+ otherFormItemResponses: []
267
+ };
268
+
269
+ if (onChangeEventText.startsWith("(") && onChangeEventText.endsWith(")")) {
270
+ onChangeEventText = onChangeEventText.substr(1, onChangeEventText.length - 2);
271
+ }
272
+
273
+ var otherFormItemResponseStates = onChangeEventText.split(",");
274
+
275
+ for (var m = 0, count = otherFormItemResponseStates.length; m < count; m++) {
276
+ var otherFormItemResponseState = otherFormItemResponseStates[m];
277
+ var otherFormItemResponseOptions = otherFormItemResponseState.split(":");
278
+
279
+ if (otherFormItemResponseOptions.length === 2) {
280
+ var otherFormItemCode = otherFormItemResponseOptions[0].trim();
281
+ var otherFormItemValue = otherFormItemResponseOptions[1].trim();
282
+
283
+ if (otherFormItemCode.length && otherFormItemValue.length > 0) {
284
+ var otherFormItemResponse = {
285
+ formItemCode: otherFormItemCode,
286
+ formItemValue: otherFormItemValue
287
+ };
288
+ editFormulaConfig.otherFormItemResponses.push(otherFormItemResponse);
289
+ }
290
+ }
291
+ }
292
+
293
+ if (editFormulaConfig.onValueOf && editFormulaConfig.otherFormItemResponses.length > 0) {
294
+ editFormulaConfigs.push(editFormulaConfig);
295
+ }
296
+ }
297
+
298
+ if (editFormulaConfigs.length > 0) {
299
+ formItem.editFormulaConfigs = editFormulaConfigs;
300
+ }
301
+ }
302
+ });
303
+
195
304
  _defineProperty(_assertThisInitialized(_this), "generatorFormItem", function (dataItem, is_ext_field) {
196
305
  if (is_ext_field) {
197
306
  return /*#__PURE__*/_react["default"].createElement(_antd.Col, {
@@ -204,7 +313,7 @@ var FormForBrowse = /*#__PURE__*/function (_React$Component) {
204
313
  label: dataItem.label,
205
314
  name: dataItem.name,
206
315
  rules: [{
207
- required: dataItem.required
316
+ required: !dataItem.b_disabled && dataItem.required
208
317
  }]
209
318
  }, dataItem.render));
210
319
  }
@@ -222,6 +331,7 @@ var FormForBrowse = /*#__PURE__*/function (_React$Component) {
222
331
  code = dataItem.code,
223
332
  display_code = dataItem.display_code,
224
333
  b_multiple = dataItem.b_multiple,
334
+ b_disabled = dataItem.b_disabled,
225
335
  upload_file_biz_object_type = dataItem.upload_file_biz_object_type;
226
336
  var value;
227
337
  display_code = display_code || code;
@@ -244,6 +354,14 @@ var FormForBrowse = /*#__PURE__*/function (_React$Component) {
244
354
  value = initialValues[display_code] ? (0, _moment["default"])(initialValues[display_code]).format("YYYY-MM-DD") : "";
245
355
  break;
246
356
 
357
+ case _consts.UI_RENDER_TYPE.DATE_YEAR:
358
+ value = initialValues[display_code] ? (0, _moment["default"])(initialValues[display_code], 'YYYY').format("YYYY") : "";
359
+ break;
360
+
361
+ case _consts.UI_RENDER_TYPE.DATE_MONTH:
362
+ value = initialValues[display_code] ? (0, _moment["default"])(initialValues[display_code], 'YYYYMM').format("YYYY-MM") : "";
363
+ break;
364
+
247
365
  case _consts.UI_RENDER_TYPE.DATE_TIME:
248
366
  value = initialValues[display_code] ? (0, _moment["default"])(initialValues[display_code]).format("YYYY-MM-DD hh:mm:ss") : "";
249
367
  break;
@@ -327,7 +445,7 @@ var FormForBrowse = /*#__PURE__*/function (_React$Component) {
327
445
  }, " ", /*#__PURE__*/_react["default"].createElement(_icons.QuestionCircleOutlined, null), " ")),
328
446
  name: dataItem.code,
329
447
  rules: [{
330
- required: dataItem.b_required
448
+ required: !dataItem.b_disabled && dataItem.b_required
331
449
  }]
332
450
  }, components));
333
451
  });
@@ -163,7 +163,7 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
163
163
  } else if (item.formItemValue === 'enabled') {
164
164
  formItem.b_disabled = false;
165
165
  } else {
166
- formItem.initialValue = item.formItemValue || '';
166
+ formItem.initialValue = item.formItemValue || data[formItem.display_code];
167
167
  }
168
168
  }
169
169
  });
@@ -177,10 +177,6 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
177
177
  var formulaValueOf = formItem.ui_render_type === 'switch' ? (editFormulaConfig.onValueOf || '').toLowerCase() !== 'true' : editFormulaConfig.onValueOf;
178
178
 
179
179
  if (formulaValueOf === initialValue) {
180
- editFormulasState.push({
181
- editFormulasStateCode: formItem.code,
182
- editFormulaItem: editFormulaConfig
183
- });
184
180
  var currentOtherFormItemResponses = editFormulaConfig.otherFormItemResponses;
185
181
  currentOtherFormItemResponses.forEach(function (item) {
186
182
  info_set_fields.forEach(function (formItemInner) {
@@ -190,7 +186,7 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
190
186
  } else if (item.formItemValue === 'enabled') {
191
187
  formItemInner.b_disabled = false;
192
188
  } else {
193
- formItemInner.initialValue = item.formItemValue || '';
189
+ formItemInner.initialValue = item.formItemValue || data[formItem.display_code];
194
190
  }
195
191
  }
196
192
  });
@@ -378,14 +374,14 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
378
374
  label: dataItem.label,
379
375
  name: dataItem.name,
380
376
  rules: [{
381
- required: dataItem.required
377
+ required: !dataItem.b_disabled && dataItem.required
382
378
  }]
383
379
  }, dataItem.render));
384
380
  }
385
381
 
386
382
  display_code = display_code || code;
387
383
  var initialValue = dataItem.initialValue || data[code];
388
- var displayValue = dataItem.initialValue || data[display_code];
384
+ var displayValue = data[display_code];
389
385
  var component, valuePropName;
390
386
 
391
387
  if (custom_form_items && custom_form_items[code + "_form_item"] && typeof custom_form_items[code + "_form_item"] === "function") {
@@ -464,6 +460,36 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
464
460
  }, ext_props));
465
461
  break;
466
462
 
463
+ case _consts.UI_RENDER_TYPE.DATE_YEAR:
464
+ initialValue = initialValue ? (0, _moment["default"])(initialValue) : "";
465
+ displayValue = displayValue ? (0, _moment["default"])(displayValue, 'YYYY').format("YYYY") : "";
466
+ component = (b_disabled !== undefined ? b_disabled : b_readonly) ? /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("span", null, displayValue)) : /*#__PURE__*/_react["default"].createElement(_antd.DatePicker, _extends({
467
+ key: form_id + "_" + code,
468
+ getPopupContainer: function getPopupContainer() {
469
+ return document.getElementById("ant_form_item_".concat(code));
470
+ },
471
+ placeholder: "请选择" + name,
472
+ picker: "year",
473
+ onChange: _this2.datePickerOnChange.bind(_assertThisInitialized(_this2), dataItem, onChange),
474
+ disabledDate: _this2.disabledDate.bind(_assertThisInitialized(_this2), dataItem)
475
+ }, ext_props));
476
+ break;
477
+
478
+ case _consts.UI_RENDER_TYPE.DATE_MONTH:
479
+ initialValue = initialValue ? (0, _moment["default"])(initialValue) : "";
480
+ displayValue = displayValue ? (0, _moment["default"])(displayValue, 'YYYYMM').format("YYYY-MM") : "";
481
+ component = (b_disabled !== undefined ? b_disabled : b_readonly) ? /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("span", null, displayValue)) : /*#__PURE__*/_react["default"].createElement(_antd.DatePicker, _extends({
482
+ key: form_id + "_" + code,
483
+ getPopupContainer: function getPopupContainer() {
484
+ return document.getElementById("ant_form_item_".concat(code));
485
+ },
486
+ placeholder: "请选择" + name,
487
+ picker: "month",
488
+ onChange: _this2.datePickerOnChange.bind(_assertThisInitialized(_this2), dataItem, onChange),
489
+ disabledDate: _this2.disabledDate.bind(_assertThisInitialized(_this2), dataItem)
490
+ }, ext_props));
491
+ break;
492
+
467
493
  case _consts.UI_RENDER_TYPE.DATE_TIME:
468
494
  initialValue = initialValue ? (0, _moment["default"])(initialValue) : "";
469
495
  displayValue = displayValue ? (0, _moment["default"])(displayValue).format("YYYY-MM-DD hh:mm:ss") : "";
@@ -650,10 +676,10 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
650
676
  name: code,
651
677
  initialValue: initialValue,
652
678
  rules: [{
653
- required: b_required,
679
+ required: !dataItem.b_disabled && b_required,
654
680
  message: "请填写" + name,
655
681
  whitespace: true,
656
- validator: _this2.validator.bind(_assertThisInitialized(_this2), b_required, ui_render_type)
682
+ validator: _this2.validator.bind(_assertThisInitialized(_this2), !dataItem.b_disabled && b_required, ui_render_type)
657
683
  }, {
658
684
  required: false,
659
685
  message: name + "格式不正确",
@@ -661,7 +687,7 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
661
687
  validator: _this2.formatValidator.bind(_assertThisInitialized(_this2)),
662
688
  pattern: regexp_pattern
663
689
  }],
664
- hasFeedback: b_required,
690
+ hasFeedback: !dataItem.b_disabled && b_required,
665
691
  valuePropName: valuePropName ? valuePropName : "value"
666
692
  }, component));
667
693
  });
@@ -717,7 +743,35 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
717
743
 
718
744
  _createClass(FormForModify, [{
719
745
  key: "componentDidMount",
720
- value: function componentDidMount() {}
746
+ value: function componentDidMount() {
747
+ var _this3 = this;
748
+
749
+ var _this$props = this.props,
750
+ data = _this$props.data,
751
+ info_set_fields = _this$props.info_set_fields;
752
+ var editFormulasState = this.state.editFormulasState;
753
+ info_set_fields.forEach(function (formItem) {
754
+ _this3.preParseFormItemExtConfig(formItem);
755
+
756
+ if (formItem.editFormulaConfigs) {
757
+ for (var i = 0, len = formItem.editFormulaConfigs.length; i < len; i++) {
758
+ var editFormulaConfig = formItem.editFormulaConfigs[i];
759
+ var initialValue = formItem.ui_render_type === 'switch' ? (data[formItem.code] || '').toLowerCase() !== 'true' : data[formItem.code];
760
+ var formulaValueOf = formItem.ui_render_type === 'switch' ? (editFormulaConfig.onValueOf || '').toLowerCase() !== 'true' : editFormulaConfig.onValueOf;
761
+
762
+ if (formulaValueOf === initialValue) {
763
+ editFormulasState.push({
764
+ editFormulasStateCode: formItem.code,
765
+ editFormulaItem: editFormulaConfig
766
+ });
767
+ }
768
+ }
769
+ }
770
+ });
771
+ this.setState({
772
+ editFormulasState: editFormulasState
773
+ });
774
+ }
721
775
  }, {
722
776
  key: "validator",
723
777
  value: function validator(b_required, ui_render_type, rule, value) {
@@ -896,6 +950,7 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
896
950
  }
897
951
 
898
952
  if (config.editFormulaConfigs && config.editFormulaConfigs.length) {
953
+ var data = this.props.data;
899
954
  var editFormulasState = this.state.editFormulasState;
900
955
  var setFieldsValue = this.ref.current.setFieldsValue;
901
956
 
@@ -908,7 +963,11 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
908
963
  if (value) {
909
964
  editFormulaItem.otherFormItemResponses.forEach(function (item) {
910
965
  if (item.formItemValue === 'disabled') {
911
- setFieldsValue(_defineProperty({}, item.formItemCode, ''));
966
+ if (item.formItemCode.indexOf('date') !== -1) {
967
+ setFieldsValue(_defineProperty({}, item.formItemCode, (0, _moment["default"])(data[item.formItemCode]) || ''));
968
+ } else {
969
+ setFieldsValue(_defineProperty({}, item.formItemCode, data[item.formItemCode] || ''));
970
+ }
912
971
  }
913
972
  });
914
973
  }
@@ -984,7 +1043,7 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
984
1043
  }, {
985
1044
  key: "buildTreeNode",
986
1045
  value: function buildTreeNode(defNodes) {
987
- var _this3 = this;
1046
+ var _this4 = this;
988
1047
 
989
1048
  if (!defNodes || defNodes.length === 0) {
990
1049
  return null;
@@ -1005,7 +1064,7 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
1005
1064
  ext_attr_value: ext_attr_value,
1006
1065
  selectable: item.selectable,
1007
1066
  prop: ext_attr_value
1008
- }, _this3.buildTreeNode(item.children));
1067
+ }, _this4.buildTreeNode(item.children));
1009
1068
  });
1010
1069
  }
1011
1070
  }, {
@@ -1062,9 +1121,9 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
1062
1121
  }, {
1063
1122
  key: "switchOnChange",
1064
1123
  value: function switchOnChange(config, callback, checked, event) {
1065
- var code = config.code;
1066
-
1067
1124
  if (config.editFormulaConfigs && config.editFormulaConfigs.length) {
1125
+ var data = this.props.data;
1126
+ var code = config.code;
1068
1127
  var editFormulasState = this.state.editFormulasState;
1069
1128
  var setFieldsValue = this.ref.current.setFieldsValue;
1070
1129
  var editFormulaItem = config.editFormulaConfigs.filter(function (editFormulaItem) {
@@ -1074,7 +1133,11 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
1074
1133
  if (editFormulaItem) {
1075
1134
  if (!checked) {
1076
1135
  editFormulaItem.otherFormItemResponses.forEach(function (item) {
1077
- setFieldsValue(_defineProperty({}, item.formItemCode, ''));
1136
+ if (item.formItemCode.indexOf('date') !== -1) {
1137
+ setFieldsValue(_defineProperty({}, item.formItemCode, (0, _moment["default"])(data[item.formItemCode]) || ''));
1138
+ } else {
1139
+ setFieldsValue(_defineProperty({}, item.formItemCode, data[item.formItemCode] || ''));
1140
+ }
1078
1141
  });
1079
1142
  }
1080
1143
 
@@ -1129,14 +1192,14 @@ var FormForModify = /*#__PURE__*/function (_React$Component) {
1129
1192
  key: "deleteFile",
1130
1193
  value: function () {
1131
1194
  var _deleteFile = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(dataItem) {
1132
- var file_pk, _this$props, file_service_path, appconfig, _this;
1195
+ var file_pk, _this$props2, file_service_path, appconfig, _this;
1133
1196
 
1134
1197
  return regeneratorRuntime.wrap(function _callee$(_context) {
1135
1198
  while (1) {
1136
1199
  switch (_context.prev = _context.next) {
1137
1200
  case 0:
1138
1201
  file_pk = this.props.data[dataItem.code];
1139
- _this$props = this.props, file_service_path = _this$props.file_service_path, appconfig = _this$props.appconfig;
1202
+ _this$props2 = this.props, file_service_path = _this$props2.file_service_path, appconfig = _this$props2.appconfig;
1140
1203
  _context.prev = 2;
1141
1204
  _this = this;
1142
1205
  _context.next = 6;
@@ -277,6 +277,14 @@ var GridForBrowse = /*#__PURE__*/function (_React$Component) {
277
277
  value = rowData[display_code] ? (0, _moment["default"])(rowData[display_code]).format("YYYY-MM-DD") : "";
278
278
  break;
279
279
 
280
+ case _consts.UI_RENDER_TYPE.DATE_YEAR:
281
+ value = rowData[display_code] ? (0, _moment["default"])(rowData[display_code]).format("YYYY") : "";
282
+ break;
283
+
284
+ case _consts.UI_RENDER_TYPE.DATE_MONTH:
285
+ value = rowData[display_code] ? (0, _moment["default"])(rowData[display_code]).format("YYYY-MM") : "";
286
+ break;
287
+
280
288
  case _consts.UI_RENDER_TYPE.DATE_TIME:
281
289
  value = rowData[display_code] ? (0, _moment["default"])(rowData[display_code]).format("YYYY-MM-DD hh:mm:ss") : "";
282
290
  break;
@@ -228,6 +228,26 @@ var GridForModify = /*#__PURE__*/function (_React$Component) {
228
228
  });
229
229
  break;
230
230
 
231
+ case _consts.UI_RENDER_TYPE.DATE_YEAR:
232
+ component = /*#__PURE__*/_react["default"].createElement(_antd.DatePicker, {
233
+ format: _consts.DateFormat,
234
+ picker: "year",
235
+ placeholder: "请填写" + name,
236
+ onChange: this.datePickerOnChange.bind(this, dataItem, fieldConfig, onChange),
237
+ defaultValue: dataItem[code] && (0, _moment["default"])(dataItem[code])
238
+ });
239
+ break;
240
+
241
+ case _consts.UI_RENDER_TYPE.DATE_MONTH:
242
+ component = /*#__PURE__*/_react["default"].createElement(_antd.DatePicker, {
243
+ format: _consts.DateFormat,
244
+ picker: "month",
245
+ placeholder: "请填写" + name,
246
+ onChange: this.datePickerOnChange.bind(this, dataItem, fieldConfig, onChange),
247
+ defaultValue: dataItem[code] && (0, _moment["default"])(dataItem[code])
248
+ });
249
+ break;
250
+
231
251
  case _consts.UI_RENDER_TYPE.DATE_TIME:
232
252
  component = /*#__PURE__*/_react["default"].createElement(_antd.DatePicker, {
233
253
  showTime: true,