cnhis-design-vue 0.1.91-beta → 0.1.95-beta
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/es/age/index.js +2 -2
- package/es/big-table/index.js +21 -21
- package/es/button/index.js +70 -53
- package/es/button/style.css +1 -1
- package/es/captcha/index.js +3 -3
- 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/fabric-chart/index.js +9 -9
- package/es/index/index.js +430 -297
- 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 +24 -24
- package/es/multi-chat-client/index.js +18 -18
- 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-view/index.js +22 -22
- package/es/select/index.js +3 -3
- package/es/select-label/index.js +2 -2
- package/es/select-person/index.js +2 -2
- package/es/table-filter/index.js +310 -177
- package/es/table-filter/style.css +1 -1
- package/es/tag/index.js +1 -1
- package/es/utils/time-domain.js +195 -0
- package/es/verification-code/index.js +2 -2
- package/package.json +1 -1
- package/packages/button/src/ButtonPrint/components/IdentityVerification.vue +17 -5
- package/packages/button/src/ButtonPrint/index.vue +1 -0
- package/packages/table-filter/src/base-search-com/BaseSearch.vue +26 -3
- package/packages/table-filter/src/classification/Classification-com.vue +1 -1
- package/packages/table-filter/src/components/multi-select/multi-select.vue +3 -2
- package/packages/table-filter/src/components/out-quick-search/out-quick-search.vue +31 -4
- package/packages/table-filter/src/mixins/mixins.js +25 -4
- package/packages/table-filter/src/quick-search/QuickSearch.vue +1 -0
- package/src/utils/time-domain.js +193 -0
|
@@ -35,6 +35,7 @@
|
|
|
35
35
|
</template>
|
|
36
36
|
|
|
37
37
|
<a-range-picker
|
|
38
|
+
:allowClear="item.explicitRequired != 1"
|
|
38
39
|
:format="item.showFormat"
|
|
39
40
|
@change="value => rangePickerChange(value, item)"
|
|
40
41
|
@ok="outFilterChange"
|
|
@@ -101,7 +102,8 @@ import multiSelect from '../multi-select/multi-select';
|
|
|
101
102
|
import cTreeSelect from '../c-tree-select/tree-select';
|
|
102
103
|
import { filterApiFn } from '../../mixins/mixins';
|
|
103
104
|
import wordBookutils from '../../mixins/wordBookutils';
|
|
104
|
-
|
|
105
|
+
import moment from 'moment';
|
|
106
|
+
import { DatePicker} from 'ant-design-vue';
|
|
105
107
|
const EVALUATEList = [
|
|
106
108
|
{
|
|
107
109
|
label: "一星",
|
|
@@ -132,13 +134,15 @@ const EVALUATEList = [
|
|
|
132
134
|
export default {
|
|
133
135
|
name: "OutQuickSearch",
|
|
134
136
|
mixins: [filterApiFn],
|
|
135
|
-
components: { multiSelect,cTreeSelect },
|
|
137
|
+
components: { multiSelect,cTreeSelect, [DatePicker.RangePicker.name]: DatePicker.RangePicker },
|
|
136
138
|
props: {
|
|
137
139
|
item: Object
|
|
138
140
|
},
|
|
139
141
|
data() {
|
|
140
142
|
return {
|
|
141
|
-
fetchingWordbook: false
|
|
143
|
+
fetchingWordbook: false,
|
|
144
|
+
initSearch: false,
|
|
145
|
+
curDefaultValue: null,
|
|
142
146
|
};
|
|
143
147
|
},
|
|
144
148
|
|
|
@@ -147,7 +151,7 @@ export default {
|
|
|
147
151
|
return function(item) {
|
|
148
152
|
if (!item.showTime) return false;
|
|
149
153
|
return {
|
|
150
|
-
defaultValue: [
|
|
154
|
+
defaultValue: [moment("00:00:00", "HH:mm:ss"), moment("23:59:59", "HH:mm:ss")]
|
|
151
155
|
};
|
|
152
156
|
};
|
|
153
157
|
}
|
|
@@ -190,6 +194,10 @@ export default {
|
|
|
190
194
|
if (item.settingObj.wordbook) {
|
|
191
195
|
obj.autograph = item.settingObj.wordbook.autograph;
|
|
192
196
|
}
|
|
197
|
+
let df = item.explicitDefaultVal;
|
|
198
|
+
if(df != 'firstOption'){
|
|
199
|
+
obj.keyword = df;
|
|
200
|
+
}
|
|
193
201
|
this.getWordbookData(item.setting.wordbook, obj).then(({ data }) => {
|
|
194
202
|
this.handleWordbookData(item, data, obj);
|
|
195
203
|
});
|
|
@@ -201,6 +209,25 @@ export default {
|
|
|
201
209
|
this.$set(item, "hasFieldList", hasFieldList);
|
|
202
210
|
this.$set(item, "dataSource", rows);
|
|
203
211
|
item.searchPageConfig = Object.assign(item.searchPageConfig, searchPageConfig);
|
|
212
|
+
// 初始化获取值
|
|
213
|
+
if(!this.initSearch){
|
|
214
|
+
let df = item.explicitDefaultVal;
|
|
215
|
+
if(df){
|
|
216
|
+
let defval = [];
|
|
217
|
+
if(df === 'firstOption'){
|
|
218
|
+
let [v] = rows;
|
|
219
|
+
v && (defval = [v.myName])
|
|
220
|
+
} else {
|
|
221
|
+
let f = rows.find(v => v.myName.includes(df));
|
|
222
|
+
if(f){
|
|
223
|
+
defval = [f.myName]
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
item.value = [...defval]
|
|
227
|
+
item.search_DefaultValue= [...defval]
|
|
228
|
+
}
|
|
229
|
+
this.initSearch = true;
|
|
230
|
+
}
|
|
204
231
|
},
|
|
205
232
|
getWordbookData(o, obj) {
|
|
206
233
|
let { id, filterKeys, wordbookType } = o;
|
|
@@ -33,7 +33,7 @@ const EVALUATEList = [
|
|
|
33
33
|
];
|
|
34
34
|
|
|
35
35
|
import moment from 'moment';
|
|
36
|
-
|
|
36
|
+
import timeDomain from '@/utils/time-domain';
|
|
37
37
|
export const durationMixin = {
|
|
38
38
|
filters: {
|
|
39
39
|
// 格式化时长单位
|
|
@@ -383,13 +383,23 @@ export const outQuickSearchFn = {
|
|
|
383
383
|
arr.forEach(el => {
|
|
384
384
|
el.setting = typeof el.setting == "string" ? JSON.parse(el.setting) : el.setting;
|
|
385
385
|
const attr = el?.settingObj?.attr || "";
|
|
386
|
+
const showSetting = el?.setting?.showSetting || []
|
|
386
387
|
// 映射优先级最高
|
|
387
|
-
if (
|
|
388
|
+
if (showSetting?.length) {
|
|
389
|
+
let tvalue = []
|
|
390
|
+
// 设置了默认值
|
|
391
|
+
let df = el.explicitDefaultVal;
|
|
392
|
+
if(df){
|
|
393
|
+
let i = df == 'firstOption' ? 0 : showSetting.findIndex(v => v.change_text == df);
|
|
394
|
+
if(i > -1){
|
|
395
|
+
tvalue.push(i)
|
|
396
|
+
}
|
|
397
|
+
}
|
|
388
398
|
// 存在映射 使用下拉多选框
|
|
389
399
|
this.$set(el, "con", "CONVERT");
|
|
390
400
|
this.$set(el, "com", "SelectMui");
|
|
391
401
|
this.$set(el, "comType", "SelectMui");
|
|
392
|
-
this.$set(el, "value",
|
|
402
|
+
this.$set(el, "value", tvalue);
|
|
393
403
|
const labelList = el.setting.showSetting.map(i => {
|
|
394
404
|
i.labelName = i.change_text;
|
|
395
405
|
return i;
|
|
@@ -431,7 +441,18 @@ export const outQuickSearchFn = {
|
|
|
431
441
|
["DATETIME", "DATE"].includes(el.fieldType)
|
|
432
442
|
) {
|
|
433
443
|
// 查找默认值
|
|
434
|
-
|
|
444
|
+
let value = this.getSearchDefValueByLimit(el, this.searchFieldLimit) || [];
|
|
445
|
+
// explicitDefaultVal: "YESTERDAY"
|
|
446
|
+
// explicitRequired: 1
|
|
447
|
+
|
|
448
|
+
// 配置了默认值
|
|
449
|
+
if(el.explicitDefaultVal){
|
|
450
|
+
// let showFormat = attr === "BIRTHDAY" ? 'MM-DD':'YYYY-MM-DD HH:mm:ss';
|
|
451
|
+
let t = timeDomain.getTimeDomain(el.explicitDefaultVal)
|
|
452
|
+
if(t.length > 0){
|
|
453
|
+
value = t;
|
|
454
|
+
}
|
|
455
|
+
}
|
|
435
456
|
this.$set(el, "con", "IN");
|
|
436
457
|
this.$set(el, "com", "DatePicker");
|
|
437
458
|
this.$set(el, "value", value);
|
|
@@ -759,6 +759,7 @@ export default create({
|
|
|
759
759
|
[Select.Option.name]: Select.Option,
|
|
760
760
|
[Upload.name]: Upload,
|
|
761
761
|
[DatePicker.name]: DatePicker,
|
|
762
|
+
[DatePicker.RangePicker.name]: DatePicker.RangePicker,
|
|
762
763
|
[Input.name]: Input,
|
|
763
764
|
[Input.Group.name]: Input.Group,
|
|
764
765
|
[InputNumber.name]: InputNumber,
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import moment from 'moment';
|
|
2
|
+
|
|
3
|
+
const TYPELIST = [
|
|
4
|
+
{ name: 'TODAY', desc: '今天' },
|
|
5
|
+
{ name: 'TOMORROW', desc: '明天' },
|
|
6
|
+
{ name: 'YESTERDAY', desc: '昨天' },
|
|
7
|
+
{ name: 'THIS_WEEK', desc: '本周' },
|
|
8
|
+
{ name: 'NEXT_WEEK', desc: '下周' },
|
|
9
|
+
{ name: 'UP_WEEK', desc: '上周' },
|
|
10
|
+
{ name: 'THIS_MONTH', desc: '本月' },
|
|
11
|
+
{ name: 'NEXT_MONTH', desc: '下月' },
|
|
12
|
+
{ name: 'UP_MONTH', desc: '上月' },
|
|
13
|
+
{ name: 'THIS_SEASON', desc: '本季度' },
|
|
14
|
+
{ name: 'NEXT_SEASON', desc: '下季度' },
|
|
15
|
+
{ name: 'UP_SEASON', desc: '上季度' },
|
|
16
|
+
{ name: 'THIS_YEAR', desc: '本年' },
|
|
17
|
+
{ name: 'NEXT_YEAR', desc: '下年' },
|
|
18
|
+
{ name: 'UP_YEAR', desc: '上年' }
|
|
19
|
+
];
|
|
20
|
+
|
|
21
|
+
const defaultType = 'YYYY-MM-DD HH:mm:ss';
|
|
22
|
+
|
|
23
|
+
/*
|
|
24
|
+
moment().format('X') // (大写X)以秒为单位,返回值为字符串类型
|
|
25
|
+
moment().format('x') // (小写x)以毫秒为单位,返回值为字符串类型
|
|
26
|
+
moment().valueOf() // 以毫秒为单位,返回值为数值型
|
|
27
|
+
*/
|
|
28
|
+
|
|
29
|
+
const timeDomain = {
|
|
30
|
+
TODAY() {
|
|
31
|
+
const start = moment().startOf('day');
|
|
32
|
+
const end = moment().endOf('day');
|
|
33
|
+
return [start, end];
|
|
34
|
+
},
|
|
35
|
+
|
|
36
|
+
TOMORROW() {
|
|
37
|
+
// moment().add(7, "days");
|
|
38
|
+
const start = moment()
|
|
39
|
+
.add(1, 'days')
|
|
40
|
+
.startOf('days');
|
|
41
|
+
const end = moment()
|
|
42
|
+
.add(1, 'days')
|
|
43
|
+
.endOf('days');
|
|
44
|
+
return [start, end];
|
|
45
|
+
},
|
|
46
|
+
|
|
47
|
+
YESTERDAY() {
|
|
48
|
+
const start = moment()
|
|
49
|
+
.subtract(1, 'days')
|
|
50
|
+
.startOf('days');
|
|
51
|
+
const end = moment()
|
|
52
|
+
.subtract(1, 'days')
|
|
53
|
+
.endOf('days');
|
|
54
|
+
return [start, end];
|
|
55
|
+
},
|
|
56
|
+
|
|
57
|
+
THIS_WEEK() {
|
|
58
|
+
const start = moment().startOf('week');
|
|
59
|
+
const end = moment().endOf('week');
|
|
60
|
+
return [start, end];
|
|
61
|
+
},
|
|
62
|
+
|
|
63
|
+
NEXT_WEEK() {
|
|
64
|
+
return timeDomain.getNextWeek(1);
|
|
65
|
+
},
|
|
66
|
+
|
|
67
|
+
UP_WEEK() {
|
|
68
|
+
return timeDomain.getLastWeek(1);
|
|
69
|
+
},
|
|
70
|
+
|
|
71
|
+
THIS_MONTH() {
|
|
72
|
+
return timeDomain.getMonth(0);
|
|
73
|
+
},
|
|
74
|
+
|
|
75
|
+
NEXT_MONTH() {
|
|
76
|
+
return timeDomain.getMonth(1);
|
|
77
|
+
},
|
|
78
|
+
|
|
79
|
+
UP_MONTH() {
|
|
80
|
+
return timeDomain.getMonth(-1);
|
|
81
|
+
},
|
|
82
|
+
|
|
83
|
+
THIS_SEASON() {
|
|
84
|
+
return timeDomain.getQuarter(0);
|
|
85
|
+
},
|
|
86
|
+
|
|
87
|
+
NEXT_SEASON() {
|
|
88
|
+
return timeDomain.getQuarter(1);
|
|
89
|
+
},
|
|
90
|
+
|
|
91
|
+
UP_SEASON() {
|
|
92
|
+
return timeDomain.getQuarter(-1);
|
|
93
|
+
},
|
|
94
|
+
|
|
95
|
+
THIS_YEAR() {
|
|
96
|
+
return timeDomain.getYear(0);
|
|
97
|
+
},
|
|
98
|
+
|
|
99
|
+
UP_YEAR() {
|
|
100
|
+
return timeDomain.getYear(-1);
|
|
101
|
+
},
|
|
102
|
+
|
|
103
|
+
NEXT_YEAR() {
|
|
104
|
+
return timeDomain.getYear(1);
|
|
105
|
+
},
|
|
106
|
+
|
|
107
|
+
getMonth(difference = 0) {
|
|
108
|
+
let c_mouth = moment().month() + difference;
|
|
109
|
+
|
|
110
|
+
const start = moment()
|
|
111
|
+
.month(c_mouth)
|
|
112
|
+
.startOf('month');
|
|
113
|
+
|
|
114
|
+
const end = moment()
|
|
115
|
+
.month(c_mouth)
|
|
116
|
+
.endOf('month');
|
|
117
|
+
|
|
118
|
+
return [start, end];
|
|
119
|
+
},
|
|
120
|
+
|
|
121
|
+
getQuarter(difference = 0) {
|
|
122
|
+
let c_mouth = moment().quarter() + difference;
|
|
123
|
+
const start = moment()
|
|
124
|
+
.quarter(c_mouth)
|
|
125
|
+
.startOf('quarter');
|
|
126
|
+
const end = moment()
|
|
127
|
+
.quarter(c_mouth)
|
|
128
|
+
.endOf('quarter');
|
|
129
|
+
|
|
130
|
+
return [start, end];
|
|
131
|
+
},
|
|
132
|
+
|
|
133
|
+
getYear(difference = 0) {
|
|
134
|
+
let c_year = moment().year() + difference;
|
|
135
|
+
const start = moment()
|
|
136
|
+
.year(c_year)
|
|
137
|
+
.startOf('year');
|
|
138
|
+
const end = moment()
|
|
139
|
+
.year(c_year)
|
|
140
|
+
.endOf('year');
|
|
141
|
+
return [start, end];
|
|
142
|
+
},
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* 获取前 i 周的周一和周日日期,并以数组的方式返回。
|
|
146
|
+
* 当 i=1,获取的是上周一和上周日的日期;
|
|
147
|
+
* 当 i=2,获取的是上上周一和上上周日的日期
|
|
148
|
+
* ...以此类推
|
|
149
|
+
* @param i
|
|
150
|
+
*/
|
|
151
|
+
getLastWeek(i) {
|
|
152
|
+
let weekOfDay = parseInt(moment().format('E')); // 计算今天是这周第几天
|
|
153
|
+
let last_monday = moment()
|
|
154
|
+
.subtract(weekOfDay + 7 * i - 1, 'days')
|
|
155
|
+
.startOf('days');
|
|
156
|
+
let last_sunday = moment()
|
|
157
|
+
.subtract(weekOfDay + 7 * (i - 1), 'days')
|
|
158
|
+
.endOf('days');
|
|
159
|
+
return [last_monday, last_sunday];
|
|
160
|
+
},
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* 获取后 i 周的周一和周日日期,并以数组的方式返回。
|
|
164
|
+
* 当 i=1,获取的是下周一和下周日的日期;
|
|
165
|
+
* 当 i=2,获取的是下下周一和下下周日的日期
|
|
166
|
+
* ...以此类推
|
|
167
|
+
* @param i
|
|
168
|
+
*/
|
|
169
|
+
getNextWeek(i) {
|
|
170
|
+
let weekOfDay = parseInt(moment().format('E')); // 计算今天是这周第几天
|
|
171
|
+
let next_monday = moment()
|
|
172
|
+
.add(7 - weekOfDay + 7 * (i - 1) + 1, 'days')
|
|
173
|
+
.startOf('days');
|
|
174
|
+
let next_sunday = moment()
|
|
175
|
+
.add(7 - weekOfDay + 7 * i, 'days')
|
|
176
|
+
.endOf('days');
|
|
177
|
+
return [next_monday, next_sunday];
|
|
178
|
+
},
|
|
179
|
+
|
|
180
|
+
getTimeDomain(type, format) {
|
|
181
|
+
if (timeDomain[type]) {
|
|
182
|
+
let res = timeDomain[type]();
|
|
183
|
+
if(typeof format === 'string'){
|
|
184
|
+
return res.map(v => v.format(type))
|
|
185
|
+
}
|
|
186
|
+
return res;
|
|
187
|
+
} else {
|
|
188
|
+
return [];
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
};
|
|
192
|
+
|
|
193
|
+
export default timeDomain;
|