diff --git a/frontend/src/api/check/test/index.ts b/frontend/src/api/check/test/index.ts index 23ece4c..c8b4c9f 100644 --- a/frontend/src/api/check/test/index.ts +++ b/frontend/src/api/check/test/index.ts @@ -1,5 +1,13 @@ import http from "@/api"; -export const getCheckItemDetail = (params: { deviceId: string, chnNum: number, checkItemId?: string }) => { - return http.post("/check/test/detail/", params, {loading: false}); +export const getFormData = (params: { deviceId: string, chnNum: number}) => { + return http.post("/check/detail/", params, {loading: false}); +} + +export const getTreeData = (params: { deviceId: string, chnNum: number, checkItemId: string }) => { + return http.post("/check/treeData/", params, {loading: false}); +} + +export const getCheckData = (params: { deviceId: string, chnNum: number, checkItemId: string }) => { + return http.post("/check/data/", params, {loading: false}); } \ No newline at end of file diff --git a/frontend/src/views/home/components/dataCheckSingleChannelSingleTestPopup.vue b/frontend/src/views/home/components/dataCheckSingleChannelSingleTestPopup.vue index 235f7cd..da35ea5 100644 --- a/frontend/src/views/home/components/dataCheckSingleChannelSingleTestPopup.vue +++ b/frontend/src/views/home/components/dataCheckSingleChannelSingleTestPopup.vue @@ -17,8 +17,8 @@ - - + @@ -34,8 +34,10 @@
- + +
@@ -66,6 +68,7 @@ import {reactive, ref} from 'vue' import DataCheckResultTable from './dataCheckResultTable.vue' import DataCheckRawDataTable from './dataCheckRawDataTable.vue' import {CheckData} from "@/api/check/interface"; +import {getFormData, getTreeData, getCheckData} from "@/api/check/test"; const {appendToBody} = withDefaults(defineProps<{ appendToBody: boolean @@ -76,6 +79,8 @@ const defaultProps = { children: "children", }; +const visible = ref(false) + // 表单数据 const formContent = reactive({ scriptName: '', @@ -84,13 +89,14 @@ const formContent = reactive({ deviceName: '', monitorIdx: '', }) +let deviceId: string = '' +let checkItemId: string = '' + // 通道下拉列表 -let chnList: number[] = [] +let chnList: any[] = [] // 不符合测试项、全部测试项切换 const switchItem = ref(-1) -// 左侧树数据(仅用于展示) -const treeData=reactive([]) // 左侧树数据-不符合测试项 let treeDataUnQualified: CheckData.ScriptItem[] = [] // 左侧树数据-全部测试项 @@ -99,314 +105,233 @@ let treeDataAll: CheckData.ScriptItem[] = [] const checkedScriptId = ref('') -const currentScriptDsc = ref('电压准确度检测:频率:42.5Hz Ua=46.192V 0° Ub=46.192V -120° Uc=46.192V 120° Ia=1A 0° Ib=1A -120° Ic=1A 120°'); +const currentScriptDsc = ref(''); // 右侧Tab选中项 const activeTab = ref('resultTab') // 检测结果表格数据 -const checkResultTableData = reactive([ - { - chnNum: '1', - standardValue: 57.74, - L1: 57.73, - L1_errValue: 0.01, - L2: 57.73, - L2_errValue: 0.01, - L3: 57.73, - L3_errValue: 0.01, - maxErrVaule: 0.05774, - result: '合格', - } -]) +const checkResultTableData = reactive([]) // 原始数据表格数据 -const rawTableData = reactive([ - { - updateTime: "2024-10-10 09:30:00", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:03", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:06", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:09", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:12", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:15", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:18", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:21", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:24", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:27", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:30", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:33", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:36", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:39", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:42", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:45", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:48", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:51", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:54", - L1: 57.73, - L2: 57.73, - L3: 57.73, - }, - { - updateTime: "2024-10-10 09:30:57", - L1: 57.73, - L2: 57.73, - L3: 57.73, - } -]) +const rawTableData = reactive([]) const resultTableRef = ref() const rawDataTableRef = ref() // 左侧树默认展开节点id -const defaultExpandedKeys = computed(() => { - return [getDefaultId(treeData)] -}) +let defaultExpandedKeys: string[] = [] + +// 监控通道号下拉框 +const handleChnChange = (data: any) => { + + console.log("通道号下拉框", data); + + // 后端请求,查询该通道号下的测试项(可以只查询不合格测试项,也可以全部测试项、不合格测试项都查询) + // const result = await getTreeData({deviceId, formContent.monitorIdx, checkItemId}) + // treeDataUnQualified=[] + // treeDataAll=[] + -// 改变通道号下拉框触发事件 -const handleChnNumChange = (data: any) => { - formContent.monitorIdx = data.value } -watch(() => formContent.monitorIdx, (newVal, oldVal) => { - if (newVal) { - console.log("通道号下拉框", newVal, oldVal); - - // 后端请求,查询该通道号下的测试项(可以只查询不合格测试项,也可以全部测试项、不合格测试项都查询) - // treeDataUnQualified=[] - // treeDataAll=[] - - } -}) +// watch(() => formContent.monitorIdx, (newVal, oldVal) => { +// if (newVal) { +// console.log("通道号下拉框", newVal, oldVal); +// +// // 后端请求,查询该通道号下的测试项(可以只查询不合格测试项,也可以全部测试项、不合格测试项都查询) +// // const result = await getTreeData({deviceId, formContent.monitorIdx, checkItemId}) +// // treeDataUnQualified=[] +// // treeDataAll=[] +// +// } +// }) // 点击左侧树节点触发事件 const handleNodeClick = (data: any) => { if (!data.children) { checkedScriptId.value = data.id + currentScriptDsc.value = data.scriptName } }; watch(checkedScriptId, (newVal, oldVal) => { if (newVal) { - console.log("左侧树被选中的叶子节点id", newVal, oldVal); - // checkResultTableData + console.log("左侧树被选中的叶子节点id", newVal); + // 发起请求,查询该测试项的检测结果 + // const result = await getCheckData({deviceId, formContent.monitorIdx, checkItemId}) + Object.assign(checkResultTableData, [{ + chnNum: '1', + standardValue: 57.74, + L1: 57.73, + L1_errValue: 0.01, + L2: 57.73, + L2_errValue: 0.01, + L3: 57.73, + L3_errValue: 0.01, + maxErrVaule: 0.05774, + result: '合格', + }]) + Object.assign(rawTableData, [ + { + updateTime: "2024-10-10 09:30:00", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:03", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:06", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:09", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:12", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:15", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:18", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:21", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:24", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:27", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:30", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:33", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:36", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:39", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:42", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:45", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:48", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:51", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:54", + L1: 57.73, + L2: 57.73, + L3: 57.73, + }, + { + updateTime: "2024-10-10 09:30:57", + L1: 57.73, + L2: 57.73, + L3: 57.73, + } + ]) } }) // 切换不合格测试项、全部测试项 触发事件 -// const handleSwitch = (data: any) => { -// if (data === 0) { -// //Object.assign(treeData, treeDataUnQualified) -// } else { -// //Object.assign(treeData, treeDataAll) -// } -// } watch(switchItem, (newVal, oldVal) => { - if (switchItem.value === 0) { - Object.assign(treeData, treeDataUnQualified) + let node = null + if (newVal === 0) { + node = getDefaultNode(treeDataUnQualified) } - if (switchItem.value === 1) { - Object.assign(treeData, treeDataAll) + if (newVal === 1) { + node = getDefaultNode(treeDataAll) } -},{immediate:true}) + currentScriptDsc.value = node?.scriptName + checkedScriptId.value = node?.id + defaultExpandedKeys = [node?.id] +}) -const visible = ref(false) - -const close = () => { - //数据清空 - Object.assign(formContent, { - scriptName: '', - errorSysName: '', - dataRule: '', - deviceName: '', - monitorIdx: '', - }) - checkedScriptId.value = '' - activeTab.value = 'rawDataTab' - - visible.value = false; -}; - -const open = async (deviceId: string, chnNum: number, checkItemId?: string) => { - switchItem.value = 0 - // 发起后端请求,查询详细信息 - // 当checkItemId为空时,默认显示全部测试项、全部不合格测试项 - // 当checkItemId不为空时,默认显示当前checkItemId的测试项、属于当前checkItemId的不合格测试项 - checkItemId = checkItemId ?? '' +const open = async (_deviceId: string, chnNum: number, _checkItemId?: string) => { console.log(deviceId, chnNum, checkItemId); - //const result = await getCheckItemDetail({deviceId, chnNum, checkItemId}) - + deviceId = _deviceId + checkItemId = _checkItemId ?? '' + switchItem.value = 0 + // 发起后端请求,查询详细信息 当chnNum为-1时,查询所有通道号 + //const result1 = await getFormData({deviceId, chnNum}) // 数据处理 chnList = [ - {value: '1',}, - { - value: '2 (不合格)', - }, - { - value: '3', - }, - { - value: '4 (不合格)', - },] + {value: 1, label: '1'}, + {value: 2, label: '2 (不合格)'}, + {value: 3, label: '3'}, + {value: 4, label: '4 (不合格)'}] Object.assign(formContent, { scriptName: 'Q/GDW 10650.4-2021 模拟式', errorSysName: 'Q/GDW 10650.2-2021', dataRule: '所有值', deviceName: '被检设备1', - monitorIdx: chnList[0].value, + monitorIdx: chnList[0].value }) - treeDataAll=[{ - "id": "1", - "pid": "0", - "scriptName": "频率准确度检测", - "children": [ - { - "id": "1-1", - "pid": "1", - "scriptName": "额定工作条件下的检测", - "children": [ - { - "id": "1-1-1", - "pid": "1-1", - "scriptName": "输入:频率 42.5Hz..." - }, - { - "id": "1-1-2", - "pid": "1-1", - "scriptName": "输入:频率 50.0Hz..." - }, - { - "id": "1-1-3", - "pid": "1-1", - "scriptName": "输入:频率 50.05Hz...." - } - ] - }, - { - "id": "1-2", - "pid": "1", - "scriptName": "电压对频率测量的影响", - "children": [ - { - "id": "1-2-1", - "pid": "1-2", - "scriptName": "输入:频率 50.05Hz Ua =10%Un..." - }, - { - "id": "1-2-1", - "pid": "1-2", - "scriptName": "输入:频率 51.05Hz Ua =10%Un..." - }, - { - "id": "1-2-2", - "pid": "1-2", - "scriptName": "输入:频率 52.05Hz Ua =10%Un..." - } - ] - }, - { - "id": "1-3", - "pid": "1", - "scriptName": "谐波对频率测量的影响", - "children": [ - { - "id": "1-3-1", - "pid": "1-3", - "scriptName": "输入:频率 50.05Hz Ua =100%Un..." - } - ] - } - ] - }] - treeDataUnQualified=[{ + // const result2 = await getTreeData({deviceId, formContent.monitorIdx, checkItemId}) + treeDataAll = [{ "id": "1", "pid": "0", "scriptName": "频率准确度检测", @@ -433,6 +358,47 @@ const open = async (deviceId: string, chnNum: number, checkItemId?: string) => { } ] }, + { + "id": "1-2", + "pid": "1", + "scriptName": "电压对频率测量的影响", + "children": [ + { + "id": "1-2-1", + "pid": "1-2", + "scriptName": "输入:频率 50.05Hz Ua =10%Un..." + }, + { + "id": "1-2-1", + "pid": "1-2", + "scriptName": "输入:频率 51.05Hz Ua =10%Un..." + }, + { + "id": "1-2-2", + "pid": "1-2", + "scriptName": "输入:频率 52.05Hz Ua =10%Un..." + } + ] + }, + { + "id": "1-3", + "pid": "1", + "scriptName": "谐波对频率测量的影响", + "children": [ + { + "id": "1-3-1", + "pid": "1-3", + "scriptName": "输入:频率 50.05Hz Ua =100%Un..." + } + ] + } + ] + }] + treeDataUnQualified = [{ + "id": "1", + "pid": "0", + "scriptName": "频率准确度检测", + "children": [ { "id": "1-2", "pid": "1", @@ -458,211 +424,36 @@ const open = async (deviceId: string, chnNum: number, checkItemId?: string) => { ] }] - // Object.assign(treeData, [ - // { - // "id": "1", - // "pid": "0", - // "scriptName": "频率准确度检测", - // "children": [ - // { - // "id": "1-1", - // "pid": "1", - // "scriptName": "额定工作条件下的检测", - // "children": [ - // { - // "id": "1-1-1", - // "pid": "1-1", - // "scriptName": "输入:频率 42.5Hz..." - // }, - // { - // "id": "1-1-2", - // "pid": "1-1", - // "scriptName": "输入:频率 50.0Hz..." - // }, - // { - // "id": "1-1-3", - // "pid": "1-1", - // "scriptName": "输入:频率 50.05Hz...." - // } - // ] - // }, - // { - // "id": "1-2", - // "pid": "1", - // "scriptName": "电压对频率测量的影响", - // "children": [ - // { - // "id": "1-2-1", - // "pid": "1-2", - // "scriptName": "输入:频率 50.05Hz Ua =10%Un..." - // }, - // { - // "id": "1-2-1", - // "pid": "1-2", - // "scriptName": "输入:频率 51.05Hz Ua =10%Un..." - // }, - // { - // "id": "1-2-2", - // "pid": "1-2", - // "scriptName": "输入:频率 52.05Hz Ua =10%Un..." - // } - // ] - // }, - // { - // "id": "1-3", - // "pid": "1", - // "scriptName": "谐波对频率测量的影响", - // "children": [ - // { - // "id": "1-3-1", - // "pid": "1-3", - // "scriptName": "输入:频率 50.05Hz Ua =100%Un..." - // } - // ] - // } - // ] - // }, - // { - // "id": "2", - // "pid": "0", - // "scriptName": "电压准确度检测", - // "children": [ - // { - // "pid": "2", - // "id": "2-1", - // "scriptName": "额定工作条件下的检测", - // "children": [ - // { - // "id": "2-1-1", - // "pid": "2-1", - // "scriptName": "输入:频率 42.5Hz..." - // }, - // { - // "id": "2-1-2", - // "pid": "2-1", - // "scriptName": "输入:频率 50.0Hz..." - // }, - // { - // "id": "2-1-3", - // "pid": "2-1", - // "scriptName": "输入:频率 50.05Hz..." - // } - // ] - // }, - // { - // "pid": "2", - // "id": "2-2", - // "scriptName": "电压对频率测量的影响", - // "children": [ - // { - // "id": "2-2-1", - // "pid": "2-2", - // "scriptName": "输入:频率 50.05Hz Ua =10%Un..." - // }, - // { - // "id": "2-2-1", - // "pid": "2-2", - // "scriptName": "输入:频率 51.05Hz Ua =10%Un..." - // }, - // { - // "id": "2-2-2", - // "pid": "2-2", - // "scriptName": "输入:频率 52.05Hz Ua =10%Un..." - // } - // ] - // }, - // { - // "pid": "2", - // "id": "2-3", - // "scriptName": "谐波对频率测量的影响", - // "children": [ - // { - // "id": "2-3-1", - // "pid": "2-3", - // "scriptName": "输入:频率 50.05Hz Ua =100%Un..." - // } - // ] - // } - // ] - // }, - // { - // "id": "3", - // "pid": "0", - // "scriptName": "谐波准确度检测", - // "children": [ - // { - // "id": "3-1", - // "pid": "3", - // "scriptName": "额定工作条件下的检测", - // "children": [ - // { - // "id": "3-1-1", - // "pid": "3-1", - // "scriptName": "输入:频率 42.5Hz..." - // }, - // { - // "id": "3-1-2", - // "pid": "3-1", - // "scriptName": "输入:频率 50.0Hz..." - // }, - // { - // "id": "3-1-3", - // "pid": "3-1", - // "scriptName": "输入:频率 50.05Hz..." - // } - // ] - // }, - // { - // "id": "3-2", - // "pid": "3", - // "scriptName": "电压对频率测量的影响", - // "children": [ - // { - // "id": "3-2-1", - // "pid": "3-2", - // "scriptName": "输入:频率 50.05Hz Ua =10%Un..." - // }, - // { - // "id": "3-2-1", - // "pid": "3-2", - // "scriptName": "输入:频率 51.05Hz Ua =10%Un..." - // }, - // { - // "id": "3-2-2", - // "pid": "3-2", - // "scriptName": "输入:频率 52.05Hz Ua =10%Un..." - // } - // ] - // }, - // { - // "id": "3-3", - // "pid": "3", - // "scriptName": "谐波对频率测量的影响", - // "children": [ - // { - // "id": "3-3-1", - // "pid": "3-3", - // "name": "输入:频率 50.05Hz Ua =100%Un..." - // } - // ] - // } - // ] - // } - // ]) - - checkedScriptId.value = defaultExpandedKeys.value[0] ?? '' - visible.value = true; } -const findFirstLeafNode = (node: any): string => { +const close = () => { + //数据清空 + Object.assign(formContent, { + scriptName: '', + errorSysName: '', + dataRule: '', + deviceName: '', + monitorIdx: '', + }) + treeDataAll = [] + treeDataUnQualified = [] + checkedScriptId.value = '' + activeTab.value = 'rawDataTab' + currentScriptDsc.value = '' + switchItem.value = -1 + + visible.value = false; +}; + +const findFirstLeafNode = (node: any): any => { if (!node.children || node.children.length === 0) { - return node.id; + return node; } return findFirstLeafNode(node.children[0]); } -const getDefaultId = (data: any[]): string | null => { +const getDefaultNode = (data: any[]) => { if (!data || data.length === 0) { return null; } diff --git a/frontend/src/views/home/components/test.vue b/frontend/src/views/home/components/test.vue index 72a3370..bc44691 100644 --- a/frontend/src/views/home/components/test.vue +++ b/frontend/src/views/home/components/test.vue @@ -303,12 +303,12 @@ watch(testStatus, function (newValue, oldValue) { watch(webMsgSend, function (newValue, oldValue) { if (activeIndex <= checkTotal) { switch (newValue.requestId) { - case 'Test_Freq_Start': - updateCheckResultView("Freq", true) + case 'Test_VOL_Start': + updateCheckResultView("VOL", true) updateLog(true) break; - case 'Test_Freq_End': - updateCheckResultView("Freq", false) + case 'Test_VOL_End': + updateCheckResultView("VOL", false) updateLog(false) updatePercentage() if (testStatus.value != 'paused') { @@ -316,12 +316,12 @@ watch(webMsgSend, function (newValue, oldValue) { startTimer() } break; - case 'Test_VOL_Start': - updateCheckResultView("VOL", true) + case 'Test_Freq_Start': + updateCheckResultView("Freq", true) updateLog(true) break; - case 'Test_VOL_End': - updateCheckResultView("VOL", false) + case 'Test_Freq_End': + updateCheckResultView("Freq", false) updateLog(false) updatePercentage() if (testStatus.value != 'paused') { @@ -515,8 +515,8 @@ const showTestLog = () => { // 初始化检测脚本数据 const initScriptData = () => { let map = new Map() - map.set('Freq', '频率') - .set('VOL', '电压') + map.set('VOL', '电压') + .set('Freq', '频率') .set('Harm_V', '谐波电压') .set('Harm_I', '谐波电流') .set('Harm_P', '谐波有功功率') @@ -529,8 +529,8 @@ const initScriptData = () => { .set('Flicker', '短时闪变') let response: CheckData.ScriptItem[] = [ - {id: '1', code: 'Freq', scriptName: '频率准确度检测'}, - {id: '2', code: 'VOL', scriptName: '电压准确度检测'}, + {id: '1', code: 'VOL', scriptName: '电压准确度检测'}, + {id: '2', code: 'Freq', scriptName: '频率准确度检测'}, {id: '3', code: 'Harm_V', scriptName: '谐波电压准确度检测'}, {id: '4', code: 'Harm_I', scriptName: '谐波电流准确度检测'}, {id: '5', code: 'Harm_P', scriptName: '谐波有功功率准确度检测'}, @@ -863,18 +863,6 @@ const startTimer = () => { console.log('开始检测第' + activeIndex + '项') switch (activeIndex) { case 1: - emit('update:webMsgSend', { - requestId: 'Test_Freq_Start', - params: {} - }) - setTimeout(() => { - emit('update:webMsgSend', { - requestId: 'Test_Freq_End', - params: {} - }) - }, 2000); - break; - case 2: emit('update:webMsgSend', { requestId: 'Test_VOL_Start', params: {} @@ -886,6 +874,19 @@ const startTimer = () => { }) }, 2000); break; + case 2: + emit('update:webMsgSend', { + requestId: 'Test_Freq_Start', + params: {} + }) + setTimeout(() => { + emit('update:webMsgSend', { + requestId: 'Test_Freq_End', + params: {} + }) + }, 2000); + break; + case 3: emit('update:webMsgSend', { requestId: 'Test_Harm_V_Start',