2024-11-19 19:34:00 +08:00
|
|
|
|
<template>
|
2024-12-18 20:26:18 +08:00
|
|
|
|
<el-dialog :append-to-body="appendToBody" class="dialog" title="数据查询" :model-value='visible' @close="close"
|
|
|
|
|
|
v-bind="dialogBig" :draggable="false" style="margin-left: 20%;">
|
2024-12-18 18:53:55 +08:00
|
|
|
|
<div class="data-check-dialog">
|
|
|
|
|
|
<div class="data-check-head">
|
|
|
|
|
|
<el-form :model='formContent' label-width="auto" class="form-three ">
|
|
|
|
|
|
<el-form-item label="检测脚本">
|
2024-12-25 13:22:54 +08:00
|
|
|
|
<el-input v-model='formContent.scriptName' :disabled="true"/>
|
2024-12-18 18:53:55 +08:00
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item label="误差体系">
|
|
|
|
|
|
<el-input v-model='formContent.errorSysName' :disabled="true"/>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item label="数据原则">
|
|
|
|
|
|
<el-input v-model='formContent.dataRule' :disabled="true"/>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item label="设备名称">
|
|
|
|
|
|
<el-input v-model='formContent.deviceName' :disabled="true"/>
|
|
|
|
|
|
</el-form-item>
|
|
|
|
|
|
<el-form-item label='通道号'>
|
2024-12-31 19:03:52 +08:00
|
|
|
|
<el-select v-model="formContent.chnNum">
|
2024-12-28 16:50:32 +08:00
|
|
|
|
<el-option v-for="item in chnList" :key="item.value" :label="item.label"
|
2024-12-18 18:53:55 +08:00
|
|
|
|
:value="item.value"/>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
2025-01-06 08:51:14 +08:00
|
|
|
|
|
|
|
|
|
|
<el-form-item v-if="harmNumList.length" label='谐波次数'>
|
|
|
|
|
|
<el-select v-model="currentHarmNum">
|
|
|
|
|
|
<el-option v-for="item in harmNumList" :key="item.value" :label="item.label" :value="item.value"/>
|
|
|
|
|
|
</el-select>
|
|
|
|
|
|
</el-form-item>
|
2024-12-18 18:53:55 +08:00
|
|
|
|
</el-form>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<div class="data-check-body">
|
|
|
|
|
|
<div class="content-left-tree">
|
2024-12-18 20:26:18 +08:00
|
|
|
|
<div>
|
2024-12-31 19:03:52 +08:00
|
|
|
|
<el-radio-group v-model="switchItem" @change="handleSwitchChange">
|
2024-12-25 13:22:54 +08:00
|
|
|
|
<el-radio-button label="不符合测试项" :value="0"/>
|
2024-12-20 10:19:58 +08:00
|
|
|
|
<el-radio-button label="全部测试项" :value="1"/>
|
2024-12-18 18:53:55 +08:00
|
|
|
|
</el-radio-group>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
<div class="content-tree">
|
2025-01-03 18:57:35 +08:00
|
|
|
|
<el-tree v-if="switchItem === 0" :default-expanded-keys="defaultExpandedKeys" node-key="index"
|
2025-01-05 14:52:37 +08:00
|
|
|
|
:data="treeDataUnqualified" :props="defaultProps" @node-click="handleNodeClick"
|
|
|
|
|
|
class="custom-tree">
|
2024-12-31 19:54:27 +08:00
|
|
|
|
<template #default="{ node, data }">
|
2025-01-03 18:57:35 +08:00
|
|
|
|
<span class="custom-tree-node">{{ data.scriptTypeName }}</span>
|
2024-12-31 19:54:27 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
</el-tree>
|
2025-01-03 18:57:35 +08:00
|
|
|
|
<el-tree v-if="switchItem === 1" :default-expanded-keys="defaultExpandedKeys" node-key="index"
|
2024-12-31 19:54:27 +08:00
|
|
|
|
:data="treeDataAll" :props="defaultProps" @node-click="handleNodeClick" class="custom-tree">
|
|
|
|
|
|
<template #default="{ node, data }">
|
2025-01-03 18:57:35 +08:00
|
|
|
|
<span class="custom-tree-node">{{ data.scriptTypeName }}</span>
|
2024-12-31 19:54:27 +08:00
|
|
|
|
</template>
|
|
|
|
|
|
</el-tree>
|
2024-12-18 18:53:55 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<div class="content-right">
|
|
|
|
|
|
<div class="content-right-title">
|
2025-01-05 14:52:37 +08:00
|
|
|
|
<span class="content-right-title-text">当前检测项目:</span>
|
2025-01-06 08:51:14 +08:00
|
|
|
|
<el-popover trigger="hover" :content="currentDesc? currentDesc : '无'" popper-class="popover-class"
|
|
|
|
|
|
width="32%" placement="right-start">
|
2025-01-05 14:52:37 +08:00
|
|
|
|
<template #reference>
|
|
|
|
|
|
<el-button type="text" style="font-size: 16px;">
|
|
|
|
|
|
{{ currentScriptTypeName ? currentScriptTypeName : '无' }}
|
|
|
|
|
|
</el-button>
|
|
|
|
|
|
</template>
|
|
|
|
|
|
</el-popover>
|
|
|
|
|
|
<!-- <el-divider>当前检测项目</el-divider>-->
|
|
|
|
|
|
<!-- <div class="content-right-title-desc">-->
|
|
|
|
|
|
<!-- {{ currentDesc ? currentDesc : "无" }}-->
|
|
|
|
|
|
<!-- </div>-->
|
2024-12-18 18:53:55 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
<div class="content-right-Tabs">
|
2024-12-25 18:04:16 +08:00
|
|
|
|
<el-tabs type="border-card" v-model="activeTab">
|
2024-12-18 18:53:55 +08:00
|
|
|
|
<el-tab-pane label="检测结果" name="resultTab">
|
2025-01-06 08:51:14 +08:00
|
|
|
|
<DataCheckResultTable :tableData="checkResultData" :info="infoMsg"/>
|
2024-12-18 18:53:55 +08:00
|
|
|
|
</el-tab-pane>
|
|
|
|
|
|
<el-tab-pane label="原始数据" name="rawDataTab">
|
2025-01-03 18:57:35 +08:00
|
|
|
|
<DataCheckRawDataTable :tableData="rawTableData"/>
|
2024-12-18 18:53:55 +08:00
|
|
|
|
</el-tab-pane>
|
|
|
|
|
|
</el-tabs>
|
|
|
|
|
|
</div>
|
2024-11-19 19:34:00 +08:00
|
|
|
|
</div>
|
2024-12-18 18:53:55 +08:00
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</el-dialog>
|
2024-11-19 19:34:00 +08:00
|
|
|
|
|
|
|
|
|
|
</template>
|
|
|
|
|
|
<script setup lang='ts'>
|
2024-12-18 18:53:55 +08:00
|
|
|
|
import {dialogBig} from '@/utils/elementBind'
|
|
|
|
|
|
import {reactive, ref} from 'vue'
|
2024-11-19 19:34:00 +08:00
|
|
|
|
import DataCheckResultTable from './dataCheckResultTable.vue'
|
|
|
|
|
|
import DataCheckRawDataTable from './dataCheckRawDataTable.vue'
|
2024-12-23 13:23:28 +08:00
|
|
|
|
import {CheckData} from "@/api/check/interface";
|
2024-12-30 14:41:34 +08:00
|
|
|
|
import {useDictStore} from "@/stores/modules/dict";
|
2024-12-30 20:55:11 +08:00
|
|
|
|
import {useCheckStore} from "@/stores/modules/check";
|
2025-01-02 20:27:36 +08:00
|
|
|
|
import {getFormData, getTreeData} from "@/api/check/test";
|
2024-12-18 18:53:55 +08:00
|
|
|
|
|
2024-12-20 10:19:58 +08:00
|
|
|
|
const {appendToBody} = withDefaults(defineProps<{
|
|
|
|
|
|
appendToBody: boolean
|
2025-01-02 18:00:58 +08:00
|
|
|
|
}>(), {appendToBody: true})
|
2024-12-18 20:26:18 +08:00
|
|
|
|
|
2024-12-25 18:04:16 +08:00
|
|
|
|
const defaultProps = {
|
2025-01-03 18:57:35 +08:00
|
|
|
|
label: "scriptTypeName",
|
2024-12-25 18:04:16 +08:00
|
|
|
|
children: "children",
|
|
|
|
|
|
};
|
|
|
|
|
|
|
2024-12-30 14:41:34 +08:00
|
|
|
|
const dictStore = useDictStore()
|
2024-12-30 20:55:11 +08:00
|
|
|
|
const checkStore = useCheckStore()
|
2024-12-30 14:41:34 +08:00
|
|
|
|
|
2024-12-28 16:50:32 +08:00
|
|
|
|
const visible = ref(false)
|
|
|
|
|
|
|
2025-01-06 08:51:14 +08:00
|
|
|
|
// 格式化数字
|
|
|
|
|
|
const fixed = 4;
|
|
|
|
|
|
|
2024-12-25 18:04:16 +08:00
|
|
|
|
// 表单数据
|
2024-12-23 13:23:28 +08:00
|
|
|
|
const formContent = reactive<CheckData.DataCheck>({
|
2024-12-25 13:22:54 +08:00
|
|
|
|
scriptName: '',
|
|
|
|
|
|
errorSysName: '',
|
|
|
|
|
|
dataRule: '',
|
|
|
|
|
|
deviceName: '',
|
2024-12-31 19:03:52 +08:00
|
|
|
|
chnNum: '',
|
2024-12-18 18:53:55 +08:00
|
|
|
|
})
|
2025-01-06 08:51:14 +08:00
|
|
|
|
// 当前选中的谐波次数
|
|
|
|
|
|
const currentHarmNum = ref<string>("-1")
|
|
|
|
|
|
// 谐波次数列表
|
|
|
|
|
|
const harmNumList = reactive([])
|
|
|
|
|
|
|
2024-12-28 16:50:32 +08:00
|
|
|
|
let deviceId: string = ''
|
2024-12-31 14:27:36 +08:00
|
|
|
|
let scriptType: string | null = null
|
2024-12-28 16:50:32 +08:00
|
|
|
|
|
2024-12-25 18:04:16 +08:00
|
|
|
|
// 通道下拉列表
|
2024-12-28 16:50:32 +08:00
|
|
|
|
let chnList: any[] = []
|
2024-12-25 18:04:16 +08:00
|
|
|
|
|
|
|
|
|
|
// 不符合测试项、全部测试项切换
|
2025-01-04 16:33:23 +08:00
|
|
|
|
let switchItem = 0
|
|
|
|
|
|
|
2024-12-31 19:03:52 +08:00
|
|
|
|
// 左侧树数据
|
2025-01-03 18:57:35 +08:00
|
|
|
|
let treeDataUnqualified: CheckData.TreeItem[] = []
|
|
|
|
|
|
let treeDataAll: CheckData.TreeItem[] = []
|
2025-01-06 08:51:14 +08:00
|
|
|
|
|
2024-12-31 19:03:52 +08:00
|
|
|
|
|
2024-12-25 13:22:54 +08:00
|
|
|
|
// 左侧树被选中的叶子节点id
|
2025-01-03 18:57:35 +08:00
|
|
|
|
const checkIndex = ref<string>('')
|
2024-12-18 18:53:55 +08:00
|
|
|
|
|
2025-01-05 14:52:37 +08:00
|
|
|
|
// 当前检测项目名称
|
|
|
|
|
|
const currentScriptTypeName = ref('')
|
|
|
|
|
|
// 当前检测项目描述
|
2025-01-03 18:57:35 +08:00
|
|
|
|
const currentDesc = ref('');
|
2024-12-25 18:04:16 +08:00
|
|
|
|
// 右侧Tab选中项
|
|
|
|
|
|
const activeTab = ref<string>('resultTab')
|
2025-01-03 11:27:36 +08:00
|
|
|
|
|
2025-01-06 08:51:14 +08:00
|
|
|
|
//存放相应的表格数据
|
|
|
|
|
|
let resTableData: { resultData: Map<string, any>, rawData: Map<string, any> } = {}
|
|
|
|
|
|
|
2024-12-25 13:22:54 +08:00
|
|
|
|
// 检测结果表格数据
|
2025-01-06 08:51:14 +08:00
|
|
|
|
const checkResultData = reactive<CheckData.CheckResult[]>([])
|
|
|
|
|
|
|
|
|
|
|
|
const infoMsg = reactive<{ title: string, name: string }[]>([])
|
|
|
|
|
|
|
2024-12-25 13:22:54 +08:00
|
|
|
|
// 原始数据表格数据
|
2025-01-03 18:57:35 +08:00
|
|
|
|
const rawTableData = reactive<CheckData.RawDataItem[]>([])
|
2024-12-18 15:56:59 +08:00
|
|
|
|
|
2024-12-25 18:04:16 +08:00
|
|
|
|
// 左侧树默认展开节点id
|
2024-12-28 16:50:32 +08:00
|
|
|
|
let defaultExpandedKeys: string[] = []
|
2024-12-25 13:22:54 +08:00
|
|
|
|
|
|
|
|
|
|
// 点击左侧树节点触发事件
|
2024-12-31 19:03:52 +08:00
|
|
|
|
const handleNodeClick = async (data: any) => {
|
2024-12-25 13:22:54 +08:00
|
|
|
|
if (!data.children) {
|
2025-01-03 18:57:35 +08:00
|
|
|
|
checkIndex.value = data.index
|
2025-01-05 14:52:37 +08:00
|
|
|
|
currentScriptTypeName.value = data.scriptTypeName
|
2025-01-03 18:57:35 +08:00
|
|
|
|
currentDesc.value = data.sourceDesc
|
2024-12-31 19:03:52 +08:00
|
|
|
|
|
2025-01-03 18:57:35 +08:00
|
|
|
|
if (checkIndex.value) {
|
2024-12-31 19:03:52 +08:00
|
|
|
|
await updateTableData()
|
|
|
|
|
|
}
|
2024-12-25 13:22:54 +08:00
|
|
|
|
}
|
|
|
|
|
|
};
|
2024-12-25 18:04:16 +08:00
|
|
|
|
|
2024-12-31 19:03:52 +08:00
|
|
|
|
watch(() => formContent.chnNum, async (newVal, oldVal) => {
|
|
|
|
|
|
console.log("通道号", newVal);
|
|
|
|
|
|
|
2025-01-03 11:27:36 +08:00
|
|
|
|
if (newVal) {
|
2024-12-28 16:50:32 +08:00
|
|
|
|
// 发起请求,查询该测试项的检测结果
|
2025-01-03 18:57:35 +08:00
|
|
|
|
const {data: resTreeDataTemp}: { data: CheckData.TreeItem[] } = await getTreeData({
|
2025-01-02 20:27:36 +08:00
|
|
|
|
scriptId: checkStore.scriptId,
|
2025-01-04 10:49:05 +08:00
|
|
|
|
devId: deviceId,
|
2025-01-02 20:27:36 +08:00
|
|
|
|
devNum: formContent.chnNum + '',
|
2025-01-04 16:33:23 +08:00
|
|
|
|
scriptType: null,
|
2025-01-02 20:27:36 +08:00
|
|
|
|
code: checkStore.planCode
|
|
|
|
|
|
})
|
2025-01-03 11:27:36 +08:00
|
|
|
|
treeDataAll = resTreeDataTemp
|
2025-01-04 16:33:23 +08:00
|
|
|
|
// treeDataAll = [
|
|
|
|
|
|
// {
|
|
|
|
|
|
// scriptTypeName: "频率准确度检测",
|
|
|
|
|
|
// sourceDesc: null,
|
|
|
|
|
|
// harmNum: null,
|
|
|
|
|
|
// index: null,
|
|
|
|
|
|
// fly: null,
|
|
|
|
|
|
// children: [
|
|
|
|
|
|
// {
|
|
|
|
|
|
// scriptTypeName: "额定条件下频率准确度测试",
|
|
|
|
|
|
// sourceDesc: null,
|
|
|
|
|
|
// harmNum: null,
|
|
|
|
|
|
// index: null,
|
|
|
|
|
|
// fly: null,
|
|
|
|
|
|
// children: [
|
|
|
|
|
|
// {
|
|
|
|
|
|
// scriptTypeName: "频率=42.5Hz",
|
|
|
|
|
|
// sourceDesc: "频率=42.5Hz",
|
|
|
|
|
|
// harmNum: null,
|
|
|
|
|
|
// index: 11,
|
|
|
|
|
|
// fly: 1,
|
|
|
|
|
|
// children: null
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// scriptTypeName: "频率=50Hz",
|
|
|
|
|
|
// sourceDesc: "频率=50Hz",
|
|
|
|
|
|
// harmNum: null,
|
|
|
|
|
|
// index: 12,
|
|
|
|
|
|
// fly: 1,
|
|
|
|
|
|
// children: null
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// scriptTypeName: "频率=50.05Hz",
|
|
|
|
|
|
// sourceDesc: "频率=50.05Hz",
|
|
|
|
|
|
// harmNum: null,
|
|
|
|
|
|
// index: 13,
|
|
|
|
|
|
// fly: 1,
|
|
|
|
|
|
// children: null
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// scriptTypeName: "频率=57.5Hz",
|
|
|
|
|
|
// sourceDesc: "频率=57.5Hz",
|
|
|
|
|
|
// harmNum: null,
|
|
|
|
|
|
// index: 14,
|
|
|
|
|
|
// fly: 1,
|
|
|
|
|
|
// children: null
|
|
|
|
|
|
// }
|
|
|
|
|
|
// ]
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// scriptTypeName: "单影响量下频率准确度测试",
|
|
|
|
|
|
// sourceDesc: null,
|
|
|
|
|
|
// harmNum: null,
|
|
|
|
|
|
// index: null,
|
|
|
|
|
|
// fly: null,
|
|
|
|
|
|
// children: [
|
|
|
|
|
|
// {
|
|
|
|
|
|
// scriptTypeName: "电压幅值对频率测量的影响",
|
|
|
|
|
|
// sourceDesc: null,
|
|
|
|
|
|
// harmNum: null,
|
|
|
|
|
|
// index: null,
|
|
|
|
|
|
// fly: null,
|
|
|
|
|
|
// children: [
|
|
|
|
|
|
// {
|
|
|
|
|
|
// scriptTypeName: "10%Un对频率=50.05Hz的影响",
|
|
|
|
|
|
// sourceDesc: "10%Un对频率=50.05Hz的影响",
|
|
|
|
|
|
// harmNum: null,
|
|
|
|
|
|
// index: 15,
|
|
|
|
|
|
// fly: 2,
|
|
|
|
|
|
// children: null
|
|
|
|
|
|
// }
|
|
|
|
|
|
// ]
|
|
|
|
|
|
// },
|
|
|
|
|
|
// {
|
|
|
|
|
|
// scriptTypeName: "谐波对频率测量的影响",
|
|
|
|
|
|
// sourceDesc: null,
|
|
|
|
|
|
// harmNum: null,
|
|
|
|
|
|
// index: null,
|
|
|
|
|
|
// fly: null,
|
|
|
|
|
|
// children: [
|
|
|
|
|
|
// {
|
|
|
|
|
|
// scriptTypeName: "叠加多次谐波对频率=50.05Hz的影响",
|
|
|
|
|
|
// sourceDesc: "叠加多次谐波对频率=50.05Hz的影响",
|
|
|
|
|
|
// harmNum: null,
|
|
|
|
|
|
// index: 16,
|
|
|
|
|
|
// fly: 1,
|
|
|
|
|
|
// children: null
|
|
|
|
|
|
// }
|
|
|
|
|
|
// ]
|
|
|
|
|
|
// }
|
|
|
|
|
|
// ]
|
|
|
|
|
|
// },
|
|
|
|
|
|
// ]
|
|
|
|
|
|
// }
|
|
|
|
|
|
// ]
|
2025-01-03 18:57:35 +08:00
|
|
|
|
|
2025-01-03 11:27:36 +08:00
|
|
|
|
let treeDataTemp = JSON.parse(JSON.stringify(treeDataAll))
|
|
|
|
|
|
filterTree(treeDataTemp, 2)
|
|
|
|
|
|
treeDataUnqualified = treeDataTemp
|
|
|
|
|
|
|
2025-01-04 16:33:23 +08:00
|
|
|
|
switchItem = 0
|
2025-01-03 11:27:36 +08:00
|
|
|
|
await handleSwitchChange(0)
|
2024-12-25 13:22:54 +08:00
|
|
|
|
}
|
2025-01-03 11:27:36 +08:00
|
|
|
|
})
|
|
|
|
|
|
|
2025-01-06 08:51:14 +08:00
|
|
|
|
watch(currentHarmNum, (newVal, oldVal) => {
|
|
|
|
|
|
console.log("谐波次数", newVal);
|
|
|
|
|
|
if(newVal !== '-1'){
|
|
|
|
|
|
let resCheckResult: CheckData.ResCheckResult = resTableData.resultData.get(newVal.toString())
|
|
|
|
|
|
setCheckResultData(resCheckResult)
|
|
|
|
|
|
}
|
|
|
|
|
|
})
|
|
|
|
|
|
|
2025-01-03 11:27:36 +08:00
|
|
|
|
const handleSwitchChange = async (data: any) => {
|
|
|
|
|
|
console.log("切换不合格测试项、全部测试项", data);
|
|
|
|
|
|
|
2024-12-31 19:03:52 +08:00
|
|
|
|
defaultOperate()
|
|
|
|
|
|
await updateTableData()
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// 默认操作
|
|
|
|
|
|
const defaultOperate = () => {
|
2024-12-28 16:50:32 +08:00
|
|
|
|
let node = null
|
2025-01-04 16:33:23 +08:00
|
|
|
|
if (switchItem === 0) {
|
2024-12-31 19:03:52 +08:00
|
|
|
|
node = getDefaultNode(treeDataUnqualified)
|
|
|
|
|
|
} else {
|
2024-12-28 16:50:32 +08:00
|
|
|
|
node = getDefaultNode(treeDataAll)
|
2024-12-25 18:04:16 +08:00
|
|
|
|
}
|
2025-01-02 20:27:36 +08:00
|
|
|
|
if (node) {
|
2025-01-05 14:52:37 +08:00
|
|
|
|
currentScriptTypeName.value = node.scriptTypeName
|
2025-01-03 18:57:35 +08:00
|
|
|
|
currentDesc.value = node.sourceDesc
|
|
|
|
|
|
checkIndex.value = node.index
|
|
|
|
|
|
defaultExpandedKeys = [node.index]
|
2025-01-02 20:27:36 +08:00
|
|
|
|
} else {
|
2025-01-05 14:52:37 +08:00
|
|
|
|
currentScriptTypeName.value = ''
|
2025-01-03 18:57:35 +08:00
|
|
|
|
currentDesc.value = ''
|
|
|
|
|
|
checkIndex.value = ''
|
2025-01-02 20:27:36 +08:00
|
|
|
|
defaultExpandedKeys = []
|
|
|
|
|
|
}
|
2024-12-31 19:03:52 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
const updateTableData = async () => {
|
2025-01-03 18:57:35 +08:00
|
|
|
|
console.log("左侧树被选中的叶子节点checkIndex", checkIndex.value);
|
|
|
|
|
|
if (checkIndex.value) {
|
2025-01-04 14:09:01 +08:00
|
|
|
|
console.log("更新表格数据");
|
2025-01-03 11:27:36 +08:00
|
|
|
|
// 发起请求,查询该测试项的检测结果
|
2025-01-06 08:51:14 +08:00
|
|
|
|
// const {data} = await getTableData({checkStore.scriptId,deviceId, formContent.chnNum, scriptType,checkIndex})
|
|
|
|
|
|
// resTableData =data
|
|
|
|
|
|
|
|
|
|
|
|
let resultData = new Map()
|
|
|
|
|
|
// resultData.set("频率", [{
|
|
|
|
|
|
// dataT: {
|
|
|
|
|
|
// data: 57.7401,
|
|
|
|
|
|
// resultData: 57.7301,
|
|
|
|
|
|
// },
|
|
|
|
|
|
// dataB: {
|
|
|
|
|
|
// data: 57.7401,
|
|
|
|
|
|
// resultData: 57.7301,
|
|
|
|
|
|
// },
|
|
|
|
|
|
// dataC: {
|
|
|
|
|
|
// data: 57.7401,
|
|
|
|
|
|
// resultData: 57.7301,
|
|
|
|
|
|
// },
|
|
|
|
|
|
// radius: 0.05774,
|
|
|
|
|
|
// isData: '符合',
|
|
|
|
|
|
// }])
|
|
|
|
|
|
|
|
|
|
|
|
// resultData.set('3', [{
|
|
|
|
|
|
// dataA: {
|
|
|
|
|
|
// data: 57.7401,
|
|
|
|
|
|
// resultData: 57.7301,
|
|
|
|
|
|
// },
|
|
|
|
|
|
// dataB: {
|
|
|
|
|
|
// data: 57.7401,
|
|
|
|
|
|
// resultData: 57.7301,
|
|
|
|
|
|
// },
|
|
|
|
|
|
// dataC: {
|
|
|
|
|
|
// data: 57.7401,
|
|
|
|
|
|
// resultData: 57.7301,
|
|
|
|
|
|
// },
|
|
|
|
|
|
// radius: 0.05774,
|
|
|
|
|
|
// isData: '符合',
|
|
|
|
|
|
// }])
|
|
|
|
|
|
// resultData.set('5', [{
|
|
|
|
|
|
// dataA: {
|
|
|
|
|
|
// data: 57.7402,
|
|
|
|
|
|
// resultData: 57.7301,
|
|
|
|
|
|
// },
|
|
|
|
|
|
// dataB: {
|
|
|
|
|
|
// data: 57.7402,
|
|
|
|
|
|
// resultData: 57.7301,
|
|
|
|
|
|
// },
|
|
|
|
|
|
// dataC: {
|
|
|
|
|
|
// data: 57.7402,
|
|
|
|
|
|
// resultData: 57.7301,
|
|
|
|
|
|
// },
|
|
|
|
|
|
// radius: 0.05774,
|
|
|
|
|
|
// isData: '符合',
|
|
|
|
|
|
// }])
|
|
|
|
|
|
// resultData.set('7', [{
|
|
|
|
|
|
// dataA: {
|
|
|
|
|
|
// data: 57.7403,
|
|
|
|
|
|
// resultData: 57.7301,
|
|
|
|
|
|
// },
|
|
|
|
|
|
// dataB: {
|
|
|
|
|
|
// data: 57.7403,
|
|
|
|
|
|
// resultData: 57.7301,
|
|
|
|
|
|
// },
|
|
|
|
|
|
// dataC: {
|
|
|
|
|
|
// data: 57.7403,
|
|
|
|
|
|
// resultData: 57.7301,
|
|
|
|
|
|
// },
|
|
|
|
|
|
// radius: 0.05774,
|
|
|
|
|
|
// isData: '符合',
|
|
|
|
|
|
// }])
|
|
|
|
|
|
|
|
|
|
|
|
resultData.set("电压幅值", [{
|
|
|
|
|
|
dataT: {
|
|
|
|
|
|
data: 57.7401,
|
|
|
|
|
|
resultData: 57.7301,
|
|
|
|
|
|
},
|
|
|
|
|
|
radius: 0.05774,
|
|
|
|
|
|
isData: '符合',
|
|
|
|
|
|
}])
|
|
|
|
|
|
resultData.set("持续时间", [{
|
|
|
|
|
|
dataT: {
|
|
|
|
|
|
data: 57.7402,
|
|
|
|
|
|
resultData: 57.7302,
|
|
|
|
|
|
},
|
|
|
|
|
|
radius: 0.05774,
|
|
|
|
|
|
isData: '符合',
|
2025-01-03 18:57:35 +08:00
|
|
|
|
}])
|
2025-01-05 14:52:37 +08:00
|
|
|
|
|
2025-01-06 08:51:14 +08:00
|
|
|
|
let rawData = new Map()
|
|
|
|
|
|
|
|
|
|
|
|
resTableData = {
|
|
|
|
|
|
resultData: resultData,
|
|
|
|
|
|
rawData: rawData
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
let resCheckResult: CheckData.ResCheckResult = []
|
|
|
|
|
|
let tempInfoMsg: { title: string, name: string } = []
|
|
|
|
|
|
|
|
|
|
|
|
if (resTableData.resultData.size === 1) {
|
|
|
|
|
|
resCheckResult = resTableData.resultData.values().next().value
|
|
|
|
|
|
Object.assign(harmNumList, [])
|
|
|
|
|
|
currentHarmNum.value = '-1'
|
|
|
|
|
|
|
|
|
|
|
|
setCheckResultData(resCheckResult)
|
|
|
|
|
|
} else {
|
|
|
|
|
|
if (resTableData.resultData.get('电压幅值') || resTableData.resultData.get('持续时间')) {
|
|
|
|
|
|
if (resTableData.resultData.get('电压幅值')) {
|
|
|
|
|
|
tempInfoMsg.push({title: '电压幅值', name: 'Voltage'})
|
|
|
|
|
|
resCheckResult.push(...resTableData.resultData.get('电压幅值'))
|
|
|
|
|
|
}
|
|
|
|
|
|
if (resTableData.resultData.get('持续时间')) {
|
|
|
|
|
|
tempInfoMsg.push({title: '持续时间', name: 'Duration'})
|
|
|
|
|
|
resCheckResult.push(...resTableData.resultData.get('持续时间'))
|
|
|
|
|
|
}
|
|
|
|
|
|
Object.assign(harmNumList, [])
|
|
|
|
|
|
currentHarmNum.value = '-1'
|
|
|
|
|
|
|
|
|
|
|
|
Object.assign(infoMsg, tempInfoMsg)
|
|
|
|
|
|
|
|
|
|
|
|
setCheckResultData(resCheckResult)
|
|
|
|
|
|
} else {
|
|
|
|
|
|
let tempHarmNumList = []
|
|
|
|
|
|
resTableData.resultData.forEach((value, key) => {
|
|
|
|
|
|
tempHarmNumList.push({
|
|
|
|
|
|
value: key,
|
|
|
|
|
|
label: key
|
|
|
|
|
|
})
|
|
|
|
|
|
})
|
|
|
|
|
|
Object.assign(harmNumList, tempHarmNumList)
|
|
|
|
|
|
currentHarmNum.value = harmNumList[0].value
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// setCheckResultData(resCheckResult)
|
|
|
|
|
|
|
2025-01-03 18:57:35 +08:00
|
|
|
|
Object.assign(rawTableData, [
|
2025-01-03 11:27:36 +08:00
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:00",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:03",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:06",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:09",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:12",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:15",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:18",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:21",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:24",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:27",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:30",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:33",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:36",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:39",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:42",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:45",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:48",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:51",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:54",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
updateTime: "2024-10-10 09:30:57",
|
|
|
|
|
|
A: 57.73,
|
|
|
|
|
|
B: 57.73,
|
|
|
|
|
|
C: 57.73,
|
|
|
|
|
|
}
|
2025-01-03 18:57:35 +08:00
|
|
|
|
])
|
2025-01-03 11:27:36 +08:00
|
|
|
|
}
|
2024-12-31 19:03:52 +08:00
|
|
|
|
}
|
2024-11-19 19:34:00 +08:00
|
|
|
|
|
2025-01-02 18:00:58 +08:00
|
|
|
|
const open = async (_deviceId: string, chnNum: string, _scriptType: string | null) => {
|
|
|
|
|
|
// console.log(checkStore.scriptId, _deviceId, chnNum, _scriptType);
|
2024-12-28 16:50:32 +08:00
|
|
|
|
deviceId = _deviceId
|
2024-12-31 14:27:36 +08:00
|
|
|
|
scriptType = _scriptType
|
2024-12-31 19:03:52 +08:00
|
|
|
|
|
2024-12-28 16:50:32 +08:00
|
|
|
|
// 发起后端请求,查询详细信息 当chnNum为-1时,查询所有通道号
|
2025-01-03 11:27:36 +08:00
|
|
|
|
const {data: resFormContent}: { data: any } = await getFormData({
|
|
|
|
|
|
planId: checkStore.planId,
|
|
|
|
|
|
deviceId,
|
|
|
|
|
|
chnNum,
|
|
|
|
|
|
scriptType
|
|
|
|
|
|
})
|
2024-12-18 15:56:59 +08:00
|
|
|
|
|
|
|
|
|
|
// 数据处理
|
2025-01-02 18:00:58 +08:00
|
|
|
|
// let resFormContent = {
|
|
|
|
|
|
// scriptName: 'Q/GDW 10650.4-2021 模拟式',
|
|
|
|
|
|
// errorSysName: 'Q/GDW 10650.2-2021',
|
|
|
|
|
|
// dataRule: '505f063f9f91ab108d895a9fe96b5dce',
|
|
|
|
|
|
// deviceName: '被检设备1',
|
|
|
|
|
|
// chnList: [
|
|
|
|
|
|
// {value: '1', label: '1'},
|
|
|
|
|
|
// {value: '2', label: '0'},
|
|
|
|
|
|
// {value: '3', label: '1'},
|
|
|
|
|
|
// {value: '4', label: '0'}],
|
|
|
|
|
|
// }
|
2025-01-02 20:27:36 +08:00
|
|
|
|
|
2025-01-03 11:27:36 +08:00
|
|
|
|
chnList = resFormContent.chnList.map((item: { value: string, label: string }) => ({
|
2024-12-30 14:41:34 +08:00
|
|
|
|
value: item.value,
|
|
|
|
|
|
label: item.label == '1' ? `${item.value}` : `${item.value}(不符合)`
|
|
|
|
|
|
}))
|
|
|
|
|
|
|
2024-12-31 14:27:36 +08:00
|
|
|
|
let dataRuleName = dictStore.getDictData('Data_Rule').find(item => item.id == resFormContent.dataRule)?.name
|
2024-12-30 14:41:34 +08:00
|
|
|
|
|
2025-01-02 18:00:58 +08:00
|
|
|
|
Object.assign(formContent, {
|
|
|
|
|
|
...resFormContent,
|
|
|
|
|
|
dataRule: dataRuleName,
|
2025-01-03 11:27:36 +08:00
|
|
|
|
chnNum: chnList.length > 0 ? chnList[0].value : '',
|
2025-01-02 18:00:58 +08:00
|
|
|
|
})
|
2024-12-31 19:03:52 +08:00
|
|
|
|
|
2024-11-19 19:34:00 +08:00
|
|
|
|
|
2024-12-18 15:56:59 +08:00
|
|
|
|
visible.value = true;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-12-28 16:50:32 +08:00
|
|
|
|
const close = () => {
|
|
|
|
|
|
//数据清空
|
|
|
|
|
|
Object.assign(formContent, {
|
|
|
|
|
|
scriptName: '',
|
|
|
|
|
|
errorSysName: '',
|
|
|
|
|
|
dataRule: '',
|
|
|
|
|
|
deviceName: '',
|
2024-12-31 19:03:52 +08:00
|
|
|
|
chnNum: '',
|
2024-12-28 16:50:32 +08:00
|
|
|
|
})
|
2024-12-31 19:03:52 +08:00
|
|
|
|
treeDataUnqualified = []
|
2024-12-28 16:50:32 +08:00
|
|
|
|
treeDataAll = []
|
2025-01-04 16:33:23 +08:00
|
|
|
|
Object.assign(treeDataUnqualified, [])
|
|
|
|
|
|
Object.assign(treeDataAll, [])
|
2025-01-06 08:51:14 +08:00
|
|
|
|
Object.assign(harmNumList, [])
|
|
|
|
|
|
currentHarmNum.value = '-1'
|
|
|
|
|
|
Object.assign(checkResultData, [])
|
|
|
|
|
|
Object.assign(infoMsg, [])
|
|
|
|
|
|
Object.assign(rawTableData, [])
|
2025-01-04 16:33:23 +08:00
|
|
|
|
defaultExpandedKeys = []
|
2025-01-03 18:57:35 +08:00
|
|
|
|
checkIndex.value = ''
|
|
|
|
|
|
activeTab.value = 'resultTab'
|
2025-01-05 14:52:37 +08:00
|
|
|
|
currentScriptTypeName.value = ''
|
2025-01-03 18:57:35 +08:00
|
|
|
|
currentDesc.value = ''
|
2025-01-04 16:33:23 +08:00
|
|
|
|
switchItem = 0
|
2024-12-28 16:50:32 +08:00
|
|
|
|
|
|
|
|
|
|
visible.value = false;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
2025-01-06 08:51:14 +08:00
|
|
|
|
const setCheckResultData = (data: CheckData.ResCheckResult[]) => {
|
|
|
|
|
|
let result: CheckData.CheckResult[] = []
|
|
|
|
|
|
data.forEach((item: CheckData.ResCheckResult) => {
|
|
|
|
|
|
let temp: CheckData.CheckResult = {
|
|
|
|
|
|
aStd: item.dataA?.resultData,
|
|
|
|
|
|
aData: item.dataA?.data,
|
|
|
|
|
|
aError: Math.abs(item.dataA?.data - item.dataA?.resultData).toFixed(fixed),
|
|
|
|
|
|
bStd: item.dataB?.resultData,
|
|
|
|
|
|
bData: item.dataB?.data,
|
|
|
|
|
|
bError: Math.abs(item.dataB?.data - item.dataB?.resultData).toFixed(fixed),
|
|
|
|
|
|
cStd: item.dataC?.resultData,
|
|
|
|
|
|
cData: item.dataC?.data,
|
|
|
|
|
|
cError: Math.abs(item.dataC?.data - item.dataC?.resultData).toFixed(fixed),
|
|
|
|
|
|
tStd: item.dataT?.resultData,
|
|
|
|
|
|
tData: item.dataT?.data,
|
|
|
|
|
|
tError: Math.abs(item.dataT?.data - item.dataT?.resultData).toFixed(fixed),
|
|
|
|
|
|
|
|
|
|
|
|
maxError: item.radius,
|
|
|
|
|
|
result: item.isData,
|
|
|
|
|
|
}
|
|
|
|
|
|
result.push(temp)
|
|
|
|
|
|
})
|
|
|
|
|
|
Object.assign(checkResultData, result)
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// const toFixed = (num: number, pow: number): string => {
|
|
|
|
|
|
// return Math.floor(num * Math.pow(10, pow)) / Math.pow(10, pow)
|
|
|
|
|
|
// }
|
2024-12-28 16:50:32 +08:00
|
|
|
|
const findFirstLeafNode = (node: any): any => {
|
2024-12-25 18:04:16 +08:00
|
|
|
|
if (!node.children || node.children.length === 0) {
|
2024-12-28 16:50:32 +08:00
|
|
|
|
return node;
|
2024-12-25 18:04:16 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return findFirstLeafNode(node.children[0]);
|
|
|
|
|
|
}
|
2024-12-28 16:50:32 +08:00
|
|
|
|
const getDefaultNode = (data: any[]) => {
|
2024-12-25 18:04:16 +08:00
|
|
|
|
if (!data || data.length === 0) {
|
|
|
|
|
|
return null;
|
2024-12-25 13:22:54 +08:00
|
|
|
|
}
|
2024-12-25 18:04:16 +08:00
|
|
|
|
|
|
|
|
|
|
const firstElement = data[0];
|
|
|
|
|
|
|
|
|
|
|
|
return findFirstLeafNode(firstElement);
|
2024-12-25 13:22:54 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-01-02 20:27:36 +08:00
|
|
|
|
// fly: 1合格 2不合格 4数据错误
|
|
|
|
|
|
const filterTree = (treeData: any[], fly: number): any[] => {
|
|
|
|
|
|
if (!treeData || treeData.length === 0) {
|
|
|
|
|
|
return []
|
|
|
|
|
|
}
|
|
|
|
|
|
filter(treeData, fly)
|
|
|
|
|
|
return treeData
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
const filter = (treeData: any[], fly: number) => {
|
2025-01-04 14:09:01 +08:00
|
|
|
|
for (let i = treeData.length - 1; i >= 0; i--) {
|
2025-01-02 20:27:36 +08:00
|
|
|
|
let node = treeData[i]
|
2025-01-04 14:09:01 +08:00
|
|
|
|
if (node.fly !== fly) {
|
2025-01-02 20:27:36 +08:00
|
|
|
|
if (node.children && node.children.length > 0) {
|
|
|
|
|
|
filter(node.children, fly)
|
2025-01-03 18:57:35 +08:00
|
|
|
|
// 检查 children 是否被全部移除
|
|
|
|
|
|
if (node.children.length === 0) {
|
|
|
|
|
|
treeData.splice(i, 1);
|
|
|
|
|
|
}
|
2025-01-02 20:27:36 +08:00
|
|
|
|
} else {
|
|
|
|
|
|
treeData.splice(i, 1)
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-12-18 15:56:59 +08:00
|
|
|
|
defineExpose({
|
|
|
|
|
|
open
|
|
|
|
|
|
})
|
2024-11-19 19:34:00 +08:00
|
|
|
|
</script>
|
|
|
|
|
|
|
2024-12-18 18:53:55 +08:00
|
|
|
|
<style lang="scss" scoped>
|
2024-11-19 19:34:00 +08:00
|
|
|
|
|
2024-12-18 20:26:18 +08:00
|
|
|
|
.dialog {
|
2024-12-18 18:53:55 +08:00
|
|
|
|
display: flex;
|
|
|
|
|
|
flex-direction: column;
|
2024-12-18 20:26:18 +08:00
|
|
|
|
overflow-y: hidden;
|
|
|
|
|
|
overflow-x: hidden;
|
2024-12-23 13:23:28 +08:00
|
|
|
|
|
2024-12-18 18:53:55 +08:00
|
|
|
|
|
2024-12-18 20:26:18 +08:00
|
|
|
|
.data-check-dialog {
|
2024-11-19 19:34:00 +08:00
|
|
|
|
display: flex;
|
2024-12-18 20:26:18 +08:00
|
|
|
|
flex-direction: column;
|
2025-01-04 16:33:23 +08:00
|
|
|
|
overflow-y: hidden;
|
2024-11-19 19:34:00 +08:00
|
|
|
|
|
2024-12-18 20:26:18 +08:00
|
|
|
|
.data-check-head {
|
|
|
|
|
|
display: flex;
|
|
|
|
|
|
flex-direction: row;
|
|
|
|
|
|
width: 100%;
|
2024-12-18 18:53:55 +08:00
|
|
|
|
}
|
|
|
|
|
|
|
2024-12-18 20:26:18 +08:00
|
|
|
|
.data-check-body {
|
2025-01-04 16:33:23 +08:00
|
|
|
|
height: 500px;
|
2024-12-23 13:23:28 +08:00
|
|
|
|
width: 100%;
|
2024-12-18 20:26:18 +08:00
|
|
|
|
display: flex;
|
|
|
|
|
|
flex-direction: row;
|
|
|
|
|
|
|
|
|
|
|
|
.content-left-tree {
|
2025-01-06 08:51:14 +08:00
|
|
|
|
width: 22%;
|
2024-12-18 20:26:18 +08:00
|
|
|
|
display: flex;
|
|
|
|
|
|
flex-direction: column;
|
|
|
|
|
|
align-items: center;
|
2024-12-23 13:23:28 +08:00
|
|
|
|
max-height: 473px;
|
2024-12-18 20:26:18 +08:00
|
|
|
|
|
|
|
|
|
|
padding: 10px 0;
|
|
|
|
|
|
border: 1px solid #ccc;
|
2024-12-31 19:54:27 +08:00
|
|
|
|
overflow-y: auto;
|
2024-12-24 19:21:43 +08:00
|
|
|
|
|
2024-12-18 20:26:18 +08:00
|
|
|
|
.content-tree {
|
2024-12-31 19:54:27 +08:00
|
|
|
|
width: 100%;
|
2024-12-23 13:23:28 +08:00
|
|
|
|
height: 100%;
|
|
|
|
|
|
max-height: 100%;
|
2024-12-18 20:26:18 +08:00
|
|
|
|
margin-top: 10px;
|
2024-12-31 19:54:27 +08:00
|
|
|
|
|
|
|
|
|
|
.custom-tree-node {
|
|
|
|
|
|
overflow-x: hidden !important; // 溢出部分隐藏
|
|
|
|
|
|
white-space: nowrap !important; //禁止自动换行
|
|
|
|
|
|
text-overflow: ellipsis !important; // 使溢出部分以省略号显示
|
|
|
|
|
|
}
|
2024-12-18 18:53:55 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2024-12-18 20:26:18 +08:00
|
|
|
|
.content-right {
|
2025-01-06 08:51:14 +08:00
|
|
|
|
width: 78%;
|
2024-12-18 20:26:18 +08:00
|
|
|
|
margin-left: 10px;
|
|
|
|
|
|
flex: 1;
|
|
|
|
|
|
|
|
|
|
|
|
.content-right-title {
|
2025-01-05 14:52:37 +08:00
|
|
|
|
margin-top: 10px;
|
|
|
|
|
|
line-height: 1.5;
|
2025-01-04 16:33:23 +08:00
|
|
|
|
|
2025-01-05 14:52:37 +08:00
|
|
|
|
.content-right-title-text {
|
2024-12-18 20:26:18 +08:00
|
|
|
|
font-size: 16px;
|
2025-01-05 14:52:37 +08:00
|
|
|
|
font-weight: bold;
|
2024-12-18 20:26:18 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|
2024-12-18 18:53:55 +08:00
|
|
|
|
|
2025-01-05 14:52:37 +08:00
|
|
|
|
//.el-divider--horizontal {
|
|
|
|
|
|
// //margin-top: 0px;
|
|
|
|
|
|
// margin-bottom: 5px;
|
|
|
|
|
|
// height: 20px;
|
|
|
|
|
|
//}
|
|
|
|
|
|
|
|
|
|
|
|
//.content-right-title-desc {
|
|
|
|
|
|
// font-size: 16px;
|
|
|
|
|
|
// height: 48px;
|
|
|
|
|
|
// max-height: 48px;
|
|
|
|
|
|
// overflow-y: auto;
|
|
|
|
|
|
//}
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
.content-right-Tabs {
|
|
|
|
|
|
box-sizing: border-box;
|
|
|
|
|
|
margin-top: 10px;
|
|
|
|
|
|
margin-bottom: 10px;
|
|
|
|
|
|
max-height: 400px;
|
2024-12-18 20:26:18 +08:00
|
|
|
|
}
|
2024-12-18 18:53:55 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|
2024-11-19 19:34:00 +08:00
|
|
|
|
}
|
2025-01-05 14:52:37 +08:00
|
|
|
|
</style>
|
|
|
|
|
|
<!--<style lang="scss">-->
|
|
|
|
|
|
<!--.el-popover.popover-class {-->
|
|
|
|
|
|
<!-- .el-popover__title {-->
|
|
|
|
|
|
<!-- color: #fff;-->
|
|
|
|
|
|
<!-- background-color: #003078 !important;-->
|
|
|
|
|
|
<!-- }-->
|
|
|
|
|
|
<!--}-->
|
|
|
|
|
|
<!--</style>-->
|