cnhis-design-vue 0.2.17-beta → 0.2.21-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 +402 -178
- package/es/big-table/style.css +1 -1
- package/es/button/index.js +2299 -1517
- 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 +4007 -2563
- 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 +602 -199
- package/es/multi-chat/style.css +1 -1
- package/es/multi-chat-client/index.js +516 -141
- package/es/multi-chat-client/style.css +1 -1
- 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 +328 -77
- package/es/multi-chat-setting/style.css +1 -1
- package/es/multi-chat-sip/index.js +1 -1
- package/es/radio/index.js +1 -1
- package/es/scale-view/index.js +436 -362
- package/es/scale-view/style.css +1 -1
- package/es/select/index.js +3 -3
- package/es/select-label/index.js +312 -289
- package/es/select-label/style.css +1 -1
- package/es/select-person/index.js +2 -2
- package/es/table-filter/index.js +2546 -1697
- package/es/table-filter/style.css +1 -1
- package/es/tag/index.js +1 -1
- package/es/utils/UniRTCv2.js +586 -0
- package/es/verification-code/index.js +2 -2
- package/package.json +2 -2
- package/packages/big-table/src/BigTable.vue +72 -16
- package/packages/big-table/src/assets/style/table-base.less +10 -0
- package/packages/big-table/src/components/TextOverTooltip.vue +24 -11
- package/packages/big-table/src/utils/batchEditing.js +1 -1
- package/packages/big-table/src/utils/bigTableProps.js +2 -1
- package/packages/button/src/ButtonPrint/index.vue +65 -21
- package/packages/button/src/ButtonPrint/js/print.es.min.js +1 -2
- package/packages/multi-chat/chat/audio.vue +22 -0
- package/packages/multi-chat/chat/calling.vue +6 -0
- package/packages/multi-chat/chat/chatFooter.vue +43 -3
- package/packages/multi-chat/chat/client/clientChat.vue +13 -1
- package/packages/multi-chat/chat/index.vue +17 -4
- package/packages/multi-chat/chat/mixins/uniRTCAPI.js +77 -0
- package/packages/multi-chat/chat/multiVideo.vue +14 -0
- package/packages/multi-chat/chat/scrollList.vue +7 -1
- package/packages/multi-chat/chat/video.vue +4 -0
- package/packages/multi-chat/components/user-status.vue +50 -45
- package/packages/multi-chat/setting/baseInfo/index.vue +3 -3
- package/packages/multi-chat/setting/configuration/index.vue +38 -1
- package/packages/multi-chat/store/actions.js +76 -0
- package/packages/multi-chat/store/getters.js +9 -0
- package/packages/multi-chat/store/mutation.js +9 -0
- package/packages/multi-chat/store/state.js +4 -1
- package/packages/scale-view/answerParse.vue +27 -14
- package/packages/scale-view/scaleView.vue +51 -10
- package/packages/select-label/label-classify.vue +16 -8
- package/packages/select-label/labelFormContent.vue +137 -75
- package/packages/select-label/select-label.vue +56 -17
- package/packages/table-filter/src/base-search-com/BaseSearch.vue +100 -17
- package/packages/table-filter/src/classification/Classification-com.vue +49 -59
- package/packages/table-filter/src/components/search-modal/set-classification.vue +4 -1
- package/packages/table-filter/src/components/table-modal/TableModal.vue +10 -0
- package/packages/table-filter/src/quick-search/QuickSearch.vue +37 -23
- package/src/utils/UniRTCv2.js +561 -0
|
@@ -26,14 +26,17 @@
|
|
|
26
26
|
<a-icon class="label-close" v-show="!(item.isPublic && item.isPublic == 1)" type="close" @click.native.stop="handleDelLabel(item, classifyItem)" />
|
|
27
27
|
</template>
|
|
28
28
|
</a-checkable-tag>
|
|
29
|
-
<
|
|
30
|
-
<a-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
29
|
+
<template v-if="classifyItem.allowCreateByPersonal == 1 ">
|
|
30
|
+
<a-button v-if="isEdit && !classifyItem.isNoAdd && sourceType != 'guage'" type="dashed" class="label-add" v-show="!classifyItem.showAdd" @click="handleAddLabel($event, classifyItem)">
|
|
31
|
+
<a-icon type="plus" />
|
|
32
|
+
<!-- {{ $t("1.1.2") }} -->
|
|
33
|
+
标签
|
|
34
|
+
</a-button>
|
|
35
|
+
<!-- 是否允许新增个人标签 allowCreateByPersonal -->
|
|
36
|
+
<a-input v-if="isEdit && !classifyItem.isNoAdd && sourceType != 'guage'" class="label-add add-input" v-model.trim="classifyItem.addVal" v-show="classifyItem.showAdd" @blur="hanldeBlur($event, classifyItem)">
|
|
37
|
+
<a-icon slot="suffix" type="close" @click.native.stop="clearaddVal($event, classifyItem)" />
|
|
38
|
+
</a-input>
|
|
39
|
+
</template>
|
|
37
40
|
</div>
|
|
38
41
|
</div>
|
|
39
42
|
</template>
|
|
@@ -118,4 +121,9 @@ export default create({
|
|
|
118
121
|
.label-disable-wrap {
|
|
119
122
|
text-align: center;
|
|
120
123
|
}
|
|
124
|
+
.label-content {
|
|
125
|
+
/deep/ .ant-tag {
|
|
126
|
+
border: 1px solid #f1f1f1;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
121
129
|
</style>
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
<div class="label-wrap">
|
|
9
9
|
<!-- 表单内嵌打开标签组件的样式 -->
|
|
10
10
|
<div v-if="explicit" class="explicit-continer">
|
|
11
|
-
<a-tabs hideAdd :activeKey="labelAnchorKey" @change="labelAnchorTabsOnChange" tab-position="top">
|
|
11
|
+
<a-tabs hideAdd :activeKey="labelAnchorKey" type="card" @change="labelAnchorTabsOnChange" tab-position="top">
|
|
12
12
|
<template v-for="(v, i) in labelConfig">
|
|
13
13
|
<a-tab-pane :key="v.curKey">
|
|
14
14
|
<span slot="tab">
|
|
@@ -198,9 +198,12 @@ export default create({
|
|
|
198
198
|
return !labelObj[key].itemList;
|
|
199
199
|
});
|
|
200
200
|
},
|
|
201
|
-
|
|
201
|
+
SelectedList() {
|
|
202
|
+
const { labelSelectedList = [], labelSelectedEdit = [] } = this;
|
|
203
|
+
return labelSelectedList.concat(labelSelectedEdit);
|
|
204
|
+
},
|
|
202
205
|
selectLabelId() {
|
|
203
|
-
const list = this?.
|
|
206
|
+
const list = this?.SelectedList || [];
|
|
204
207
|
if (Array.isArray(list)) {
|
|
205
208
|
return list.map(v => v.labelId);
|
|
206
209
|
}
|
|
@@ -248,7 +251,6 @@ export default create({
|
|
|
248
251
|
curKey: `${key}_${typeId}~${this.randomId()}`
|
|
249
252
|
});
|
|
250
253
|
}
|
|
251
|
-
|
|
252
254
|
this.$set(this, 'labelConfig', copy);
|
|
253
255
|
this.$nextTick(() => {
|
|
254
256
|
this.hanldeBackfill();
|
|
@@ -262,8 +264,8 @@ export default create({
|
|
|
262
264
|
},
|
|
263
265
|
|
|
264
266
|
hanldeBackfill() {
|
|
265
|
-
const { labelConfig,
|
|
266
|
-
this.$set(this, 'labelSelectedEdit',
|
|
267
|
+
const { labelConfig, SelectedList = [], selectLabelId} = this;
|
|
268
|
+
this.$set(this, 'labelSelectedEdit', SelectedList);
|
|
267
269
|
if (typeof labelConfig === 'object') {
|
|
268
270
|
let keys = Object.keys(labelConfig || {});
|
|
269
271
|
keys.forEach(k => {
|
|
@@ -280,76 +282,76 @@ export default create({
|
|
|
280
282
|
},
|
|
281
283
|
|
|
282
284
|
// 标签处理
|
|
283
|
-
async handleEditLabel(v = {}, update = false) {
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
/**
|
|
305
|
-
* 回填的值可能不在数据中,但是不能丢失。
|
|
306
|
-
*/
|
|
307
|
-
isSelect = selectList.findIndex(i => i.labelId == n.labelId) !== -1;
|
|
308
|
-
n.isSelect = isSelect; // 是否已选
|
|
309
|
-
this.$set(n, 'isSelect', isSelect);
|
|
310
|
-
/**
|
|
311
|
-
* typeName 按照分类处理
|
|
312
|
-
* 没有分类创建分类,有则添加
|
|
313
|
-
*/
|
|
314
|
-
if (labelObj[n.typeName]) {
|
|
315
|
-
labelObj[n.typeName].itemList.push({ ...n });
|
|
316
|
-
} else {
|
|
317
|
-
labelObj[n.typeName] = {
|
|
318
|
-
itemList: [{ ...n }],
|
|
319
|
-
showAdd: false,
|
|
320
|
-
addVal: '',
|
|
321
|
-
typeName: n.typeName,
|
|
322
|
-
typeId: n.typeId
|
|
323
|
-
};
|
|
324
|
-
}
|
|
325
|
-
});
|
|
326
|
-
/**
|
|
327
|
-
* labelObj 展示的分类值
|
|
328
|
-
* labelList 原始数据结构
|
|
329
|
-
* selectList 已选的数据
|
|
330
|
-
*/
|
|
331
|
-
this.$set(v, 'labelObj', labelObj);
|
|
332
|
-
this.$set(v, 'labelList', labelList);
|
|
333
|
-
this.$set(this, 'labelSelectedEdit', selectList);
|
|
334
|
-
// 缓存
|
|
335
|
-
this.editLabelItem = v;
|
|
336
|
-
this.setLabelTypeStatus(results);
|
|
337
|
-
for (let key in labelObj) {
|
|
338
|
-
Object.assign(labelObj[key], {
|
|
339
|
-
curKey: this.randomId()
|
|
340
|
-
});
|
|
341
|
-
}
|
|
342
|
-
this.setLabelDeafultClick(labelObj);
|
|
285
|
+
// async handleEditLabel(v = {}, update = false) {
|
|
286
|
+
// try {
|
|
287
|
+
// if (this.isLock) return;
|
|
288
|
+
// if (v.labelList && !update) {
|
|
289
|
+
// this.handleLabelSelected(v.labelList, this.labelSelectedList, v.labelObj);
|
|
290
|
+
// this.inited = true;
|
|
291
|
+
// this.editLabelItem = v;
|
|
292
|
+
// this.setLabelDeafultClick(v.labelObj);
|
|
293
|
+
// } else {
|
|
294
|
+
// // TODO:
|
|
295
|
+
// const { rows, results } = await this.getLabelList(v);
|
|
296
|
+
// const labelList = rows || [];
|
|
297
|
+
// const labelObj = {};
|
|
298
|
+
// const cacheKey = `${v.val_key}_${v.name}`;
|
|
299
|
+
// // this.labelSelected[d.cacheKey]
|
|
300
|
+
// let isSelect = false;
|
|
301
|
+
// const selectList = update ? [...(this.labelSelectedEdit || [])] : [...(this.labelSelectedList || [])];
|
|
302
|
+
// labelList.forEach(n => {
|
|
303
|
+
// n.cacheKey = cacheKey;
|
|
304
|
+
// // 根据 labelId 处理默认选中
|
|
343
305
|
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
306
|
+
// /**
|
|
307
|
+
// * 回填的值可能不在数据中,但是不能丢失。
|
|
308
|
+
// */
|
|
309
|
+
// isSelect = selectList.findIndex(i => i.labelId == n.labelId) !== -1;
|
|
310
|
+
// n.isSelect = isSelect; // 是否已选
|
|
311
|
+
// this.$set(n, 'isSelect', isSelect);
|
|
312
|
+
// /**
|
|
313
|
+
// * typeName 按照分类处理
|
|
314
|
+
// * 没有分类创建分类,有则添加
|
|
315
|
+
// */
|
|
316
|
+
// if (labelObj[n.typeName]) {
|
|
317
|
+
// labelObj[n.typeName].itemList.push({ ...n });
|
|
318
|
+
// } else {
|
|
319
|
+
// labelObj[n.typeName] = {
|
|
320
|
+
// itemList: [{ ...n }],
|
|
321
|
+
// showAdd: false,
|
|
322
|
+
// addVal: '',
|
|
323
|
+
// typeName: n.typeName,
|
|
324
|
+
// typeId: n.typeId
|
|
325
|
+
// };
|
|
326
|
+
// }
|
|
327
|
+
// });
|
|
328
|
+
// /**
|
|
329
|
+
// * labelObj 展示的分类值
|
|
330
|
+
// * labelList 原始数据结构
|
|
331
|
+
// * selectList 已选的数据
|
|
332
|
+
// */
|
|
333
|
+
// this.$set(v, 'labelObj', labelObj);
|
|
334
|
+
// this.$set(v, 'labelList', labelList);
|
|
335
|
+
// this.$set(this, 'labelSelectedEdit', selectList);
|
|
336
|
+
// // 缓存
|
|
337
|
+
// this.editLabelItem = v;
|
|
338
|
+
// this.setLabelTypeStatus(results);
|
|
339
|
+
// for (let key in labelObj) {
|
|
340
|
+
// Object.assign(labelObj[key], {
|
|
341
|
+
// curKey: this.randomId()
|
|
342
|
+
// });
|
|
343
|
+
// }
|
|
344
|
+
// this.setLabelDeafultClick(labelObj);
|
|
345
|
+
|
|
346
|
+
// this.inited = true;
|
|
347
|
+
// }
|
|
348
|
+
// } catch (error) {
|
|
349
|
+
// this.$set(v, 'labelObj', {});
|
|
350
|
+
// this.$set(v, 'labelList', []);
|
|
351
|
+
// console.log(error);
|
|
352
|
+
// this.inited = true;
|
|
353
|
+
// }
|
|
354
|
+
// },
|
|
353
355
|
// 默认选中第一个分类
|
|
354
356
|
setLabelDeafultClick(labelObj, deafulteKey) {
|
|
355
357
|
if (!labelObj) return;
|
|
@@ -484,6 +486,8 @@ export default create({
|
|
|
484
486
|
let parentColor = '';
|
|
485
487
|
if (v.itemList?.length) {
|
|
486
488
|
parentColor = v.itemList[0].parentColor || v.parentColor || '';
|
|
489
|
+
} else {
|
|
490
|
+
parentColor = v?.parentColor || "";
|
|
487
491
|
}
|
|
488
492
|
|
|
489
493
|
const params = {
|
|
@@ -703,6 +707,64 @@ export default create({
|
|
|
703
707
|
max-height: calc(100vh - 109px);
|
|
704
708
|
}
|
|
705
709
|
}
|
|
710
|
+
.explicit-continer {
|
|
711
|
+
width: 100%;
|
|
712
|
+
border: 1px solid #d5d5d5;
|
|
713
|
+
// background: #F9F9F9;
|
|
714
|
+
/deep/ .ant-tabs-card {
|
|
715
|
+
.ant-tabs-nav-container {
|
|
716
|
+
height: 30px;
|
|
717
|
+
line-height: 30px;
|
|
718
|
+
margin-top: 0px;
|
|
719
|
+
.ant-tabs-tab-prev {
|
|
720
|
+
border-bottom: 1px solid #e8e8e8;
|
|
721
|
+
border-right: 1px solid #e8e8e8;
|
|
722
|
+
}
|
|
723
|
+
.ant-tabs-tab-next {
|
|
724
|
+
border-bottom: 1px solid #e8e8e8;
|
|
725
|
+
border-left: 1px solid #e8e8e8;
|
|
726
|
+
}
|
|
727
|
+
}
|
|
728
|
+
> .ant-tabs-content {
|
|
729
|
+
// height: 120px;
|
|
730
|
+
margin-top: -16px;
|
|
731
|
+
|
|
732
|
+
> .ant-tabs-tabpane {
|
|
733
|
+
background: #fff;
|
|
734
|
+
padding: 16px;
|
|
735
|
+
}
|
|
736
|
+
}
|
|
737
|
+
|
|
738
|
+
// ant-tabs-tab
|
|
739
|
+
|
|
740
|
+
> .ant-tabs-bar {
|
|
741
|
+
border-color: #fff;
|
|
742
|
+
.ant-tabs-tab {
|
|
743
|
+
margin-right:0;
|
|
744
|
+
border-radius:0;
|
|
745
|
+
line-height: 30px;
|
|
746
|
+
height: 30px;
|
|
747
|
+
|
|
748
|
+
border-right: 1px solid #e8e8e8!important;
|
|
749
|
+
border-bottom: 1px solid #e8e8e8;
|
|
750
|
+
border-top: none;
|
|
751
|
+
|
|
752
|
+
// border-color: transparent;
|
|
753
|
+
background: #F9F9F9;
|
|
754
|
+
&:first-of-type{
|
|
755
|
+
border-left: 1px solid #e8e8e8;
|
|
756
|
+
}
|
|
757
|
+
&.ant-tabs-tab-active {
|
|
758
|
+
border-bottom-color: #fff;
|
|
759
|
+
background: #fff;
|
|
760
|
+
}
|
|
761
|
+
}
|
|
762
|
+
|
|
763
|
+
}
|
|
764
|
+
|
|
765
|
+
.ant-tabs-bar;
|
|
766
|
+
}
|
|
767
|
+
}
|
|
706
768
|
}
|
|
707
769
|
.edit-label-type {
|
|
708
770
|
font-size: 12px;
|
|
@@ -40,6 +40,7 @@
|
|
|
40
40
|
@ok="handleSaveLabel"
|
|
41
41
|
@cancel="handleLabelCancel"
|
|
42
42
|
:maskClosable="false"
|
|
43
|
+
:destroyOnClose="true"
|
|
43
44
|
:width="modalWidth"
|
|
44
45
|
:cancelText="'取消'"
|
|
45
46
|
:okText="'确定'"
|
|
@@ -124,7 +125,8 @@ export default create({
|
|
|
124
125
|
modalWidth: '763px',
|
|
125
126
|
modalHeight: '404px',
|
|
126
127
|
maxHeight: '404px',
|
|
127
|
-
commonLabelList: []
|
|
128
|
+
commonLabelList: [],
|
|
129
|
+
multipleChoiceConfig: {}
|
|
128
130
|
};
|
|
129
131
|
},
|
|
130
132
|
props: {
|
|
@@ -179,7 +181,11 @@ export default create({
|
|
|
179
181
|
// 外显初始化
|
|
180
182
|
if(this.explicit){
|
|
181
183
|
this.handleEditLabel();
|
|
184
|
+
} else {
|
|
185
|
+
// 获取标签分类
|
|
186
|
+
this.handleGetMultipleChoiceConfig(this.item);
|
|
182
187
|
}
|
|
188
|
+
|
|
183
189
|
},
|
|
184
190
|
watch: {
|
|
185
191
|
selectedList: {
|
|
@@ -227,11 +233,16 @@ export default create({
|
|
|
227
233
|
this.hanldeSetLabelItem(d.labelId, false);
|
|
228
234
|
},
|
|
229
235
|
handleCommonLabelChange(v, d) {
|
|
230
|
-
|
|
236
|
+
let multipleChoiceConfig = this.multipleChoiceConfig;
|
|
237
|
+
let selectedList = this.labelSelectedList || [];
|
|
231
238
|
if (v) {
|
|
232
239
|
if (selectedList.some(n => n.labelId == d.labelId)) {
|
|
233
240
|
return;
|
|
234
241
|
}
|
|
242
|
+
// 不允许多选的类型,先删除,再新增
|
|
243
|
+
if('2' == multipleChoiceConfig[d.typeId]){
|
|
244
|
+
selectedList = selectedList.filter(item => item.typeId !== d.typeId);
|
|
245
|
+
}
|
|
235
246
|
selectedList.push(d);
|
|
236
247
|
} else {
|
|
237
248
|
const fdIndex = selectedList.findIndex(n => n.labelId == d.labelId);
|
|
@@ -251,9 +262,9 @@ export default create({
|
|
|
251
262
|
}
|
|
252
263
|
});
|
|
253
264
|
},
|
|
254
|
-
handleEditLabel() {
|
|
265
|
+
handleEditLabel(type) {
|
|
255
266
|
if (this.isLock) return;
|
|
256
|
-
if(!this.explicit) {
|
|
267
|
+
if(!this.explicit && type !== 'init') {
|
|
257
268
|
this.labelVisible = true;
|
|
258
269
|
}
|
|
259
270
|
this.handleGetLabelData(this.item)
|
|
@@ -331,7 +342,7 @@ export default create({
|
|
|
331
342
|
*/
|
|
332
343
|
this.$set(v, 'labelObj', labelObj);
|
|
333
344
|
this.$set(v, 'labelList', labelList);
|
|
334
|
-
this.$set(this, 'labelSelectedEdit', selectList);
|
|
345
|
+
update && this.$set(this, 'labelSelectedEdit', selectList);
|
|
335
346
|
// 缓存
|
|
336
347
|
this.editLabelItem = v;
|
|
337
348
|
this.setLabelTypeStatus(results);
|
|
@@ -340,51 +351,63 @@ export default create({
|
|
|
340
351
|
setLabelTypeStatus(results) {
|
|
341
352
|
if (!results) return false;
|
|
342
353
|
let keys = Object.keys(results);
|
|
343
|
-
|
|
354
|
+
let multipleChoiceConfig ={};
|
|
344
355
|
let choiceTypes = (results.typeList || []).reduce((obj, item) => {
|
|
345
|
-
|
|
356
|
+
multipleChoiceConfig[item.typeId] = item.multipleChoice
|
|
357
|
+
|
|
358
|
+
obj[item.typeName] = {
|
|
359
|
+
multipleChoice:item.multipleChoice,
|
|
360
|
+
parentColor: item.parentColor,
|
|
361
|
+
allowCreateByPersonal:item.allowCreateByPersonal
|
|
362
|
+
}
|
|
346
363
|
return obj;
|
|
347
364
|
}, {});
|
|
365
|
+
|
|
366
|
+
if(this.explicit){
|
|
367
|
+
this.multipleChoiceConfig = multipleChoiceConfig;
|
|
368
|
+
}
|
|
348
369
|
keys.forEach(key => {
|
|
349
370
|
if (key === 'typeList') return;
|
|
350
371
|
// 空,允许
|
|
351
372
|
if (key === 'emptyTypes') {
|
|
352
373
|
results[key].forEach(item => {
|
|
353
|
-
this.$set(this.editLabelItem.labelObj, item.typeName, {
|
|
354
|
-
multipleChoice: choiceTypes[item.typeName],
|
|
374
|
+
this.$set(this.editLabelItem.labelObj, item.typeName, Object.assign({
|
|
355
375
|
addVal: '',
|
|
356
376
|
showAdd: false,
|
|
357
377
|
itemList: [],
|
|
358
378
|
typeId: item.typeId,
|
|
359
379
|
typeName: item.typeName
|
|
360
|
-
});
|
|
380
|
+
},choiceTypes[item.typeName] || {}));
|
|
361
381
|
});
|
|
362
382
|
return;
|
|
363
383
|
}
|
|
364
384
|
if (utils.isPlainObject(results[key])) {
|
|
365
385
|
// 空,不允许
|
|
366
386
|
if (!this.editLabelItem.labelObj[key]) {
|
|
367
|
-
this.$set(this.editLabelItem.labelObj, key, {
|
|
368
|
-
multipleChoice: choiceTypes[key],
|
|
387
|
+
this.$set(this.editLabelItem.labelObj, key, Object.assign({
|
|
369
388
|
addVal: '',
|
|
370
389
|
showAdd: false,
|
|
371
390
|
itemList: false,
|
|
372
391
|
typeId: '',
|
|
373
392
|
typeName: key
|
|
374
|
-
});
|
|
393
|
+
},{...(choiceTypes[key] || {})}));
|
|
375
394
|
} else {
|
|
376
395
|
// 非空,不允许
|
|
377
396
|
this.$set(this.editLabelItem.labelObj[key], 'isNoAdd', true);
|
|
378
|
-
this.$set(this.editLabelItem.labelObj[key], 'multipleChoice', choiceTypes[key]);
|
|
397
|
+
this.$set(this.editLabelItem.labelObj[key], 'multipleChoice', choiceTypes[key]?.multipleChoice);
|
|
398
|
+
this.$set(this.editLabelItem.labelObj[key], 'allowCreateByPersonal', choiceTypes[key]?.allowCreateByPersonal);
|
|
399
|
+
this.$set(this.editLabelItem.labelObj[key], 'parentColor', choiceTypes[key]?.parentColor);
|
|
379
400
|
}
|
|
380
401
|
} else {
|
|
381
|
-
this.$set(this.editLabelItem.labelObj[key], 'multipleChoice', choiceTypes[key]);
|
|
402
|
+
this.$set(this.editLabelItem.labelObj[key], 'multipleChoice', choiceTypes[key]?.multipleChoice);
|
|
403
|
+
this.$set(this.editLabelItem.labelObj[key], 'allowCreateByPersonal', choiceTypes[key]?.allowCreateByPersonal);
|
|
404
|
+
this.$set(this.editLabelItem.labelObj[key], 'parentColor', choiceTypes[key]?.parentColor);
|
|
382
405
|
}
|
|
383
406
|
});
|
|
384
|
-
|
|
407
|
+
},
|
|
385
408
|
|
|
386
409
|
updateLabelData(){
|
|
387
|
-
this.handleGetLabelData(this.item)
|
|
410
|
+
this.handleGetLabelData(this.item, true)
|
|
388
411
|
},
|
|
389
412
|
|
|
390
413
|
/**
|
|
@@ -414,6 +437,18 @@ export default create({
|
|
|
414
437
|
this.$refs.labelFormContent?.hanldeSetLabelItem(id, state);
|
|
415
438
|
})
|
|
416
439
|
}
|
|
440
|
+
},
|
|
441
|
+
|
|
442
|
+
async handleGetMultipleChoiceConfig(v){
|
|
443
|
+
const { rows, results } = await this.getLabelList(v);
|
|
444
|
+
if (!results) return false;
|
|
445
|
+
let multipleChoiceConfig = (results.typeList || []).reduce((obj, item) => {
|
|
446
|
+
obj[item.typeId] = item.multipleChoice
|
|
447
|
+
return obj;
|
|
448
|
+
}, {});
|
|
449
|
+
|
|
450
|
+
this.multipleChoiceConfig = multipleChoiceConfig;
|
|
451
|
+
this.$set(this,'multipleChoiceConfig',multipleChoiceConfig);
|
|
417
452
|
}
|
|
418
453
|
}
|
|
419
454
|
});
|
|
@@ -445,6 +480,10 @@ export default create({
|
|
|
445
480
|
.tag-label {
|
|
446
481
|
/deep/ .ant-tag {
|
|
447
482
|
margin-bottom: 4px;
|
|
483
|
+
border: 1px solid #f1f1f1;
|
|
484
|
+
.anticon-close {
|
|
485
|
+
color: #fff;
|
|
486
|
+
}
|
|
448
487
|
}
|
|
449
488
|
}
|
|
450
489
|
.common-label {
|
|
@@ -44,25 +44,42 @@
|
|
|
44
44
|
<li v-if="isShowSetting('hideSearch') && !showRelatedTreeBtn" ref="inputSearchLi" class="baseSearch-input-search">
|
|
45
45
|
<template v-if="outSearchFieldList && outSearchFieldList.length">
|
|
46
46
|
<a-input
|
|
47
|
-
:style="{ width, margin: '0 8px 8px 0' }"
|
|
47
|
+
:style="{ width: inputSearchW + 'px', margin: '0 8px 8px 0' }"
|
|
48
48
|
allowClear
|
|
49
|
-
placeholder="
|
|
49
|
+
:placeholder="searchPlaceHolder"
|
|
50
50
|
:value="currentValue"
|
|
51
51
|
@input="$emit('input', $event.target.value)"
|
|
52
52
|
@pressEnter="outFilterChange"
|
|
53
|
+
class="input-search-com"
|
|
53
54
|
>
|
|
55
|
+
<template slot="prefix" v-if="showPlaceholderPrefix">
|
|
56
|
+
<a-tooltip
|
|
57
|
+
:title="searchPlaceHolder"
|
|
58
|
+
overlayClassName="basesearch-placeholder-tooltip"
|
|
59
|
+
>
|
|
60
|
+
<a-icon type="info-circle" />
|
|
61
|
+
</a-tooltip>
|
|
62
|
+
</template>
|
|
54
63
|
</a-input>
|
|
55
64
|
</template>
|
|
56
65
|
<a-input-search
|
|
57
66
|
v-else
|
|
58
|
-
class="my-input-search"
|
|
59
|
-
:style="{ width }"
|
|
67
|
+
class="my-input-search input-search-com"
|
|
68
|
+
:style="{ width: inputSearchW + 'px' }"
|
|
60
69
|
@search="onSearch"
|
|
61
70
|
allowClear
|
|
62
|
-
placeholder="
|
|
71
|
+
:placeholder="searchPlaceHolder"
|
|
63
72
|
:value="currentValue"
|
|
64
73
|
@input="$emit('input', $event.target.value)"
|
|
65
74
|
>
|
|
75
|
+
<template slot="prefix" v-if="showPlaceholderPrefix">
|
|
76
|
+
<a-tooltip
|
|
77
|
+
:title="searchPlaceHolder"
|
|
78
|
+
overlayClassName="basesearch-placeholder-tooltip"
|
|
79
|
+
>
|
|
80
|
+
<a-icon type="info-circle" />
|
|
81
|
+
</a-tooltip>
|
|
82
|
+
</template>
|
|
66
83
|
<a-button slot="enterButton" type="primary">
|
|
67
84
|
<svg-icon icon-class="xitongtubiaosousuo"></svg-icon>
|
|
68
85
|
</a-button>
|
|
@@ -83,7 +100,7 @@
|
|
|
83
100
|
|
|
84
101
|
<!-- 平铺列表 tree -->
|
|
85
102
|
<template v-if="showRelatedTreeBtn">
|
|
86
|
-
<li :class="[
|
|
103
|
+
<li v-if="showRelatedSearch" :class="[isRelatedSearchFold ? 'related-search-input' : 'related-search-input-expand']">
|
|
87
104
|
<a-input-search
|
|
88
105
|
ref="relatedSearchInput"
|
|
89
106
|
class="my-input-search my-input-search-related"
|
|
@@ -312,6 +329,10 @@
|
|
|
312
329
|
>{{ item.name }} {{ countTabCondition == 1 && (item.digital || item.digital === 0) ? '(' + (item.digital || 0) + ')' : '' }}</div
|
|
313
330
|
>
|
|
314
331
|
</div>
|
|
332
|
+
<!-- palceholder 文字宽度计算 -->
|
|
333
|
+
<span class="baseSearchPlaceholderSpan" ref="baseSearchPlaceholderSpan">
|
|
334
|
+
{{ searchPlaceHolder }}
|
|
335
|
+
</span>
|
|
315
336
|
</div>
|
|
316
337
|
</template>
|
|
317
338
|
|
|
@@ -535,7 +556,8 @@ export default create({
|
|
|
535
556
|
filterApiConfigOutSearch: {
|
|
536
557
|
type: Object,
|
|
537
558
|
default: () => ({})
|
|
538
|
-
}
|
|
559
|
+
},
|
|
560
|
+
useFieldList: Array
|
|
539
561
|
},
|
|
540
562
|
components: {
|
|
541
563
|
[Button.name]: Button,
|
|
@@ -713,6 +735,21 @@ export default create({
|
|
|
713
735
|
return function(key) {
|
|
714
736
|
return this.$attrs.tableOptions?.[key];
|
|
715
737
|
}
|
|
738
|
+
},
|
|
739
|
+
searchPlaceHolder() {
|
|
740
|
+
if (!this.useFieldList?.length || this.showRelatedTreeBtn) return "请输入关键字搜索";
|
|
741
|
+
let str = "";
|
|
742
|
+
let strList = this.useFieldList
|
|
743
|
+
?.map(item => {
|
|
744
|
+
if (item.isSearch != 1) return "";
|
|
745
|
+
return item.formTitle || item.alias || item.title;
|
|
746
|
+
})
|
|
747
|
+
.filter(Boolean);
|
|
748
|
+
str = "输入" + strList.join("/");
|
|
749
|
+
return str || "请输入关键字搜索";
|
|
750
|
+
},
|
|
751
|
+
showRelatedSearch() {
|
|
752
|
+
return this.showRelatedTreeBtn && this.isShowSetting('hideSearch')
|
|
716
753
|
}
|
|
717
754
|
},
|
|
718
755
|
data() {
|
|
@@ -760,7 +797,9 @@ export default create({
|
|
|
760
797
|
groupBtnObj: {},
|
|
761
798
|
btnObj: BTNOBJ,
|
|
762
799
|
printBtnStrategys: [], // 打印按钮组策略list
|
|
763
|
-
outRelationQuickSearch: [] // 关联表 筛选外显
|
|
800
|
+
outRelationQuickSearch: [], // 关联表 筛选外显
|
|
801
|
+
inputSearchW: 200,
|
|
802
|
+
showPlaceholderPrefix: false
|
|
764
803
|
};
|
|
765
804
|
},
|
|
766
805
|
created() {
|
|
@@ -1719,7 +1758,8 @@ export default create({
|
|
|
1719
1758
|
const obj = {
|
|
1720
1759
|
table: i
|
|
1721
1760
|
};
|
|
1722
|
-
paramsArray.push(utils.setParamsValue(setData[0].params, Object.assign(paramsData, { obj })));
|
|
1761
|
+
// paramsArray.push(utils.setParamsValue(setData[0].params, Object.assign(paramsData, { obj })));
|
|
1762
|
+
paramsArray.push(utils.setParamsValue(setData[0].params, Object.assign(paramsData, { obj, table: i })));
|
|
1723
1763
|
});
|
|
1724
1764
|
|
|
1725
1765
|
return paramsArray;
|
|
@@ -1728,13 +1768,23 @@ export default create({
|
|
|
1728
1768
|
let cloneList = _.cloneDeep(btnList);
|
|
1729
1769
|
|
|
1730
1770
|
printNumberList.forEach((item, index) => {
|
|
1731
|
-
cloneList[
|
|
1732
|
-
|
|
1733
|
-
|
|
1734
|
-
|
|
1735
|
-
|
|
1736
|
-
|
|
1737
|
-
|
|
1771
|
+
const i = cloneList.findIndex(v => v.settingObj[0].trigger_id == item.id);
|
|
1772
|
+
if (i > -1) {
|
|
1773
|
+
cloneList[i].__printConfig = {
|
|
1774
|
+
number: item.number,
|
|
1775
|
+
authorizationKey: item.authorizationKey,
|
|
1776
|
+
port: item.port,
|
|
1777
|
+
versionType: item.versionType,
|
|
1778
|
+
hisParams: { reportid: item.number }
|
|
1779
|
+
};
|
|
1780
|
+
}
|
|
1781
|
+
// cloneList[index].__printConfig = {
|
|
1782
|
+
// number: item.number,
|
|
1783
|
+
// authorizationKey: item.authorizationKey,
|
|
1784
|
+
// port: item.port,
|
|
1785
|
+
// versionType: item.versionType,
|
|
1786
|
+
// hisParams: { reportid: item.number }
|
|
1787
|
+
// };
|
|
1738
1788
|
});
|
|
1739
1789
|
|
|
1740
1790
|
return cloneList;
|
|
@@ -1761,7 +1811,8 @@ export default create({
|
|
|
1761
1811
|
number: item.number,
|
|
1762
1812
|
authorizationKey: data.authorizationKey,
|
|
1763
1813
|
versionType: data.versionType,
|
|
1764
|
-
port: data.port
|
|
1814
|
+
port: data.port,
|
|
1815
|
+
id: item.id
|
|
1765
1816
|
};
|
|
1766
1817
|
});
|
|
1767
1818
|
this.setPrintNumberCache({
|
|
@@ -2031,6 +2082,26 @@ export default create({
|
|
|
2031
2082
|
});
|
|
2032
2083
|
}
|
|
2033
2084
|
}
|
|
2085
|
+
},
|
|
2086
|
+
searchPlaceHolder: {
|
|
2087
|
+
immediate: true,
|
|
2088
|
+
handler(val) {
|
|
2089
|
+
if (!val || this.showRelatedTreeBtn) return;
|
|
2090
|
+
this.$nextTick(() => {
|
|
2091
|
+
this.showPlaceholderPrefix = false;
|
|
2092
|
+
let dom = this.$refs.baseSearchPlaceholderSpan;
|
|
2093
|
+
if(!dom) return;
|
|
2094
|
+
let w = dom.offsetWidth;
|
|
2095
|
+
console.log(w, "wwww");
|
|
2096
|
+
let maxW = this.showOutSearch ? 284 : 244;
|
|
2097
|
+
this.inputSearchW = w > maxW ? 300 : w < 200 ? 200 : w;
|
|
2098
|
+
if (w > maxW) {
|
|
2099
|
+
this.showPlaceholderPrefix = true;
|
|
2100
|
+
}
|
|
2101
|
+
this.onResize();
|
|
2102
|
+
console.log(this.inputSearchW);
|
|
2103
|
+
});
|
|
2104
|
+
}
|
|
2034
2105
|
}
|
|
2035
2106
|
}
|
|
2036
2107
|
});
|
|
@@ -2202,6 +2273,13 @@ export default create({
|
|
|
2202
2273
|
}
|
|
2203
2274
|
}
|
|
2204
2275
|
}
|
|
2276
|
+
.baseSearch-input-search {
|
|
2277
|
+
.input-search-com {
|
|
2278
|
+
input {
|
|
2279
|
+
padding: 4px 8px;
|
|
2280
|
+
}
|
|
2281
|
+
}
|
|
2282
|
+
}
|
|
2205
2283
|
}
|
|
2206
2284
|
/deep/ .num-picker {
|
|
2207
2285
|
position: relative;
|
|
@@ -2296,6 +2374,11 @@ export default create({
|
|
|
2296
2374
|
/* Internet Explorer 10+ */
|
|
2297
2375
|
font-family: 'Avenir', Helvetica, Arial, sans-serif;
|
|
2298
2376
|
}
|
|
2377
|
+
.baseSearchPlaceholderSpan {
|
|
2378
|
+
visibility: hidden;
|
|
2379
|
+
position: absolute;
|
|
2380
|
+
z-index: -1;
|
|
2381
|
+
}
|
|
2299
2382
|
}
|
|
2300
2383
|
</style>
|
|
2301
2384
|
<style lang="less">
|