补召日志
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
style="position: relative"
|
||||
>
|
||||
<!-- @init="nodeClick" -->
|
||||
<PointTree @node-click="nodeClick" @pointTypeChange="pointTypeChange" @checkChange="handleCheckedNodesChange"></PointTree>
|
||||
<PointTree @node-click="nodeClick" @checkChange="handleCheckedNodesChange"></PointTree>
|
||||
<div class="device-control-right" >
|
||||
<el-tabs type="border-card" class="mb10" @tab-click="handleClick" v-model="activeTab">
|
||||
<el-tab-pane label="稳态补召" name="deviceInfo1">
|
||||
@@ -39,6 +39,7 @@ const eventRef = ref()
|
||||
const loading = ref(false)
|
||||
const activeTab = ref('deviceInfo1')
|
||||
const checkedNodes = ref<any[]>([]) // 存储左侧树勾选的节点
|
||||
const currentNode = ref<any>(null) // 存储当前点击的树节点
|
||||
|
||||
defineOptions({
|
||||
name: 'govern/monitorRecall/index'
|
||||
@@ -46,55 +47,41 @@ defineOptions({
|
||||
|
||||
// 处理子组件传递的勾选节点变化
|
||||
const handleCheckedNodesChange = (nodes: any[]) => {
|
||||
|
||||
checkedNodes.value = nodes
|
||||
|
||||
// 将勾选的节点传递给当前激活的tab组件
|
||||
if (activeTab.value === 'deviceInfo1' && steadyRef.value) {
|
||||
// 如果steadyRecall组件有接收勾选节点的方法,可以调用
|
||||
if (steadyRef.value.setCheckedNodes) {
|
||||
steadyRef.value.setCheckedNodes(nodes)
|
||||
}
|
||||
} else if (activeTab.value === 'deviceInfo2' && eventRef.value) {
|
||||
// 如果eventRecall组件有接收勾选节点的方法,可以调用
|
||||
if (eventRef.value.setCheckedNodes) {
|
||||
eventRef.value.setCheckedNodes(nodes)
|
||||
}
|
||||
}
|
||||
checkedNodes.value = nodes
|
||||
}
|
||||
|
||||
// tab切换时的处理
|
||||
const handleClick = (tab: any) => {
|
||||
activeTab.value = tab.props.name
|
||||
|
||||
// tab切换时刷新对应组件的数据
|
||||
nextTick(() => {
|
||||
if (tab.props.name === 'deviceInfo1' && steadyRef.value) {
|
||||
// 刷新稳态补召数据
|
||||
if (steadyRef.value.refreshData) {
|
||||
steadyRef.value.refreshData(checkedNodes.value)
|
||||
} else if (steadyRef.value.getTableParams) {
|
||||
// 如果有getTableParams方法,调用它
|
||||
steadyRef.value.getTableParams({ nodes: checkedNodes.value })
|
||||
}
|
||||
|
||||
} else if (tab.props.name === 'deviceInfo2' && eventRef.value) {
|
||||
// 刷新暂态补召数据
|
||||
if (eventRef.value.refreshData) {
|
||||
eventRef.value.refreshData(checkedNodes.value)
|
||||
} else if (eventRef.value.getTableParams) {
|
||||
// 如果有getTableParams方法,调用它
|
||||
eventRef.value.getTableParams({ nodes: checkedNodes.value })
|
||||
}
|
||||
// tab切换后触发查询
|
||||
triggerEventRecallQuery()
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
const nodeClick = (node: any) => {
|
||||
|
||||
currentNode.value = node
|
||||
// 只有在暂态补召页面时才触发查询
|
||||
if (activeTab.value === 'deviceInfo2') {
|
||||
triggerEventRecallQuery()
|
||||
}
|
||||
}
|
||||
|
||||
const pointTypeChange = (type: any, node: any) => {
|
||||
|
||||
// 触发暂态补召查询
|
||||
const triggerEventRecallQuery = () => {
|
||||
nextTick(() => {
|
||||
if (activeTab.value === 'deviceInfo2' && eventRef.value) {
|
||||
// 将当前点击的节点传递给暂态补召组件
|
||||
if (eventRef.value.handleTreeNodeClick) {
|
||||
eventRef.value.handleTreeNodeClick(currentNode.value)
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user