优化项目
This commit is contained in:
@@ -39,6 +39,21 @@ export function createLineTreeDecorators(getPrimaryColor: () => string): LineTre
|
||||
|
||||
export type TreeRefKey = 'treeRef1' | 'treeRef2' | 'treeRef3' | 'treeRef4'
|
||||
|
||||
/** 线路树可选叶子节点元数据 */
|
||||
export const LINE_LEAF_META = { level: 3, type: 'line' as const }
|
||||
|
||||
/** 是否为线路树可选叶子(监测点/线路) */
|
||||
export function isLineTreeLeaf(node: any): boolean {
|
||||
if (!node?.id) return false
|
||||
return node.type === 'line' || node.level === 3
|
||||
}
|
||||
|
||||
/** 是否为报告/导出可选监测点 */
|
||||
export function isReportMonitorPoint(node: any): boolean {
|
||||
if (!node?.id) return false
|
||||
return isLineTreeLeaf(node) || node.level === 3 || (!node.children?.length && !!node.pid)
|
||||
}
|
||||
|
||||
export interface DecorateLineTreeOptions {
|
||||
/** 是否禁用父级节点(分析树隐藏父节点,测点树不禁用) */
|
||||
disableParents?: boolean
|
||||
@@ -69,7 +84,11 @@ export function decorateLineTree(
|
||||
...parentDisabled
|
||||
})
|
||||
grand.children?.forEach((leaf: any) => {
|
||||
applyMeta(leaf, { icon: 'el-icon-Platform', color: statusColor(leaf.comFlag) })
|
||||
applyMeta(leaf, {
|
||||
icon: 'el-icon-Platform',
|
||||
color: statusColor(leaf.comFlag),
|
||||
...LINE_LEAF_META
|
||||
})
|
||||
leaves.engineering.push(leaf)
|
||||
})
|
||||
})
|
||||
@@ -90,7 +109,11 @@ export function decorateLineTree(
|
||||
...parentDisabled
|
||||
})
|
||||
l3.children?.forEach((l4: any) => {
|
||||
applyMeta(l4, { icon: 'el-icon-Platform', color: statusColor(l4.comFlag) })
|
||||
applyMeta(l4, {
|
||||
icon: 'el-icon-Platform',
|
||||
color: statusColor(l4.comFlag),
|
||||
...LINE_LEAF_META
|
||||
})
|
||||
leaves.govern.push(l4)
|
||||
})
|
||||
})
|
||||
@@ -100,7 +123,11 @@ export function decorateLineTree(
|
||||
item.children?.forEach((l1: any) => {
|
||||
applyMeta(l1, { icon: 'el-icon-Platform', color: statusColor(l1.comFlag) })
|
||||
l1.children?.forEach((l2: any) => {
|
||||
applyMeta(l2, { icon: 'el-icon-Platform', color: statusColor(l2.comFlag) })
|
||||
applyMeta(l2, {
|
||||
icon: 'el-icon-Platform',
|
||||
color: statusColor(l2.comFlag),
|
||||
...LINE_LEAF_META
|
||||
})
|
||||
leaves.portable.push(l2)
|
||||
})
|
||||
})
|
||||
@@ -117,7 +144,11 @@ export function decorateLineTree(
|
||||
...parentDisabled
|
||||
})
|
||||
l3.children?.forEach((l4: any) => {
|
||||
applyMeta(l4, { icon: 'el-icon-Platform', color: statusColor(l4.comFlag) })
|
||||
applyMeta(l4, {
|
||||
icon: 'el-icon-Platform',
|
||||
color: statusColor(l4.comFlag),
|
||||
...LINE_LEAF_META
|
||||
})
|
||||
leaves.monitor.push(l4)
|
||||
})
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user