cnhis-design-vue 2.1.141 → 2.1.144

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.
Files changed (114) hide show
  1. package/CHANGELOG.md +62 -21
  2. package/es/affix/index.js +8 -8
  3. package/es/age/index.js +10 -10
  4. package/es/alert/index.js +8 -8
  5. package/es/anchor/index.js +8 -8
  6. package/es/auto-complete/index.js +8 -8
  7. package/es/avatar/index.js +8 -8
  8. package/es/back-top/index.js +8 -8
  9. package/es/badge/index.js +8 -8
  10. package/es/base/index.js +8 -8
  11. package/es/big-table/index.js +197 -157
  12. package/es/big-table/style.css +1 -1
  13. package/es/breadcrumb/index.js +8 -8
  14. package/es/button/index.js +2557 -255
  15. package/es/button/style.css +1 -1
  16. package/es/calendar/index.js +8 -8
  17. package/es/captcha/index.js +3 -3
  18. package/es/card/index.js +8 -8
  19. package/es/card-reader-sdk/index.js +1 -1
  20. package/es/carousel/index.js +8 -8
  21. package/es/cascader/index.js +8 -8
  22. package/es/checkbox/index.js +9 -9
  23. package/es/col/index.js +8 -8
  24. package/es/collapse/index.js +8 -8
  25. package/es/color-picker/index.js +1 -1
  26. package/es/comment/index.js +8 -8
  27. package/es/config-provider/index.js +8 -8
  28. package/es/date-picker/index.js +8 -8
  29. package/es/descriptions/index.js +8 -8
  30. package/es/direct/index.js +16 -16
  31. package/es/divider/index.js +8 -8
  32. package/es/drag-layout/index.js +3 -3
  33. package/es/drawer/index.js +8 -8
  34. package/es/dropdown/index.js +8 -8
  35. package/es/editor/index.js +1 -1
  36. package/es/ellipsis/index.js +1 -1
  37. package/es/empty/index.js +8 -8
  38. package/es/fabric-chart/index.js +291 -156
  39. package/es/form/index.js +8 -8
  40. package/es/form-model/index.js +8 -8
  41. package/es/form-table/index.js +74 -74
  42. package/es/full-calendar/index.js +4 -4
  43. package/es/index/index.js +3827 -978
  44. package/es/index/style.css +1 -1
  45. package/es/input/index.js +9 -9
  46. package/es/input-number/index.js +8 -8
  47. package/es/layout/index.js +8 -8
  48. package/es/list/index.js +8 -8
  49. package/es/locale-provider/index.js +8 -8
  50. package/es/map/index.js +9 -9
  51. package/es/mentions/index.js +8 -8
  52. package/es/menu/index.js +8 -8
  53. package/es/message/index.js +8 -8
  54. package/es/multi-chat/index.js +76 -76
  55. package/es/multi-chat-client/index.js +70 -70
  56. package/es/multi-chat-history/index.js +4 -4
  57. package/es/multi-chat-record/index.js +14 -14
  58. package/es/multi-chat-setting/index.js +22 -22
  59. package/es/multi-chat-sip/index.js +1 -1
  60. package/es/notification/index.js +8 -8
  61. package/es/page-header/index.js +8 -8
  62. package/es/pagination/index.js +8 -8
  63. package/es/popconfirm/index.js +8 -8
  64. package/es/popover/index.js +8 -8
  65. package/es/progress/index.js +8 -8
  66. package/es/radio/index.js +9 -9
  67. package/es/rate/index.js +8 -8
  68. package/es/result/index.js +8 -8
  69. package/es/row/index.js +8 -8
  70. package/es/scale-container/index.js +9 -9
  71. package/es/scale-view/index.js +27 -27
  72. package/es/select/index.js +12 -12
  73. package/es/select-label/index.js +11 -11
  74. package/es/select-person/index.js +23 -20
  75. package/es/select-person/style.css +1 -1
  76. package/es/select-tag/index.js +4 -4
  77. package/es/shortcut-setter/index.js +10 -10
  78. package/es/skeleton/index.js +8 -8
  79. package/es/slider/index.js +8 -8
  80. package/es/slider-tree/index.js +9 -9
  81. package/es/space/index.js +8 -8
  82. package/es/spin/index.js +8 -8
  83. package/es/statistic/index.js +8 -8
  84. package/es/steps/index.js +8 -8
  85. package/es/switch/index.js +8 -8
  86. package/es/table-filter/index.js +8617 -5918
  87. package/es/table-filter/style.css +1 -1
  88. package/es/tabs/index.js +8 -8
  89. package/es/tag/index.js +9 -9
  90. package/es/time-picker/index.js +8 -8
  91. package/es/timeline/index.js +8 -8
  92. package/es/tooltip/index.js +8 -8
  93. package/es/transfer/index.js +8 -8
  94. package/es/tree/index.js +8 -8
  95. package/es/tree-select/index.js +8 -8
  96. package/es/upload/index.js +8 -8
  97. package/es/verification-code/index.js +2 -2
  98. package/lib/cui.common.js +3963 -1111
  99. package/lib/cui.umd.js +3963 -1111
  100. package/lib/cui.umd.min.js +68 -68
  101. package/package.json +1 -1
  102. package/packages/big-table/src/BigTable.vue +5 -4
  103. package/packages/big-table/src/utils/headerFilter.js +54 -18
  104. package/packages/button/src/ButtonPrint/index.vue +33 -689
  105. package/packages/button/src/ButtonPrint/js/print.es.min.js +1 -1
  106. package/packages/button/src/ButtonPrint/js/print.es.min1.js +1 -1
  107. package/packages/button/src/ButtonPrint/new.vue +1417 -0
  108. package/packages/button/src/ButtonPrint/old.vue +838 -0
  109. package/packages/fabric-chart/src/fabric-chart/FabricPolylines.vue +175 -85
  110. package/packages/fabric-chart/src/fabric-chart/FabricTextGroup.vue +4 -3
  111. package/packages/fabric-chart/src/mixins/eventCommon.js +1 -1
  112. package/packages/select-person/select-person.vue +3 -0
  113. package/packages/table-filter/src/base-search-com/BaseSearch.vue +21 -71
  114. package/packages/table-filter/src/mixins/printNew.js +184 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cnhis-design-vue",
