diff --git a/src/views/graphite/index.vue b/src/views/graphite/index.vue index 6df9048..912583b 100644 --- a/src/views/graphite/index.vue +++ b/src/views/graphite/index.vue @@ -119,22 +119,22 @@ const liquidArea = ref() watch( () => craftStore.craftInfo, (newVal) => { - if(newVal){ - heatList.value.forEach((item:any) => { - if(item.id == newVal?.heatId && item.craftInfo){ - item.craftInfo.status = newVal?.status - if(newVal?.status == 3){//停止执行 + if(newVal){ + for(const item of heatList.value){ + if(item.id == newVal?.heatId && item.craftInfo){ + item.craftInfo.status = newVal?.status + if(newVal?.status == 3){//停止执行 item.executing_craft = false; craftName.value = "选择工艺"; exeCraftName.value = "执行工艺"; - }else if(item.executing_craft){//正在执行 + }else if(item.executing_craft){//正在执行 if (newVal?.status == 1 && item.isSelect) { craftName.value = "暂停工艺"; exeCraftName.value = "停止工艺"; } } } - }); + } } } ); @@ -145,12 +145,9 @@ watch(()=>settingStore.heatAreaConfig,(newVal, oldValue)=>{ } }) -const heatAearStatusList = ref(statusStore.status?.heatArea || []); const heatList = shallowRef([]); const craftVisible = ref(false); let tubeList:any = []; -const selectedColor = "#4F85FB"; -const emptyColor = "#FFFFFF"; const taskName = ref(""); let deviceData = {} onMounted(() => { @@ -160,7 +157,7 @@ onMounted(() => { tubeBaseConfig(); //连接socket const wsClient = createWebSocket(sharedWsUrl); - const subscription = wsClient.dataOb.subscribe((data) => { + const subscription = wsClient.dataOb.subscribe((data) => { if (data.type === "cmd") { const cmdInfo = getTxnRecord(data.data.commandId, "task"); if (cmdInfo) { @@ -227,13 +224,11 @@ const onSelectedTray = (heatAreaItem: any, type: string) => { } else {//点击操作区指令时,加热区选中的状态不能变 heatAreaItem.isSelect = true; } - console.log('selectedTrayList.value---', selectedTrayList.value) tubeList = heatAreaItem.tubeList; }; const initHeatList = () => { let heatAearStatusList = statusStore.status.heatArea - console.log('settingStore.heatAreaConfig---', settingStore.heatAreaConfig) heatList.value = settingStore.heatAreaConfig.map((item:any) => { heatAearStatusList.forEach((areaItem:any) => { if(areaItem.hardwareId == item.hardwareId){ @@ -253,14 +248,15 @@ const updateHeatList = (command:any) => { let heatAearStatusList = statusStore.status.heatArea const selectedIds = selectedTrayList.value.map((item: any) => item.id); heatList.value = list.map((item:any) => { - heatAearStatusList.forEach((areaItem:any) => { - if(areaItem.hardwareId == item.hardwareId){ - item = { - ...item, - heatAearStatus:areaItem, - } + for(const areaItem of heatAearStatusList){ + if(areaItem.hardwareId == item.hardwareId){ + item = { + ...item, + heatAearStatus:areaItem, } - }) + } + } + if(selectedIds.includes(item.id)){ item.isSelect = true; if(command == 'moveToHeatArea'){ @@ -687,31 +683,23 @@ const onStartHeat = () => { ElMessage.error("请选择目标加热区"); return; } + + const selectedIds = selectedTrayList.value.map((item: any) => item.id); //判断选中的加热区是否有试管架 - let existTubeRack = true; + let existTubeRack = heatList.value.some((item:any)=>selectedIds.includes(item.id) && item.heatAearStatus.trayStatus == 0) //加热区是否设置了加热温度 - let hasSetTemp = true; - const selectedIds = selectedTrayList.value.map((item: any) => item.id); - heatList.value.forEach((item: any) => { - if (selectedIds.includes(item.id) && item.heatAearStatus.trayStatus == 0) { - existTubeRack = true; - } - if (!item.temperature) { - hasSetTemp = false; - } - }); + let hasSetTemp = heatList.value.some((item:any)=>!item.temperature) - if (!existTubeRack) { + if (existTubeRack) { ElMessage.error("选择的加热区未放置试管架,请重新选择"); return; } - if (!hasSetTemp) { + if (hasSetTemp) { ElMessage.error("选择的加热区未设置温度,请设置温度"); return; } //后台批量发送指令 - const cmdList: any = []; selectedTrayList.value.forEach((heatArea: any) => { const params = { heatId: heatArea.id, @@ -719,14 +707,12 @@ const onStartHeat = () => { }; taskCmd({ command: "startHeat", params }).then(res => { if (res.success) { - // ElMessage.success("指令已发送,请稍等"); isHeating.value = true; } else { ElMessage.error(res.msg); } }); }); - // onSendCmd("startHeat", cmdList) }; //停止加热 @@ -742,7 +728,6 @@ const onStopHeat = () => { }; taskCmd({ command: "stopHeat", params }).then(res => { if (res.success) { - // ElMessage.success("指令已发送,请稍等"); isHeating.value = false; } else { ElMessage.error(res.msg); @@ -757,7 +742,6 @@ const onStartShakingTube = () => { const params = {}; taskCmd({ command: "startShakeUp", params }).then(res => { if (res.success) { - // ElMessage.success("指令已发送,请稍等"); isSharking.value = true; setOnGoingStatus("shaking"); } else { @@ -771,7 +755,6 @@ const onStopShakingTube = () => { const params = {}; taskCmd({ command: "stopShakeUp", params }).then(res => { if (res.success) { - // ElMessage.success("指令已发送,请稍等"); isSharking.value = false; } else { ElMessage.error(res.msg); @@ -805,7 +788,6 @@ const onSendCmd = (command: OperationCmd, params: any) => { //发送加热指令 taskCmd({ command, params }).then(res => { if (res.success) { - // ElMessage.success("指令已发送,请稍等"); setOnGoingStatus("movingToAct"); } else { ElMessage.error(res.msg);