diff --git a/src/services/socket.ts b/src/services/socket.ts index 1cccf73..1004bba 100644 --- a/src/services/socket.ts +++ b/src/services/socket.ts @@ -87,7 +87,7 @@ export type StatusDatagram = { // }>; // heatingStatus: boolean; // 加热区列表 - heater: Array<{ + heatArea: Array<{ heaterId: string; trayStatus: 0 | 1 | 2; // 0为无托盘,1为有托盘,2为托盘抬起 isHeating: boolean; // 是否正在加热 diff --git a/src/views/graphite/index.vue b/src/views/graphite/index.vue index 3333211..254ab02 100644 --- a/src/views/graphite/index.vue +++ b/src/views/graphite/index.vue @@ -157,7 +157,7 @@ const settingStore = useSettingStore(); //设备的全局状态 const statusStore = useStatusStore(); -const heatAearStatusList = ref(statusStore.status?.heater || []) +const heatAearStatusList = ref(statusStore.status?.heatArea || []) const heatList: any = ref([]); const craftVisible = ref(false); const switchModule = ref(false); @@ -172,13 +172,26 @@ onMounted(() => { heatList.value = settingStore.heatAreaConfig.map((item:any) => { //添加一个字段,默认为未选中 item.isSelect = false; + heatAearStatusList.value.forEach((areaItem:any) => { + if(areaItem.hardwareId == item.hardwareId){ + item = { + ...item, + heatAearStatus:areaItem + } + } + }) return item; }); //设备16个试管的基础数据 tubeBaseConfig(); //连接socket const wsClient = createWebSocket(sharedWsUrl); + let globeStatus:any = 0; const subscription = wsClient.dataOb.subscribe((data) => { + if(!globeStatus){//为了只输入一行,不想后台一直打印此处日志 TODO + console.log('globeStatus====', data) + } + globeStatus = 1; if (data.type === "cmd") { console.log('data--首页上报的事件--', data) const cmdInfo = getTxnRecord(data.data.commandId, "task"); @@ -370,12 +383,18 @@ const onMoveToHeat = () => { ElMessage.error("只能选择一个加热区"); return; } - let selectedDataItem = selectedTrayList.value[0]; //2、判断选择的加热区是否已经有了试管架, 加热区是否有试管是通过设备上报的数据获取的 - let trayStatus = heatAearStatusList.value[selectedDataItem.index].trayStatus; + let hardwareId = selectedDataItem.hardwareId; + // let trayStatus = heatAearStatusList.value[selectedDataItem.index].trayStatus; + let trayStatus + heatAearStatusList.value.forEach((item:any) => { + if(hardwareId == item.hardwareId){ + trayStatus = item.trayStatus + } + }) // trayStatus: 0为无托盘,1为有托盘,2为托盘抬起 - if (trayStatus == 0) { + if (trayStatus == 1) { ElMessage.error("选择的加热区已有试管架,重新选择加热区"); return; } @@ -680,9 +699,9 @@ const onUpTray = () => { //修改加热区状态 selectedValue: 0 | 1 | 2; // 0为无托盘,1为有托盘,2为托盘抬起 const updateheatAearStatus = (selectedValue:any, heatId:string) => { - let heaterList = statusStore.status?.heater + let heaterList = statusStore.status?.heatArea if(heaterList){ - heaterList.forEach(item => { + heaterList.forEach((item:any) => { if(item.heaterId == heatId){ item.trayStatus = selectedValue } @@ -728,7 +747,6 @@ const onSendCmd = (command:OperationCmd,params:any)=> { .picture_area { display: flex; flex-direction: column; - height: 47.5rem; } } }