@yoooloo42/bean 1.0.36 → 1.0.37
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/dist/index.cjs.js +170 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +170 -1
- package/dist/index.esm.js.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs.js
CHANGED
|
@@ -5429,12 +5429,181 @@ var sort = {
|
|
|
5429
5429
|
uniqueObjectArrayByFields
|
|
5430
5430
|
};
|
|
5431
5431
|
|
|
5432
|
+
// Element - Tree 树形控件
|
|
5433
|
+
// label, children
|
|
5434
|
+
// 扁平化的源数据转为树形结构数据
|
|
5435
|
+
|
|
5436
|
+
|
|
5437
|
+
function treeRoot (para) {
|
|
5438
|
+
let data = JSON.parse(JSON.stringify(para.data)), // 数据源
|
|
5439
|
+
evalCode = para.evalCode, // 代码字段
|
|
5440
|
+
evalText = para.evalText, // 文本字段
|
|
5441
|
+
evalFather = para.evalFather, // 父节点字段
|
|
5442
|
+
evalNode = para.evalNode, // 节点类型
|
|
5443
|
+
evalAppendix = para.evalAppendix; // 数据附加
|
|
5444
|
+
|
|
5445
|
+
let tree = [], // 二叉树
|
|
5446
|
+
data0 = JSON.parse(JSON.stringify(data));
|
|
5447
|
+
|
|
5448
|
+
// 根节点
|
|
5449
|
+
for (let i = 0; i < data.length; i++) {
|
|
5450
|
+
if (!data[i].father) { // 根节点
|
|
5451
|
+
tree.push({
|
|
5452
|
+
treeItemCode: data[i][evalCode],
|
|
5453
|
+
treeItemText: data[i][evalText],
|
|
5454
|
+
treeItemFather: data[i][evalFather],
|
|
5455
|
+
treeItemNode: data[i][evalNode],
|
|
5456
|
+
treeItemAppendix: data[i][evalAppendix],
|
|
5457
|
+
label: data[i][evalText]
|
|
5458
|
+
});
|
|
5459
|
+
data.splice(i, 1);
|
|
5460
|
+
i--;
|
|
5461
|
+
} else {
|
|
5462
|
+
let a = data0.find(j => {
|
|
5463
|
+
return j[evalCode] === data[i][evalFather]
|
|
5464
|
+
});
|
|
5465
|
+
if (!a) { // 节点数据异常:父节点未找到,置为根节点
|
|
5466
|
+
tree.push({
|
|
5467
|
+
treeItemCode: data[i][evalCode],
|
|
5468
|
+
treeItemText: data[i][evalText],
|
|
5469
|
+
treeItemFather: data[i][evalFather],
|
|
5470
|
+
treeItemNode: data[i][evalNode],
|
|
5471
|
+
treeItemAppendix: data[i][evalAppendix],
|
|
5472
|
+
label: data[i][evalText]
|
|
5473
|
+
});
|
|
5474
|
+
data.splice(i, 1);
|
|
5475
|
+
i--;
|
|
5476
|
+
}
|
|
5477
|
+
}
|
|
5478
|
+
}
|
|
5479
|
+
|
|
5480
|
+
// 树节点
|
|
5481
|
+
let iWhile = 0;
|
|
5482
|
+
while (data.length > 0) {
|
|
5483
|
+
if (iWhile > data.length) {
|
|
5484
|
+
break
|
|
5485
|
+
} // 防止意外死循环
|
|
5486
|
+
|
|
5487
|
+
// 正序筛查
|
|
5488
|
+
data = sort.sortObjectArrayMultiLevel(data, {[evalCode]: 1});
|
|
5489
|
+
for (let i = 0; i < data.length; i++) {
|
|
5490
|
+
let node = treeNode({
|
|
5491
|
+
dataItem: data[i],
|
|
5492
|
+
evalCode,
|
|
5493
|
+
evalText,
|
|
5494
|
+
evalFather,
|
|
5495
|
+
evalNode,
|
|
5496
|
+
evalAppendix,
|
|
5497
|
+
tree
|
|
5498
|
+
});
|
|
5499
|
+
tree = node.tree;
|
|
5500
|
+
if (node.updated) {
|
|
5501
|
+
data.splice(i, 1);
|
|
5502
|
+
i--;
|
|
5503
|
+
}
|
|
5504
|
+
}
|
|
5505
|
+
|
|
5506
|
+
// 倒序筛查
|
|
5507
|
+
data = sort.sortObjectArrayMultiLevel(data, {[evalCode]: -1});
|
|
5508
|
+
for (let i = 0; i < data.length; i++) {
|
|
5509
|
+
let node = treeNode({
|
|
5510
|
+
dataItem: data[i],
|
|
5511
|
+
evalCode,
|
|
5512
|
+
evalText,
|
|
5513
|
+
evalFather,
|
|
5514
|
+
evalNode,
|
|
5515
|
+
evalAppendix,
|
|
5516
|
+
tree
|
|
5517
|
+
});
|
|
5518
|
+
tree = node.tree;
|
|
5519
|
+
if (node.updated) {
|
|
5520
|
+
data.splice(i, 1);
|
|
5521
|
+
i--;
|
|
5522
|
+
}
|
|
5523
|
+
}
|
|
5524
|
+
iWhile++;
|
|
5525
|
+
}
|
|
5526
|
+
|
|
5527
|
+
// console.log(tree)
|
|
5528
|
+
return tree
|
|
5529
|
+
}
|
|
5530
|
+
|
|
5531
|
+
function treeNode (para) {
|
|
5532
|
+
let dataItem = para.dataItem, // 数据节点
|
|
5533
|
+
evalCode = para.evalCode, // 代码字段
|
|
5534
|
+
evalText = para.evalText, // 文本字段
|
|
5535
|
+
evalFather = para.evalFather, // 父节点字段
|
|
5536
|
+
evalNode = para.evalNode, // 节点类型
|
|
5537
|
+
evalAppendix = para.evalAppendix, // 数据附加
|
|
5538
|
+
tree = para.tree; // 二叉树
|
|
5539
|
+
|
|
5540
|
+
for (let i = 0; i < tree.length; i++) {
|
|
5541
|
+
if (dataItem[evalFather] && dataItem[evalFather] === tree[i].treeItemCode) {
|
|
5542
|
+
if (!(tree[i].children && tree[i].children.length > 0)) {
|
|
5543
|
+
tree[i].children = [];
|
|
5544
|
+
}
|
|
5545
|
+
tree[i].children.push({
|
|
5546
|
+
treeItemCode: dataItem[evalCode],
|
|
5547
|
+
treeItemText: dataItem[evalText],
|
|
5548
|
+
treeItemFather: dataItem[evalFather],
|
|
5549
|
+
treeItemNode: dataItem[evalNode],
|
|
5550
|
+
treeItemAppendix: dataItem[evalAppendix],
|
|
5551
|
+
label: dataItem[evalText]
|
|
5552
|
+
});
|
|
5553
|
+
|
|
5554
|
+
return {
|
|
5555
|
+
tree,
|
|
5556
|
+
updated: true
|
|
5557
|
+
}
|
|
5558
|
+
} else if (tree[i].treeItemFather && tree[i].treeItemFather === dataItem[evalCode]) {
|
|
5559
|
+
let a = JSON.parse(JSON.stringify(tree[i]));
|
|
5560
|
+
tree[i] = {};
|
|
5561
|
+
tree[i].treeItemCode = dataItem[evalCode];
|
|
5562
|
+
tree[i].treeItemText = dataItem[evalText];
|
|
5563
|
+
tree[i].treeItemFather = dataItem[evalFather];
|
|
5564
|
+
tree[i].treeItemNode = dataItem[evalNode];
|
|
5565
|
+
tree[i].treeItemAppendix = dataItem[evalAppendix];
|
|
5566
|
+
tree[i].label = dataItem[evalText];
|
|
5567
|
+
tree[i].children = [];
|
|
5568
|
+
tree[i].children.push(a);
|
|
5569
|
+
|
|
5570
|
+
return {
|
|
5571
|
+
tree,
|
|
5572
|
+
updated: true
|
|
5573
|
+
}
|
|
5574
|
+
} else if (tree[i].children && tree[i].children.length > 0) {
|
|
5575
|
+
let node = treeNode({
|
|
5576
|
+
dataItem,
|
|
5577
|
+
evalCode,
|
|
5578
|
+
evalText,
|
|
5579
|
+
evalFather,
|
|
5580
|
+
evalNode,
|
|
5581
|
+
evalAppendix,
|
|
5582
|
+
tree: tree[i].children
|
|
5583
|
+
});
|
|
5584
|
+
|
|
5585
|
+
if (node.updated) return {
|
|
5586
|
+
tree,
|
|
5587
|
+
updated: true
|
|
5588
|
+
}
|
|
5589
|
+
}
|
|
5590
|
+
}
|
|
5591
|
+
return {
|
|
5592
|
+
tree,
|
|
5593
|
+
updated: false
|
|
5594
|
+
}
|
|
5595
|
+
}
|
|
5596
|
+
var tree = {
|
|
5597
|
+
treeRoot
|
|
5598
|
+
};
|
|
5599
|
+
|
|
5432
5600
|
var unclassified = {
|
|
5433
5601
|
dateFormat: dateFormat$1,
|
|
5434
5602
|
deepClone: deepClone$1,
|
|
5435
5603
|
random: random$1,
|
|
5436
5604
|
regexp,
|
|
5437
|
-
sort
|
|
5605
|
+
sort,
|
|
5606
|
+
tree
|
|
5438
5607
|
};
|
|
5439
5608
|
|
|
5440
5609
|
var index = {
|