@@ -13,7 +13,7 @@
@click ="handlePause()" > 停止检测
< / el -button >
< el-button type = "warning" v-if = "testStatus === 'paused_ing' && percentage < 100" disabled >
< el-icon class = "loading-box" >
< el-icon class = "loading-box" style = "margin-right: 8px;" >
< component :is = "Refresh" / >
< / el-icon >
暂停中
@@ -303,7 +303,6 @@ watch(testStatus, function (newValue, oldValue) {
if ( newValue == 'start' ) {
ElMessage . success ( '初始化开始!' )
startData . value = new Date ( ) ;
showTestLog ( )
if ( oldValue == 'error' ) {
@@ -315,6 +314,8 @@ watch(testStatus, function (newValue, oldValue) {
}
emit ( 'update:testStatus' , 'test_init' )
//startTimer() // todo 可移除
startData . value = new Date ( ) ;
timeDifference . value = 0 ;
testLogList . push ( { type : 'info' , log : ` ${ new Date ( ) . toLocaleString ( ) } :初始化开始! ` } )
}
} )
@@ -343,7 +344,7 @@ watch(webMsgSend, function (newValue, oldValue) {
type : 'error' ,
log : ` ${ new Date ( ) . toLocaleString ( ) } :存在已经初始化步骤,执行自动关闭,请重新发起检测! `
} )
emit ( 'update:testStatus' , 'error ' )
emit ( 'update:testStatus' , 'test_recheck ' )
} else {
switch ( newValue . requestId ) {
case 'error_flow_end' :
@@ -418,9 +419,11 @@ watch(webMsgSend, function (newValue, oldValue) {
if ( newValue . code == 25001 ) {
ElMessage . success ( '初始化成功!' )
testLogList . push ( { type : 'info' , log : ` ${ new Date ( ) . toLocaleString ( ) } :协议校验成功! ` } )
timeDifference . value = + new Date ( ) . getTime ( ) - startData . value . getTime ( ) ;
testLogList . push ( { type : 'info' , log : ` ${ new Date ( ) . toLocaleString ( ) } :初始化成功! ` } )
percentage . value = 3
activeIndex = getNextActiveIndex ( ) + 2
//startTimer()
@@ -448,172 +451,76 @@ watch(webMsgSend, function (newValue, oldValue) {
// ElMessage.error('无法继续检测')
// break;
case 'FREQ_Start' :
activeIndex = getActiveIndex ( 'FREQ' )
updateCheckResultView ( "FREQ" , true )
updateLog ( true )
handleStartItem ( 'FREQ' , newValue . desc )
break ;
case 'FREQ_End' :
updatePercentage ( )
updateCheckResultView ( "FREQ" , false , newValue . data )
updateLog ( false )
if ( testStatus . value != 'paused' ) {
activeIndex = getNextActiveIndex ( 'FREQ' )
//startTimer()
}
handleEndItem ( 'FREQ' , newValue . desc , newValue . data )
break ;
case 'V_Start' :
activeIndex = getActiveIndex ( 'V' )
updateCheckResultView ( "V" , true )
updateLog ( true )
handleStartItem ( 'V' , newValue . desc )
break ;
case 'V_End' :
updatePercentage ( )
updateCheckResultView ( "V" , false , newValue . data )
updateLog ( false )
if ( testStatus . value != 'paused' ) {
activeIndex = getNextActiveIndex ( 'V' )
//startTimer()
}
handleEndItem ( 'V' , newValue . desc , newValue . data )
break ;
case 'HV_Start' :
activeIndex = getActiveIndex ( 'HV' )
updateCheckResultView ( "HV" , true )
updateLog ( true )
handleStartItem ( 'HV' , newValue . desc )
break ;
case 'HV_End' :
updatePercentage ( )
updateCheckResultView ( "HV" , false , newValue . data )
updateLog ( false )
if ( testStatus . value != 'paused' ) {
activeIndex = getNextActiveIndex ( 'HV' )
//startTimer()
}
handleEndItem ( 'HV' , newValue . desc , newValue . data )
break ;
case 'HI_Start' :
activeIndex = getActiveIndex ( 'HI' )
updateCheckResultView ( "HI" , true )
updateLog ( true )
handleStartItem ( 'HI' , newValue . desc )
break ;
case 'HI_End' :
updatePercentage ( )
updateCheckResultView ( "HI" , false , newValue . data )
updateLog ( false )
if ( testStatus . value != 'paused' ) {
activeIndex = getNextActiveIndex ( 'HI' )
//startTimer()
}
handleEndItem ( 'HI' , newValue . desc , newValue . data )
break ;
case 'HP_Start' :
activeIndex = getActiveIndex ( 'HP' )
updateCheckResultView ( "HP" , true )
updateLog ( true )
handleStartItem ( 'HP' , newValue . desc )
break ;
case 'HP_End' :
updatePercentage ( )
updateCheckResultView ( "HP" , false , newValue . data )
updateLog ( false )
if ( testStatus . value != 'paused' ) {
activeIndex = getNextActiveIndex ( 'HP' )
//startTimer()
}
handleEndItem ( 'HP' , newValue . desc , newValue . data )
break ;
case 'HSV_Start' :
activeIndex = getActiveIndex ( 'HSV' )
updateCheckResultView ( "HSV" , true )
updateLog ( true )
handleStartItem ( 'HSV' , newValue . desc )
break ;
case 'HSV_End' :
updatePercentage ( )
updateCheckResultView ( "HSV" , false , newValue . data )
updateLog ( false )
if ( testStatus . value != 'paused' ) {
activeIndex = getNextActiveIndex ( 'HSV' )
//startTimer()
}
handleEndItem ( 'HSV' , newValue . desc , newValue . data )
break ;
case 'HSI_Start' :
activeIndex = getActiveIndex ( 'HSI' )
updateCheckResultView ( "HSI" , true )
updateLog ( true )
handleStartItem ( 'HSI' , newValue . desc )
break ;
case 'HSI_End' :
updatePercentage ( )
updateCheckResultView ( "HSI" , false , newValue . data )
updateLog ( false )
if ( testStatus . value != 'paused' ) {
activeIndex = getNextActiveIndex ( 'HSI' )
//startTimer()
}
handleEndItem ( 'HSI' , newValue . desc , newValue . data )
break ;
case 'VOLTAGE_Start' :
activeIndex = getActiveIndex ( 'VOLTAGE' )
updateCheckResultView ( "VOLTAGE" , true )
updateLog ( true )
handleStartItem ( 'VOLTAGE' , newValue . desc )
break ;
case 'VOLTAGE_End' :
updatePercentage ( )
updateCheckResultView ( "VOLTAGE" , false , newValue . data )
updateLog ( false )
if ( testStatus . value != 'paused' ) {
activeIndex = getNextActiveIndex ( 'VOLTAGE' )
//startTimer()
}
handleEndItem ( 'VOLTAGE' , newValue . desc , newValue . data )
break ;
case 'I_Start' :
activeIndex = getActiveIndex ( 'I' )
updateCheckResultView ( "I" , true )
updateLog ( true )
handleStartItem ( 'I' , newValue . desc )
break ;
case 'I_End' :
updatePercentage ( )
updateCheckResultView ( "I" , false , newValue . data )
updateLog ( false )
if ( testStatus . value != 'paused' ) {
activeIndex = getNextActiveIndex ( 'I' )
//startTimer()
}
handleEndItem ( 'I' , newValue . desc , newValue . data )
break ;
case 'IMBV_Start' :
activeIndex = getActiveIndex ( 'IMBV' )
updateCheckResultView ( "IMBV" , true )
updateLog ( true )
handleStartItem ( 'IMBV' , newValue . desc )
break ;
case 'IMBV_End' :
updatePercentage ( )
updateCheckResultView ( "IMBV" , false , newValue . data )
updateLog ( false )
if ( testStatus . value != 'paused' ) {
activeIndex = getNextActiveIndex ( 'IMBV' )
//startTimer()
}
handleEndItem ( 'IMBV' , newValue . desc , newValue . data )
break ;
case 'IMBA_Start' :
activeIndex = getActiveIndex ( 'IMBA' )
updateCheckResultView ( "IMBA" , true )
updateLog ( true )
handleStartItem ( 'IMBA' , newValue . desc )
break ;
case 'IMBA_End' :
updatePercentage ( )
updateCheckResultView ( "IMBA" , false , newValue . data )
updateLog ( false )
if ( testStatus . value != 'paused' ) {
activeIndex = getNextActiveIndex ( 'IMBA' )
//startTimer()
}
handleEndItem ( 'IMBA' , newValue . desc , newValue . data )
break ;
case 'F_Start' :
activeIndex = getActiveIndex ( 'F' )
updateCheckResultView ( "F" , true )
updateLog ( true )
handleStartItem ( 'F' , newValue . desc )
break ;
case 'F_End' :
updatePercentage ( )
updateCheckResultView ( "F" , false , newValue . data )
updateLog ( false )
if ( testStatus . value != 'paused' ) {
activeIndex = getNextActiveIndex ( 'F' )
//startTimer()
}
handleEndItem ( 'F' , newValue . desc , newValue . data )
break ;
case 'Quit' :
console . log ( '检测结束' )
@@ -623,6 +530,44 @@ watch(webMsgSend, function (newValue, oldValue) {
} , { deep : true } )
const handleStartItem = ( code : string , desc : string | undefined ) => {
if ( desc === undefined ) {
activeIndex = getActiveIndex ( code )
updateCheckResultView ( code , true )
updateLog ( true )
} else {
if ( desc . length > 60 ) {
desc = desc . substring ( 0 , 60 ) + '...'
}
testLogList . push ( { type : 'info' , log : ` ${ new Date ( ) . toLocaleString ( ) } : ${ desc } 准确度检测:开始 ` } )
}
}
const handleEndItem = ( code : string , desc : string | undefined , devices : CheckData . DeviceCheckResult [ ] = [ ] ) => {
if ( desc === undefined ) {
updatePercentage ( )
updateCheckResultView ( code , false , devices )
updateLog ( false )
if ( testStatus . value != 'paused' ) {
activeIndex = getNextActiveIndex ( code )
//startTimer()
}
} else {
let result = getResult ( devices )
if ( desc . length > 60 ) {
desc = desc . substring ( 0 , 60 ) + '...'
}
if ( result === 1 ) {
testLogList . push ( { type : 'info' , log : ` ${ new Date ( ) . toLocaleString ( ) } : ${ desc } 检测结束:符合 ` } )
}
if ( result === 2 ) {
testLogList . push ( { type : 'error' , log : ` ${ new Date ( ) . toLocaleString ( ) } : ${ desc } 检测结束:不符合 ` } )
}
if ( result === 4 ) {
testLogList . push ( { type : 'warning' , log : ` ${ new Date ( ) . toLocaleString ( ) } : ${ desc } 检测结束:数据异常 ` } )
}
}
}
// 更新进度条
const updatePercentage = ( ) => {
@@ -716,16 +661,20 @@ const updateCheckResult = (data: CheckData.ScriptChnItem) => {
checkResult . forEach ( item => {
if ( item . scriptType == scriptType ) {
item . devices . forEach ( ( device , index ) => {
let targetDevice = data . devices . find ( dev => dev . deviceId === device . deviceId )
for ( let i = 0 ; i < item . devices . length ; i ++ ) {
let targetDevice = data . devices . find ( dev => dev . deviceId === item . devices [ i ] . deviceId )
if ( targetDevice !== undefined ) {
device . chnResult = [ ... targetDevice . chnResult ]
item . devices [ i ] . chnResult = [ ... targetDevice . chnResult ]
}
} )
}
// item.devices.forEach((device, index) => {
// let targetDevice = data.devices.find(dev => dev.deviceId === device.deviceId)
// if (targetDevice !== undefined) {
// device.chnResult = [...targetDevice.chnResult]
// }
// })
}
} )
}
const scrollToBottom = ( ) => {
@@ -768,12 +717,13 @@ const updateLog = (isStart: boolean) => {
let timeDifferenceItem = 0
if ( activeIndex === 1 && isStart ) {
timeDifference. value = 0 ;
// timeDifference.value = 0;
//testLogList.length = 0; // 清空数组
}
// debugger
if ( activeIndex <= checkTotal ) {
if ( isStart ) {
startData . value = new Date ( ) ;
testLogList . push ( {
type : 'info' ,
log : currentTime . value + ` : ${ scriptData [ activeIndex - 1 ] . scriptName } 准确度检测:开始 ` ,
@@ -891,8 +841,8 @@ const updateCheckResultView = (scriptCode: string, isStart: boolean, devices: Ch
// }
// {
// chnResult: [1, 1, 1, 1],
// deviceId: "2957b271f39d4240a1c5e275c453676c ",
// deviceName: "测试003 "
// deviceId: "461813a4f30f4a34a1a273ecd0379458 ",
// deviceName: "25011407 "
// }
// ]
let temp = null
@@ -995,6 +945,23 @@ const getCheckResult = (scriptType: string) => {
return tempScriptChnItem
}
const getResult = ( devices : CheckData . DeviceCheckResult [ ] = [ ] ) => {
let type = 1
let tempChnResult : CheckData . ChnCheckResultEnum [ ] = [ ]
for ( let i = 0 ; i < devices . length ; i ++ ) {
tempChnResult . push ( ... devices [ i ] . chnResult )
}
if ( tempChnResult . some ( item => item === CheckData . ChnCheckResultEnum . ERRORDATA ) ) {
type = CheckData . ChnCheckResultEnum . ERRORDATA
}
if ( tempChnResult . some ( item => item === CheckData . ChnCheckResultEnum . FAIL ) ) {
type = CheckData . ChnCheckResultEnum . FAIL
}
return type
}
// 点击查看( 设备) 通道检测详情。参数1: 设备信息, 参数2: 通道号, -1: 代表查看全部通道
const handleClick = ( item : any , chnNum : number , scriptType : string ) => {
let checkResultItem = checkResult . find ( obj => obj . scriptType === scriptType )
@@ -1082,14 +1049,7 @@ const startTimer = () => {
} , 6000 )
break ;
case 1 :
emit ( 'update:webMsgSend' , {
requestId : 'V_Start'
} )
setTimeout ( ( ) => {
emit ( 'update:webMsgSend' , {
requestId : 'V_End'
} )
} , 2000 ) ;
todoItem ( 'V' )
// setTimeout(() => {
// emit('update:webMsgSend', {
// requestId: 'FREQ_Start'
@@ -1102,14 +1062,7 @@ const startTimer = () => {
// }, 2000);
break ;
case 2 :
emit ( 'update:webMsgSend' , {
requestId : 'I_Start'
} )
setTimeout ( ( ) => {
emit ( 'update:webMsgSend' , {
requestId : 'I_End'
} )
} , 2000 )
todoItem ( 'I' )
// emit('update:webMsgSend', {
// requestId: 'V_Start'
// })
@@ -1120,14 +1073,7 @@ const startTimer = () => {
// }, 2000);
break ;
case 3 :
emit ( 'update:webMsgSend' , {
requestId : 'IMBV_Start'
} )
setTimeout ( ( ) => {
emit ( 'update:webMsgSend' , {
requestId : 'IMBV_End'
} )
} , 2000 )
todoItem ( 'IMBV' )
// emit('update:webMsgSend', {
// requestId: 'HV_Start',
// })
@@ -1138,16 +1084,7 @@ const startTimer = () => {
// }, 2000)
break ;
case 4 :
setTimeout ( ( ) => {
emit ( 'update:webMsgSend' , {
requestId : 'FREQ_Start'
} )
} , 1000 )
setTimeout ( ( ) => {
emit ( 'update:webMsgSend' , {
requestId : 'FREQ_End'
} )
} , 2000 ) ;
todoItem ( 'FREQ' )
// emit('update:webMsgSend', {
// requestId: 'HI_Start'
// })
@@ -1158,14 +1095,7 @@ const startTimer = () => {
// }, 2000)
break ;
case 5 :
emit ( 'update:webMsgSend' , {
requestId : 'HV_Start' ,
} )
setTimeout ( ( ) => {
emit ( 'update:webMsgSend' , {
requestId : 'HV_End'
} )
} , 2000 )
todoItem ( 'HV' )
// emit('update:webMsgSend', {
// requestId: 'HP_Start',
// })
@@ -1176,14 +1106,7 @@ const startTimer = () => {
// }, 2000)
break ;
case 6 :
emit ( 'update:webMsgSend' , {
requestId : 'HI_Start'
} )
setTimeout ( ( ) => {
emit ( 'update:webMsgSend' , {
requestId : 'HI_End'
} )
} , 2000 )
todoItem ( 'HI' )
// emit('update:webMsgSend', {
// requestId: 'HSV_Start'
// })
@@ -1194,14 +1117,7 @@ const startTimer = () => {
// }, 2000)
break ;
case 7 :
emit ( 'update:webMsgSend' , {
requestId : 'HSV_Start'
} )
setTimeout ( ( ) => {
emit ( 'update:webMsgSend' , {
requestId : 'HSV_End'
} )
} , 2000 )
todoItem ( 'HSV' )
// emit('update:webMsgSend', {
// requestId: 'HSI_Start'
// })
@@ -1212,14 +1128,7 @@ const startTimer = () => {
// }, 2000)
break ;
case 8 :
emit ( 'update:webMsgSend' , {
requestId : 'HSI_Start'
} )
setTimeout ( ( ) => {
emit ( 'update:webMsgSend' , {
requestId : 'HSI_End'
} )
} , 2000 )
todoItem ( 'HSI' )
// emit('update:webMsgSend', {
// requestId: 'VOLTAGE_Start'
// })
@@ -1269,7 +1178,7 @@ const startTimer = () => {
// })
// }, 2000)
// break;
case 13 :
case 9 :
emit ( 'update:webMsgSend' , {
requestId : 'Quit'
} )
@@ -1293,6 +1202,87 @@ const pauseSuccessCallback = () => {
console . log ( '暂停中' )
} ;
const todoItem = ( code : string ) => {
emit ( 'update:webMsgSend' , {
requestId : ` ${ code } _Start `
} )
setTimeout ( ( ) => {
if ( testStatus . value !== 'paused' ) {
emit ( 'update:webMsgSend' , {
requestId : ` ${ code } _Start ` ,
desc : '输入: 频率t=42.5Hz Ua=57.74%Un,相角=0.0° Ub=57.74%Un,相角=-120.0° Uc=57.74%Un,相角=120.0° Ia=0.0%In,相角=0.0° Ib=0.0%In,相角=0.0° Ic=0.0%In,相角=0.0° '
} )
}
} , 1000 )
setTimeout ( ( ) => {
if ( testStatus . value !== 'paused' ) {
emit ( 'update:webMsgSend' , {
requestId : ` ${ code } _End ` ,
desc : '输入: 频率t=42.5Hz Ua=57.74%Un,相角=0.0° Ub=57.74%Un,相角=-120.0° Uc=57.74%Un,相角=120.0° Ia=0.0%In,相角=0.0° Ib=0.0%In,相角=0.0° Ic=0.0%In,相角=0.0° ' ,
data : [ {
chnResult : [ 1 , 1 , 1 , 1 ] ,
deviceId : "461813a4f30f4a34a1a273ecd0379458" ,
deviceName : "25011407"
} ]
} )
}
} , 2000 )
setTimeout ( ( ) => {
if ( testStatus . value !== 'paused' ) {
emit ( 'update:webMsgSend' , {
requestId : ` ${ code } _Start ` ,
desc : '输入: 频率t=45.5Hz Ua=57.74%Un,相角=0.0° Ub=57.74%Un,相角=-120.0° Uc=57.74%Un,相角=120.0° Ia=0.0%In,相角=0.0° Ib=0.0%In,相角=0.0° Ic=0.0%In,相角=0.0° '
} )
}
} , 3000 )
setTimeout ( ( ) => {
if ( testStatus . value !== 'paused' ) {
emit ( 'update:webMsgSend' , {
requestId : ` ${ code } _End ` ,
desc : '输入: 频率t=45.5Hz Ua=57.74%Un,相角=0.0° Ub=57.74%Un,相角=-120.0° Uc=57.74%Un,相角=120.0° Ia=0.0%In,相角=0.0° Ib=0.0%In,相角=0.0° Ic=0.0%In,相角=0.0° ' ,
data : [ {
chnResult : [ 1 , 1 , 1 , 1 ] ,
deviceId : "461813a4f30f4a34a1a273ecd0379458" ,
deviceName : "25011407"
} ]
} )
}
} , 5000 )
setTimeout ( ( ) => {
if ( testStatus . value !== 'paused' ) {
emit ( 'update:webMsgSend' , {
requestId : ` ${ code } _Start ` ,
desc : '输入: 频率t=50.5Hz Ua=57.74%Un,相角=0.0° Ub=57.74%Un,相角=-120.0° Uc=57.74%Un,相角=120.0° Ia=0.0%In,相角=0.0° Ib=0.0%In,相角=0.0° Ic=0.0%In,相角=0.0° '
} )
}
} , 6000 )
setTimeout ( ( ) => {
if ( testStatus . value !== 'paused' ) {
emit ( 'update:webMsgSend' , {
requestId : ` ${ code } _End ` ,
desc : '输入: 频率t=50.5Hz Ua=57.74%Un,相角=0.0° Ub=57.74%Un,相角=-120.0° Uc=57.74%Un,相角=120.0° Ia=0.0%In,相角=0.0° Ib=0.0%In,相角=0.0° Ic=0.0%In,相角=0.0° ' ,
data : [ {
chnResult : [ 1 , 2 , 1 , 1 ] ,
deviceId : "461813a4f30f4a34a1a273ecd0379458" ,
deviceName : "25011407"
} ]
} )
}
} , 8000 )
setTimeout ( ( ) => {
if ( testStatus . value !== 'paused' ) {
emit ( 'update:webMsgSend' , {
requestId : ` ${ code } _End ` ,
data : [ {
chnResult : [ 1 , 2 , 1 , 1 ] ,
deviceId : "461813a4f30f4a34a1a273ecd0379458" ,
deviceName : "25011407"
} ]
} )
}
} , 9000 )
}
const handleResumeTest = ( ) => {
//activeIndex++
startData . value = new Date ( ) ;