fmui-base 2.2.89 → 2.2.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.
package/README.md CHANGED
@@ -3,6 +3,8 @@
3
3
  ---npm publish
4
4
 
5
5
  ## 更新日志
6
+ - 2.2.91:流程办理按钮名称要与办理弹窗标题同步
7
+ - 2.2.90:表单时间字段偶发保存成时间戳
6
8
  - 2.2.89:表单子表支持一行多列显示,并支持扩展
7
9
  - 2.2.88:表单关联字段重构
8
10
  - 2.2.87:选人组件添加隐藏页签,增加业务建模表单组件
package/lib/form/form.js CHANGED
@@ -7,6 +7,8 @@ exports.default = undefined;
7
7
 
8
8
  var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
9
9
 
10
+ var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
11
+
10
12
  var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
11
13
 
12
14
  var _react = require('react');
@@ -1101,12 +1103,14 @@ var PageHome = function (_React$Component) {
1101
1103
  item.value = dateStr;
1102
1104
  }
1103
1105
  });
1104
- } else if (value && value.length >= 10) {
1106
+ } else if (typeof value === 'number' && !isNaN(value)) {
1107
+ // 接口偶发返回时间戳:保留数字供组件展示,提交值在下方 sync 时格式化
1108
+ } else if (value && typeof value === 'string' && value.length >= 10) {
1105
1109
  value = value.substring(0, 19);
1106
1110
  value = new Date(value.replace(/-/g, "/")).getTime();
1107
- } else if (value && value.length == 4 && dateFormat == "Y") {
1111
+ } else if (value && typeof value === 'string' && value.length == 4 && dateFormat == "Y") {
1108
1112
  value = new Date(value).getTime();
1109
- } else if (value && value.length == 7 && dateFormat == "YM") {
1113
+ } else if (value && typeof value === 'string' && value.length == 7 && dateFormat == "YM") {
1110
1114
  value = new Date(value).getTime();
1111
1115
  } else {
1112
1116
  for (var i = 0; i < mainTblData.length; i++) {
@@ -1504,9 +1508,13 @@ var PageHome = function (_React$Component) {
1504
1508
  itemType = itemParam.itemType;
1505
1509
  }
1506
1510
  if (itemType == 'text' || itemType == 'textarea' || itemType == 'datetime') {
1511
+ var syncValue = value;
1512
+ if (itemType == 'datetime') {
1513
+ syncValue = t.getDatetimeSaveValue(value, itemParam.dateFormat, itemParam.dateFormatShow);
1514
+ }
1507
1515
  for (var i = 0; i < data.mainTblData.length; i++) {
1508
1516
  if (itemParam.key == data.mainTblData[i].key) {
1509
- data.mainTblData[i].value = value;
1517
+ data.mainTblData[i].value = syncValue;
1510
1518
  }
1511
1519
  }
1512
1520
  }
@@ -2008,6 +2016,12 @@ var PageHome = function (_React$Component) {
2008
2016
  selectText = selectText.substring(0, selectText.length - 1);
2009
2017
  }
2010
2018
  checkboxValueHas = true;
2019
+ } else if (itemParam.itemType == 'datetime') {
2020
+ itemParam[key] = itemNew[i].value;
2021
+ if (this.props.data) {
2022
+ var saveVal = this.getDatetimeSaveValue(itemNew[i].value, itemParam.dateFormat, itemParam.dateFormatShow);
2023
+ this.editData(itemParam.key, saveVal, this.props.data);
2024
+ }
2011
2025
  } else {
2012
2026
  itemParam[key] = itemNew[i].value;
2013
2027
  }
@@ -2684,6 +2698,45 @@ var PageHome = function (_React$Component) {
2684
2698
  return weekdays[dayIndex];
2685
2699
  }
2686
2700
 
2701
+ // 时间字段提交值:统一格式化为字符串,避免 mainTblData 存入时间戳
2702
+
2703
+ }, {
2704
+ key: 'getDatetimeSaveValue',
2705
+ value: function getDatetimeSaveValue(value, dateFormat, dateFormatShow) {
2706
+ if (value == null || value === '') {
2707
+ return '';
2708
+ }
2709
+ if (dateFormat === 'DateInterval') {
2710
+ if ((typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value.startDate != null && value.endDate != null) {
2711
+ return this.dateFormat(value, dateFormat, dateFormatShow) || '';
2712
+ }
2713
+ if (typeof value === 'string' && value.indexOf(' - ') >= 0) {
2714
+ return value;
2715
+ }
2716
+ return '';
2717
+ }
2718
+ var raw = value;
2719
+ if ((typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value != null && value.value != null) {
2720
+ raw = value.value;
2721
+ }
2722
+ if (typeof raw === 'string') {
2723
+ if (raw.length >= 10 && raw.indexOf('-') >= 0) {
2724
+ return raw.substring(0, 19);
2725
+ }
2726
+ if (/^\d+$/.test(raw)) {
2727
+ raw = parseInt(raw, 10);
2728
+ }
2729
+ }
2730
+ if (typeof raw === 'number' && !isNaN(raw)) {
2731
+ return this.dateFormat(raw, dateFormat, dateFormatShow) || '';
2732
+ }
2733
+ var d = new Date(raw);
2734
+ if (!isNaN(d.getTime())) {
2735
+ return this.dateFormat(d.getTime(), dateFormat, dateFormatShow) || '';
2736
+ }
2737
+ return '';
2738
+ }
2739
+
2687
2740
  //时间
2688
2741
 
2689
2742
  }, {
@@ -2695,18 +2748,27 @@ var PageHome = function (_React$Component) {
2695
2748
  var itemParam = this.state.itemParam;
2696
2749
  var dateFormat = itemParam.dateFormat;
2697
2750
  var dateFormatShow = itemParam.dateFormatShow;
2751
+ var dateStr = '';
2698
2752
  if (dateFormat == "DateInterval") {
2699
- if (value.startDate && value.endDate) {
2700
- var dateStr = this.dateFormat(value, dateFormat, dateFormatShow);
2701
- data = this.editData(code, dateStr, data);
2753
+ if (value && value.startDate && value.endDate) {
2754
+ dateStr = t.getDatetimeSaveValue(value, dateFormat, dateFormatShow);
2755
+ data = t.editData(code, dateStr, data);
2702
2756
  }
2703
2757
  } else {
2704
- var dateStr = this.dateFormat(value.value, dateFormat);
2705
- if (dateFormat == "YMDT") {
2706
- //年月日,上下午修改数据
2707
- value.value = new Date(dateStr.replace(/-/g, "/")).getTime();
2758
+ var pickerVal = value && (typeof value === 'undefined' ? 'undefined' : _typeof(value)) === 'object' && value.value != null ? value : { value: value };
2759
+ dateStr = t.getDatetimeSaveValue(pickerVal, dateFormat, dateFormatShow);
2760
+ data = t.editData(code, dateStr, data);
2761
+ if (dateFormat == "YMDT" && dateStr) {
2762
+ pickerVal.value = new Date(dateStr.replace(/-/g, "/")).getTime();
2763
+ } else if (typeof pickerVal.value === 'string' && /^\d+$/.test(pickerVal.value)) {
2764
+ pickerVal.value = parseInt(pickerVal.value, 10);
2765
+ } else if (dateStr && (typeof pickerVal.value !== 'number' || isNaN(pickerVal.value))) {
2766
+ var ts = new Date(dateStr.replace(/-/g, '/')).getTime();
2767
+ if (!isNaN(ts)) {
2768
+ pickerVal.value = ts;
2769
+ }
2708
2770
  }
2709
- data = this.editData(code, dateStr, data);
2771
+ value = pickerVal;
2710
2772
  }
2711
2773
 
2712
2774
  itemParam.value = value;
@@ -2791,7 +2853,7 @@ var PageHome = function (_React$Component) {
2791
2853
  var itemParam = this.state.itemParam;
2792
2854
  var dateFormat = itemParam.dateFormat;
2793
2855
 
2794
- var dateStr = this.dateFormat(value.value, dateFormat);
2856
+ var dateStr = this.getDatetimeSaveValue(value, dateFormat);
2795
2857
  data = this.editData(code, dateStr, data);
2796
2858
  itemParam.value = value;
2797
2859
  itemParam.selectValue = dateStr;
@@ -7889,7 +7889,7 @@ var PageHome = function (_React$Component) {
7889
7889
  'span',
7890
7890
  { className: 'theme-color' },
7891
7891
  _react2.default.createElement('i', { className: 'iconfont icon-back t-rotate-180 t-FS14 t-FR' }),
7892
- '\u5BA1\u6279\u73AF\u8282'
7892
+ this.state.finalButtons.get("BASE_SUMBIT")
7893
7893
  )
7894
7894
  ),
7895
7895
  _react2.default.createElement(
@@ -8131,7 +8131,7 @@ var PageHome = function (_React$Component) {
8131
8131
  'span',
8132
8132
  { className: 'theme-color' },
8133
8133
  _react2.default.createElement('i', { className: 'iconfont icon-back t-rotate-180 t-FS14 t-FR' }),
8134
- '\u4F20\u9605'
8134
+ this.state.finalButtons.get("HELP_CIRCULATE")
8135
8135
  )
8136
8136
  ),
8137
8137
  _react2.default.createElement(
@@ -8170,7 +8170,7 @@ var PageHome = function (_React$Component) {
8170
8170
  'span',
8171
8171
  { className: 'theme-color' },
8172
8172
  _react2.default.createElement('i', { className: 'iconfont icon-back t-rotate-180 t-FS14 t-FR' }),
8173
- '\u8F6C\u4EA4\u73AF\u8282'
8173
+ this.state.finalButtons.get("BASE_TRANSFER")
8174
8174
  )
8175
8175
  ),
8176
8176
  _react2.default.createElement(_select2.default, {
@@ -8245,7 +8245,7 @@ var PageHome = function (_React$Component) {
8245
8245
  'span',
8246
8246
  { className: 'theme-color' },
8247
8247
  _react2.default.createElement('i', { className: 'iconfont icon-back t-rotate-180 t-FS14 t-FR' }),
8248
- '\u9000\u56DE\u73AF\u8282'
8248
+ this.state.finalButtons.get("BACK")
8249
8249
  )
8250
8250
  ),
8251
8251
  _react2.default.createElement(_RadioField2.default, {
@@ -8395,7 +8395,7 @@ var PageHome = function (_React$Component) {
8395
8395
  'span',
8396
8396
  { className: 'theme-color' },
8397
8397
  _react2.default.createElement('i', { className: 'iconfont icon-back t-rotate-180 t-FS14 t-FR' }),
8398
- '\u4F20\u9605'
8398
+ this.state.finalButtons.get("HELP_CIRCULATE")
8399
8399
  )
8400
8400
  ),
8401
8401
  _react2.default.createElement(_select2.default, {
@@ -8571,7 +8571,7 @@ var PageHome = function (_React$Component) {
8571
8571
  'span',
8572
8572
  { className: 'theme-color' },
8573
8573
  _react2.default.createElement('i', { className: 'iconfont icon-back t-rotate-180 t-FS14 t-FR' }),
8574
- '\u7ED3\u675F'
8574
+ this.state.finalButtons.get("BASE_END")
8575
8575
  )
8576
8576
  ),
8577
8577
  _react2.default.createElement(_TextareaField2.default, {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fmui-base",
3
- "version": "2.2.89",
3
+ "version": "2.2.91",
4
4
  "title": "fmui-base",
5
5
  "description": "fmui移动端组件",
6
6
  "main": "lib/index.js",