cnhis-design-vue 2.0.4 → 2.0.5
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 +2 -0
- package/es/age/index.js +2 -2
- package/es/big-table/index.js +23 -23
- package/es/button/index.js +2 -2
- 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/form-table/index.js +17 -17
- package/es/index/index.js +324 -298
- 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 +24 -24
- package/es/select/index.js +3 -3
- package/es/select-label/index.js +3 -3
- package/es/select-person/index.js +169 -143
- package/es/select-person/style.css +1 -1
- package/es/table-filter/index.js +21 -21
- package/es/tag/index.js +1 -1
- package/es/verification-code/index.js +2 -2
- package/package.json +1 -1
- package/packages/select-person/select-person.vue +73 -56
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
checkable
|
|
45
45
|
:expandedKeys="expandedKeys"
|
|
46
46
|
:autoExpandParent="autoExpandParent"
|
|
47
|
-
:checkStrictly="
|
|
47
|
+
:checkStrictly="false"
|
|
48
48
|
:selectable="false"
|
|
49
49
|
:treeData="treeData.temp"
|
|
50
50
|
:load-data="getLoadChildData"
|
|
@@ -326,17 +326,12 @@ export default create({
|
|
|
326
326
|
return checked && item.type == 2;
|
|
327
327
|
});
|
|
328
328
|
let deptItems = this.dataList.dept.filter(item => {
|
|
329
|
-
let {
|
|
330
|
-
let parentId = this.getParentId(item);
|
|
329
|
+
let { key } = item;
|
|
331
330
|
let showKeys = [...this.checkedKeys.dept, ...otherItems];
|
|
332
331
|
let checked = showKeys.includes(key);
|
|
333
|
-
//
|
|
334
|
-
/** String(parentId) 类型不相等 */
|
|
335
|
-
if (isLeaf && parentId && this.checkedKeys.dept.some(v => v == parentId)) {
|
|
336
|
-
checked = false;
|
|
337
|
-
}
|
|
332
|
+
// 只展示最后一级的科室
|
|
338
333
|
item.itemType = 'dept';
|
|
339
|
-
return checked && item.type == 1;
|
|
334
|
+
return checked && item.type == 1 && (!item.children || (item.children && !item.children.length));
|
|
340
335
|
});
|
|
341
336
|
let roleItems = this.dataList.role.filter(item => {
|
|
342
337
|
let showKeys = [...this.checkedKeys.role, ...otherItems];
|
|
@@ -347,12 +342,12 @@ export default create({
|
|
|
347
342
|
if (this.selectType === 'multiple') {
|
|
348
343
|
deptItems.forEach(item => {
|
|
349
344
|
if (item.title) {
|
|
350
|
-
item.title = item.title.includes('
|
|
345
|
+
item.title = item.title.includes('(科室)') ? item.title : `${item.title}(科室)`;
|
|
351
346
|
}
|
|
352
347
|
});
|
|
353
348
|
roleItems.map(item => {
|
|
354
349
|
if (item.title) {
|
|
355
|
-
item.title = item.title.includes('
|
|
350
|
+
item.title = item.title.includes('(角色)') ? item.title : `${item.title}(角色)`;
|
|
356
351
|
}
|
|
357
352
|
return item;
|
|
358
353
|
});
|
|
@@ -381,13 +376,13 @@ export default create({
|
|
|
381
376
|
}
|
|
382
377
|
},
|
|
383
378
|
watch: {
|
|
384
|
-
defaultList: {
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
},
|
|
379
|
+
// defaultList: {
|
|
380
|
+
// immediate: true,
|
|
381
|
+
// handler(val) {
|
|
382
|
+
// if (!val) return;
|
|
383
|
+
// this.initDefault();
|
|
384
|
+
// }
|
|
385
|
+
// },
|
|
391
386
|
selectType: {
|
|
392
387
|
immediate: true,
|
|
393
388
|
handler(val) {
|
|
@@ -400,9 +395,7 @@ export default create({
|
|
|
400
395
|
immediate: true,
|
|
401
396
|
handler() {
|
|
402
397
|
this.staticDataInit();
|
|
403
|
-
|
|
404
|
-
this.staticDeptAndRoleDataInit();
|
|
405
|
-
}
|
|
398
|
+
this.staticDeptAndRoleDataInit();
|
|
406
399
|
const key = { person: 'main', dept: 'dept', role: 'role', multiple: 'main' }[this.selectType];
|
|
407
400
|
this.treeData.temp = this.treeData[key];
|
|
408
401
|
}
|
|
@@ -410,20 +403,16 @@ export default create({
|
|
|
410
403
|
roleData: {
|
|
411
404
|
immediate: true,
|
|
412
405
|
handler() {
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
this.treeData.temp = this.treeData[key];
|
|
417
|
-
}
|
|
406
|
+
this.staticDeptAndRoleDataInit();
|
|
407
|
+
const key = { person: 'main', dept: 'dept', role: 'role', multiple: 'main' }[this.selectType];
|
|
408
|
+
this.treeData.temp = this.treeData[key];
|
|
418
409
|
}
|
|
419
|
-
},
|
|
420
|
-
checkedTreeItem(val) {
|
|
421
|
-
this.$emit('check', [...val, ...this.defaultShowList]);
|
|
422
410
|
}
|
|
423
411
|
},
|
|
424
412
|
created() {},
|
|
425
413
|
mounted() {
|
|
426
414
|
this.getUsers();
|
|
415
|
+
this.initDefault();
|
|
427
416
|
},
|
|
428
417
|
methods: {
|
|
429
418
|
initDefault() {
|
|
@@ -431,7 +420,14 @@ export default create({
|
|
|
431
420
|
this.getDefaultList();
|
|
432
421
|
} else {
|
|
433
422
|
this.$nextTick(() => {
|
|
434
|
-
this.
|
|
423
|
+
const userIds = this.defaultList.filter(item => item.itemType === 'person').map(item => item.id);
|
|
424
|
+
const deptIds = this.defaultList.filter(item => item.itemType === 'dept').map(item => item.id);
|
|
425
|
+
const roleIds = this.defaultList.filter(item => item.itemType === 'role').map(item => item.id);
|
|
426
|
+
const key = ['main', 'dept', 'role'][this.typeActiveIndex];
|
|
427
|
+
this.checkedKeys.main = userIds;
|
|
428
|
+
this.checkedKeys.dept = deptIds;
|
|
429
|
+
this.checkedKeys.role = roleIds;
|
|
430
|
+
this.checkedKeys.temp = this.checkedKeys[key];
|
|
435
431
|
});
|
|
436
432
|
}
|
|
437
433
|
},
|
|
@@ -844,13 +840,13 @@ export default create({
|
|
|
844
840
|
this.searchChecked = checked;
|
|
845
841
|
}
|
|
846
842
|
this.checkAll(checked ? 1 : 2);
|
|
843
|
+
this.handleOk();
|
|
847
844
|
},
|
|
848
845
|
// type 1 全选 2 反选(清空)
|
|
849
846
|
checkAll(type) {
|
|
850
847
|
if (this.checkAllSearchTree(type)) return false;
|
|
851
848
|
const key = ['main', 'dept', 'role'][this.typeActiveIndex];
|
|
852
849
|
if (type == 1) {
|
|
853
|
-
console.log(key, this[`dataList${key.slice(0, 1).toUpperCase()}${key.slice(1)}Keys`], 'dqee2');
|
|
854
850
|
this.expandedKeys = [];
|
|
855
851
|
this.checkedKeys[key] = this[`dataList${key.slice(0, 1).toUpperCase()}${key.slice(1)}Keys`]; // dataListMainKeys dataListDeptKeys dataListRoleKeys;
|
|
856
852
|
this.checkedKeys.temp = this.checkedKeys[key];
|
|
@@ -1036,8 +1032,12 @@ export default create({
|
|
|
1036
1032
|
this.removedCheckedkeysDept(removedTag);
|
|
1037
1033
|
this.removedCheckedkeysRole(removedTag);
|
|
1038
1034
|
this.removedCheckedkeysOther(removedTag);
|
|
1039
|
-
|
|
1035
|
+
const propStr = ['person', 'dept', 'role'][this.typeActiveIndex];
|
|
1036
|
+
const checkedKeys = this.checkedTreeItem.filter(item => item.itemType === propStr).map(item => item.key);
|
|
1037
|
+
this.checkedKeys.temp = checkedKeys;
|
|
1038
|
+
this.handleEmitValue();
|
|
1040
1039
|
this.refreshSearchTree();
|
|
1040
|
+
this.isAllCheck(checkedKeys);
|
|
1041
1041
|
},
|
|
1042
1042
|
|
|
1043
1043
|
removeCheckedkeysIncludeChildren(parentKey) {
|
|
@@ -1068,12 +1068,27 @@ export default create({
|
|
|
1068
1068
|
}
|
|
1069
1069
|
}
|
|
1070
1070
|
},
|
|
1071
|
+
removeCheckedkeysIncludeChildrenDept(parentKey) {
|
|
1072
|
+
let needRemoveChildKeys = this.dataList.dept
|
|
1073
|
+
.filter(i => {
|
|
1074
|
+
let parentId = this.getParentId(i);
|
|
1075
|
+
return parentId == parentKey || i.key == parentKey;
|
|
1076
|
+
})
|
|
1077
|
+
.map(i => {
|
|
1078
|
+
return i.key;
|
|
1079
|
+
});
|
|
1080
|
+
const checkedKeys = this.checkedKeys.dept.filter(i => {
|
|
1081
|
+
return !needRemoveChildKeys.includes(i);
|
|
1082
|
+
});
|
|
1083
|
+
this.checkedKeys.dept = checkedKeys;
|
|
1084
|
+
},
|
|
1071
1085
|
removedCheckedkeysDept(tag) {
|
|
1072
1086
|
let checkedKeys = this.checkedKeys.dept;
|
|
1073
1087
|
let parentId = this.getParentId(tag);
|
|
1074
1088
|
for (let i = 0; i < checkedKeys.length; i++) {
|
|
1089
|
+
console.log(tag, checkedKeys[i], parentId, 'forfor');
|
|
1075
1090
|
if (tag.key == checkedKeys[i] && tag.key == parentId) {
|
|
1076
|
-
this.
|
|
1091
|
+
this.removeCheckedkeysIncludeChildrenDept(tag.key);
|
|
1077
1092
|
return false;
|
|
1078
1093
|
} else if (tag.key == checkedKeys[i]) {
|
|
1079
1094
|
checkedKeys.splice(i, 1);
|
|
@@ -1171,6 +1186,7 @@ export default create({
|
|
|
1171
1186
|
// let subList = [...submitData, ...this.defaultShowList];
|
|
1172
1187
|
|
|
1173
1188
|
this.$emit('pubCheckedTreeItem', [...this.checkedTreeItem, ...this.defaultShowList]);
|
|
1189
|
+
this.$emit('check', [...this.checkedTreeItem, ...this.defaultShowList]);
|
|
1174
1190
|
this.$emit('handleOk', this.checkedLeafKeys);
|
|
1175
1191
|
this.$emit('change', this.checkedLeafKeys, [...submitData, ...this.defaultShowList]);
|
|
1176
1192
|
this.$emit('submitData', [...submitData, ...this.defaultShowList]);
|
|
@@ -1293,33 +1309,34 @@ export default create({
|
|
|
1293
1309
|
// 处理全选框
|
|
1294
1310
|
this.isAllCheck(checkedKeys);
|
|
1295
1311
|
},
|
|
1296
|
-
onTreeCheck(
|
|
1297
|
-
// 断掉了父子关系 要不然当存在一二级科室的时候 搜索二级科室 再选中会把一级也选中
|
|
1312
|
+
onTreeCheck(checkedKeys, { checked, node }) {
|
|
1313
|
+
// 断掉了父子关系 要不然当存在一二级科室的时候 搜索二级科室 再选中会把一级也选中 ; 后续与产品沟通 不需要断 只取最后一级科室
|
|
1298
1314
|
const propStr = ['main', 'dept', 'role'][this.typeActiveIndex];
|
|
1299
1315
|
let totalCheckedKeys = [];
|
|
1300
1316
|
const childKeys = [];
|
|
1301
1317
|
// const keyData = this.dataList[propStr].find(item => item.key === node.eventKey);
|
|
1302
|
-
let keyData = {};
|
|
1303
|
-
vexutils.searchTree(this.treeData[propStr], item => {
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
});
|
|
1308
|
-
vexutils.searchTree(keyData.children, item => {
|
|
1309
|
-
|
|
1310
|
-
});
|
|
1311
|
-
if (checked) {
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
} else {
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
}
|
|
1318
|
-
this.checkedKeys.temp =
|
|
1319
|
-
this.checkedKeys[propStr] =
|
|
1320
|
-
this.isAllCheck(
|
|
1321
|
-
this.isSearchAllCheck(
|
|
1322
|
-
this.
|
|
1318
|
+
// let keyData = {};
|
|
1319
|
+
// vexutils.searchTree(this.treeData[propStr], item => {
|
|
1320
|
+
// if (item.key === node.eventKey) {
|
|
1321
|
+
// keyData = item;
|
|
1322
|
+
// }
|
|
1323
|
+
// });
|
|
1324
|
+
// vexutils.searchTree(keyData.children, item => {
|
|
1325
|
+
// childKeys.push(item.key);
|
|
1326
|
+
// });
|
|
1327
|
+
// if (checked) {
|
|
1328
|
+
// const singleCheckedKeys = this.getSingleCheckedKeys(propStr, this.treeData[propStr], keyData);
|
|
1329
|
+
// totalCheckedKeys = this.isSingleCheck ? singleCheckedKeys : [...new Set(checkedKeys.concat(childKeys))];
|
|
1330
|
+
// } else {
|
|
1331
|
+
// // totalCheckedKeys = checkedKeys;
|
|
1332
|
+
// totalCheckedKeys = this.isSingleCheck ? [] : checkedKeys.filter(key => !childKeys.includes(key));
|
|
1333
|
+
// }
|
|
1334
|
+
this.checkedKeys.temp = checkedKeys;
|
|
1335
|
+
this.checkedKeys[propStr] = checkedKeys;
|
|
1336
|
+
this.isAllCheck(checkedKeys);
|
|
1337
|
+
this.isSearchAllCheck(checkedKeys);
|
|
1338
|
+
this.$emit('pubCheckedTreeItem', [...this.checkedTreeItem, ...this.defaultShowList]);
|
|
1339
|
+
this.$emit('check', [...this.checkedTreeItem, ...this.defaultShowList]);
|
|
1323
1340
|
},
|
|
1324
1341
|
getSingleCheckedKeys(propStr, treeData, keyData) {
|
|
1325
1342
|
const firstTreeData = deepTraversalFirst(keyData) || [];
|