3
- "version": "2.1.141",
3
+ "version": "2.1.144",
4
4
  "description": "前端业务UI库",
5
5
  "keyword": "cnhis-design-vue vue cnhis",
6
6
  "homepage": "http://dv.cnhis.com/",
@@ -1717,7 +1717,7 @@ export default create({
1717
1717
  // 表头渲染逻辑
1718
1718
  formatterHeader(item) {
1719
1719
  let field = this.filterFields[item.columnName];
1720
- const {showfilterSearch, showSelectAll, filterOptions} = field.filterSettingMap || {}
1720
+ const {showfilterSearch, showSelectAll, filterOptions=[]} = field.filterSettingMap || {};
1721
1721
  return () => {
1722
1722
  return [
1723
1723
  <div class="filter-box">
@@ -1759,8 +1759,9 @@ export default create({
1759
1759
  <a-input-search
1760
1760
  placeholder="字段搜索"
1761
1761
  class="check-seach-input"
1762
+ allowClear={true}
1762
1763
  onSearch={val => {
1763
- this.handleFilterSeach(val, field);
1764
+ this.handleFilterSeachDebounce(val, item);
1764
1765
  }}
1765
1766
  />
1766
1767
  </div>
@@ -1770,7 +1771,7 @@ export default create({
1770
1771
  )}
1771
1772
  <div class="checkbox-box">
1772
1773
  <div class="checkbox-wrap js-checkbox-wrap" style={{ height: this.filterHeight + this.distance + 'px' }}>
1773
- {showSelectAll ? (
1774
+ {showSelectAll && !field.searchFilterText ? (
1774
1775
  <div class="ant-checkbox-group">
1775
1776
  <a-checkbox
1776
1777
  indeterminate={field.indeterminate}
@@ -1790,7 +1791,7 @@ export default create({
1790
1791
  <a-checkbox-group options={filterOptions} value={field.CONVERT} onChange={val => this.handleFilterChange(val, item.columnName, field)} />
1791
1792
  ) : (
1792
1793
  <a-checkbox-group
1793
- options={filterOptions}
1794
+ options={field.filterSettingMap && field.filterSettingMap.filterOptions || []}
1794
1795
  value={field.searchFilterCONVERT}
1795
1796
  onChange={val => this.handleFilterSearchChange(val, item.columnName, field)}
1796
1797
  />
@@ -30,6 +30,9 @@ export default {
30
30
  return this.tableDataType === 'API';
31
31
  }
32
32
  },
33
+ created() {
34
+ this.handleFilterSeachDebounce = vexutils.debounce(this.handleFilterSeach, 100);
35
+ },
33
36
  methods: {
34
37
  getOffsetLocation(element, cls, offsetKey) {
35
38
  let actualTop = element[offsetKey];
@@ -47,6 +50,22 @@ export default {
47
50
  let resHeight = target.offsetHeight;
48
51
  return { resTop, resLeft, resWidth, resHeight };
49
52
  },
53
+ handleShowFilterOptions(field) {
54
+ const { filterSettingMap = {}, setting } = field || {};
55
+ let originOptions = setting?.showSetting || [];
56
+ const { filterOptions } = filterSettingMap;
57
+ if (!filterOptions) return;
58
+ // 无搜索
59
+ if (filterOptions.length === originOptions.length) return;
60
+ filterSettingMap.filterOptions = originOptions;
61
+ },
62
+ handleShowFilterCheck(field, columnName) {
63
+ let { filterOptions } = field?.filterSettingMap || {};
64
+ let len = this.filterFields[columnName]?.CONVERT?.length;
65
+ let allLen = filterOptions?.length || field.setting?.showSetting?.length;
66
+ field.checkAll = len === allLen;
67
+ field.indeterminate = !!len && len !== allLen;
68
+ },
50
69
  showFilter(field, columnName, event) {
51
70
  if (this.isInlineOperating) return false;
52
71
  let target = event.target;
@@ -54,7 +73,6 @@ export default {
54
73
  let fontSize = this.styleSetting?.fontSize || 'small';
55
74
  let scaleNum = fontSizeMap[fontSize];
56
75
  let FILTER_BOX_TOP_OFFSET = filterTopOffsetMap[fontSize];
57
- let { filterOptions } = field?.filterSettingMap || {};
58
76
 
59
77
  let transformWrap = document.body;
60
78
  let { left: btnRectLeft, right: btnRectRight, top: btnRectTop, width: btnWidth } = target.getBoundingClientRect();
@@ -101,12 +119,11 @@ export default {
101
119
  field.top = top / scaleNum + 'px';
102
120
 
103
121
  field.visible = !field.visible;
104
-
105
- let len = this.filterFields[columnName]?.CONVERT?.length;
106
- let allLen = filterOptions?.length || field.setting?.showSetting?.length;
107
- field.checkAll = len === allLen;
108
- field.indeterminate = !!len && len !== allLen;
109
122
  field.searchFilterText = '';
123
+
124
+ // field.filterSettingMap.filterOptions =field.setting?.showSetting || [];
125
+ this.handleShowFilterOptions(field);
126
+ this.handleShowFilterCheck(field, columnName);
110
127
  },
111
128
  handlefilterBoxClickSort(sort, field) {
112
129
  if (field.filterSort === sort) {
@@ -119,24 +136,41 @@ export default {
119
136
  field.visible = false;
120
137
  this.$emit('sortChange', { prop: field.columnName, order: sort });
121
138
  },
122
- handleFilterSeach(val, field) {
139
+ handleFilterSeach(val, item) {
140
+ let field = this.filterFields[item.columnName];
141
+ if (!field) return;
123
142
  field.searchFilterText = val;
124
143
  let { filterOptions } = field?.filterSettingMap || {};
125
144
  let options = filterOptions || field.setting?.showSetting;
126
- let allLen = options?.length;
145
+ let originOptions = field.setting?.showSetting || [];
146
+ let allLen = originOptions?.length;
127
147
  let cLen = field?.CONVERT?.length;
128
148
 
129
149
  if (val === '') {
130
150
  field.checkAll = cLen === allLen;
131
151
  field.indeterminate = !!cLen && cLen !== allLen;
152
+
153
+ field.filterSettingMap &&
154
+ Object.assign(field.filterSettingMap, {
155
+ filterOptions: originOptions
156
+ });
132
157
  return;
133
158
  }
134
159
 
135
- field.searchFilterCONVERT = options
136
- .filter(item => {
137
- return field.searchFilterText === item.label && field.CONVERT.includes(item.value);
138
- })
139
- .map(item => item.value);
160
+ // 过滤options
161
+ let curFilterOptions =
162
+ originOptions.filter?.(item => {
163
+ if (!field.searchFilterText) return item;
164
+ let reg = new RegExp(field.searchFilterText);
165
+ return reg.test(item.label);
166
+ }) || [];
167
+
168
+ field.searchFilterCONVERT = curFilterOptions.filter(item => field.CONVERT.includes(item.value)).map(item => item.value);
169
+
170
+ field.filterSettingMap &&
171
+ Object.assign(field.filterSettingMap, {
172
+ filterOptions: curFilterOptions
173
+ });
140
174
 
141
175
  beforeSearchConvert = field.searchFilterCONVERT;
142
176
  },
@@ -155,6 +189,7 @@ export default {
155
189
  })
156
190
  : [];
157
191
  },
192
+
158
193
  handleFilterChange(newValue, name, field) {
159
194
  this.reScrollFilterWrap();
160
195
  let value = newValue;
@@ -169,22 +204,23 @@ export default {
169
204
  handleFilterSearchChange(value, columnName, field) {
170
205
  this.reScrollFilterWrap();
171
206
  /* filter-check-group value更新 触发 主check-group value同步更新 */
207
+ let curField = this.filterFields[columnName];
172
208
  let isAdd = beforeSearchConvert.length < value.length;
173
209
  if (isAdd) {
174
210
  let addItems = value.filter(item => {
175
211
  return !beforeSearchConvert.includes(item);
176
212
  });
177
- if (field.advanceOptionSetting == '0' && this.filterFields[columnName]?.CONVERT) {
178
- if (Array.isArray(this.filterFields[columnName].CONVERT)) {
179
- this.filterFields[columnName].CONVERT.length = 0;
213
+ if (field.advanceOptionSetting == '0' && curField?.CONVERT) {
214
+ if (Array.isArray(curField.CONVERT)) {
215
+ curField.CONVERT.length = 0;
180
216
  }
181
217
  }
182
- this.filterFields[columnName].CONVERT.push(...addItems);
218
+ curField.CONVERT.push(...addItems);
183
219
  } else {
184
220
  let removeItems = beforeSearchConvert.filter(item => {
185
221
  return !value.includes(item);
186
222
  });
187
- this.filterFields[columnName].CONVERT = this.filterFields[columnName].CONVERT.filter(item => {
223
+ curField.CONVERT = curField.CONVERT.filter(item => {
188
224
  return !removeItems.includes(item);
189
225
  });
190
226
  }