cnhis-design-vue 2.1.141 → 2.1.143
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/CHANGELOG.md +51 -34
- package/es/age/index.js +2 -2
- package/es/big-table/index.js +152 -112
- package/es/big-table/style.css +1 -1
- package/es/button/index.js +2395 -253
- package/es/button/style.css +1 -1
- package/es/captcha/index.js +3 -3
- package/es/card-reader-sdk/index.js +1 -1
- package/es/checkbox/index.js +1 -1
- package/es/color-picker/index.js +1 -1
- package/es/drag-layout/index.js +3 -3
- package/es/editor/index.js +1 -1
- package/es/ellipsis/index.js +1 -1
- package/es/fabric-chart/index.js +17 -16
- package/es/form-table/index.js +20 -20
- package/es/full-calendar/index.js +4 -4
- package/es/index/index.js +2509 -365
- package/es/index/style.css +1 -1
- package/es/input/index.js +1 -1
- package/es/map/index.js +1 -1
- package/es/multi-chat/index.js +25 -25
- package/es/multi-chat-client/index.js +19 -19
- package/es/multi-chat-history/index.js +4 -4
- package/es/multi-chat-record/index.js +4 -4
- package/es/multi-chat-setting/index.js +20 -20
- package/es/multi-chat-sip/index.js +1 -1
- package/es/radio/index.js +1 -1
- package/es/scale-container/index.js +1 -1
- package/es/scale-view/index.js +27 -27
- package/es/select/index.js +4 -4
- package/es/select-label/index.js +3 -3
- package/es/select-person/index.js +23 -20
- package/es/select-person/style.css +1 -1
- package/es/select-tag/index.js +4 -4
- package/es/shortcut-setter/index.js +2 -2
- package/es/slider-tree/index.js +1 -1
- package/es/table-filter/index.js +2225 -97
- package/es/table-filter/style.css +1 -1
- package/es/tag/index.js +1 -1
- package/es/verification-code/index.js +2 -2
- package/lib/cui.common.js +2753 -580
- package/lib/cui.umd.js +2753 -580
- package/lib/cui.umd.min.js +66 -66
- package/package.json +1 -1
- package/packages/big-table/src/BigTable.vue +5 -4
- package/packages/big-table/src/utils/headerFilter.js +54 -18
- package/packages/button/src/ButtonPrint/index.vue +27 -691
- package/packages/button/src/ButtonPrint/js/print.es.min.js +1 -1
- package/packages/button/src/ButtonPrint/js/print.es.min1.js +1 -1
- package/packages/button/src/ButtonPrint/new.vue +1438 -0
- package/packages/button/src/ButtonPrint/old.vue +809 -0
- package/packages/fabric-chart/src/fabric-chart/FabricTextGroup.vue +4 -3
- package/packages/select-person/select-person.vue +3 -0
package/package.json
CHANGED
|
@@ -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.
|
|
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,
|
|
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
|
|
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
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
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' &&
|
|
178
|
-
if (Array.isArray(
|
|
179
|
-
|
|
213
|
+
if (field.advanceOptionSetting == '0' && curField?.CONVERT) {
|
|
214
|
+
if (Array.isArray(curField.CONVERT)) {
|
|
215
|
+
curField.CONVERT.length = 0;
|
|
180
216
|
}
|
|
181
217
|
}
|
|
182
|
-
|
|
218
|
+
curField.CONVERT.push(...addItems);
|
|
183
219
|
} else {
|
|
184
220
|
let removeItems = beforeSearchConvert.filter(item => {
|
|
185
221
|
return !value.includes(item);
|
|
186
222
|
});
|
|
187
|
-
|
|
223
|
+
curField.CONVERT = curField.CONVERT.filter(item => {
|
|
188
224
|
return !removeItems.includes(item);
|
|
189
225
|
});
|
|
190
226
|
}
|