|
@ -16,7 +16,7 @@ |
|
|
<div class="picture_area"> |
|
|
<div class="picture_area"> |
|
|
<!--加液区和拍照区可切换--> |
|
|
<!--加液区和拍照区可切换--> |
|
|
<div style="display: flex; justify-content: center; align-items: center"> |
|
|
<div style="display: flex; justify-content: center; align-items: center"> |
|
|
<div style="font-size: 1rem; margin-left: 0.3rem">加液区</div> |
|
|
|
|
|
|
|
|
<div style="font-size: 1rem; margin-left: 0.3rem">加液区</div> |
|
|
<van-switch |
|
|
<van-switch |
|
|
v-model="switchModule" |
|
|
v-model="switchModule" |
|
|
size="1rem" |
|
|
size="1rem" |
|
@ -27,14 +27,16 @@ |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<TakePickture v-if="switchModule"></TakePickture> |
|
|
<TakePickture v-if="switchModule"></TakePickture> |
|
|
<div v-else class="home_tube"> |
|
|
|
|
|
<div |
|
|
|
|
|
class="inner-circle" |
|
|
|
|
|
v-for="(tubeItem, index) in tubeList" |
|
|
|
|
|
:key="index" |
|
|
|
|
|
:style="{ background: tubeItem.color }" |
|
|
|
|
|
|
|
|
|
|
|
></div><!--@click="onChooseTube(tubeItem, index)"--> |
|
|
|
|
|
|
|
|
<div v-else style="display: flex;justify-content: center;"> |
|
|
|
|
|
<div class="home_tube"> |
|
|
|
|
|
<div |
|
|
|
|
|
class="inner-circle" |
|
|
|
|
|
v-for="(tubeItem, index) in tubeList" |
|
|
|
|
|
:key="index" |
|
|
|
|
|
:style="{ background: tubeItem.color }" |
|
|
|
|
|
|
|
|
|
|
|
></div><!--@click="onChooseTube(tubeItem, index)"--> |
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</div> |
|
|
<!--操作区--> |
|
|
<!--操作区--> |
|
|
<div class="graphite_btn_container"> |
|
|
<div class="graphite_btn_container"> |
|
@ -132,7 +134,7 @@ |
|
|
</div> |
|
|
</div> |
|
|
</template> |
|
|
</template> |
|
|
<script lang="ts" setup> |
|
|
<script lang="ts" setup> |
|
|
import { ref, reactive, onMounted, onUnmounted, effect } from "vue"; |
|
|
|
|
|
|
|
|
import { ref, reactive, onMounted, onUnmounted } from "vue"; |
|
|
//@ts-ignore |
|
|
//@ts-ignore |
|
|
import { ElMessage } from "element-plus"; |
|
|
import { ElMessage } from "element-plus"; |
|
|
import { createWebSocket, sharedWsUrl } from "@/services/socket"; |
|
|
import { createWebSocket, sharedWsUrl } from "@/services/socket"; |
|
@ -380,7 +382,7 @@ const onMoveToHeat = () => { |
|
|
|
|
|
|
|
|
//调用移至加热接口 |
|
|
//调用移至加热接口 |
|
|
const params = { |
|
|
const params = { |
|
|
areaId: selectedDataItem.id, |
|
|
|
|
|
|
|
|
heatId: selectedDataItem.id, |
|
|
}; |
|
|
}; |
|
|
const command: OperationCmd = "moveToHeatArea"; |
|
|
const command: OperationCmd = "moveToHeatArea"; |
|
|
taskCmd({ command, params }).then((res) => { |
|
|
taskCmd({ command, params }).then((res) => { |
|
@ -430,7 +432,7 @@ const onMoveToOperationArea = () => { |
|
|
|
|
|
|
|
|
//4、发送移至加液区指令 |
|
|
//4、发送移至加液区指令 |
|
|
const params = { |
|
|
const params = { |
|
|
areaId: selectedDataItem.id |
|
|
|
|
|
|
|
|
heatId: selectedDataItem.id |
|
|
} |
|
|
} |
|
|
onSendCmd('moveToActionArea', params) |
|
|
onSendCmd('moveToActionArea', params) |
|
|
//更新UI |
|
|
//更新UI |
|
@ -475,7 +477,7 @@ const onMoveToSpecial = () => { |
|
|
onSelectedTray(selectedDataItem, 'isMove') |
|
|
onSelectedTray(selectedDataItem, 'isMove') |
|
|
|
|
|
|
|
|
const params = { |
|
|
const params = { |
|
|
areaId:selectedDataItem.id |
|
|
|
|
|
|
|
|
heatId:selectedDataItem.id |
|
|
} |
|
|
} |
|
|
onSendCmd('moveToActionArea', params) |
|
|
onSendCmd('moveToActionArea', params) |
|
|
} |
|
|
} |
|
@ -587,7 +589,7 @@ const onStartHeat = () => { |
|
|
const cmdList:any = [] |
|
|
const cmdList:any = [] |
|
|
selectedTrayList.value.forEach((heatArea:any) => { |
|
|
selectedTrayList.value.forEach((heatArea:any) => { |
|
|
const params = { |
|
|
const params = { |
|
|
areaId : heatArea.id, |
|
|
|
|
|
|
|
|
heatId : heatArea.id, |
|
|
temperature: heatArea.temperature |
|
|
temperature: heatArea.temperature |
|
|
} |
|
|
} |
|
|
taskCmd({ command: 'startHeat', params }).then((res) => { |
|
|
taskCmd({ command: 'startHeat', params }).then((res) => { |
|
@ -611,7 +613,7 @@ const onStopHeat = () => { |
|
|
} |
|
|
} |
|
|
selectedTrayList.value.forEach((heatArea:any) => { |
|
|
selectedTrayList.value.forEach((heatArea:any) => { |
|
|
const params = { |
|
|
const params = { |
|
|
areaId : heatArea.id, |
|
|
|
|
|
|
|
|
heatId : heatArea.id, |
|
|
} |
|
|
} |
|
|
taskCmd({ command: 'stopHeat', params }).then((res) => { |
|
|
taskCmd({ command: 'stopHeat', params }).then((res) => { |
|
|
if (res.success) { |
|
|
if (res.success) { |
|
@ -661,7 +663,7 @@ const onUpTray = () => { |
|
|
//选择了多个加热区,可托起多个加热区试管加 |
|
|
//选择了多个加热区,可托起多个加热区试管加 |
|
|
selectedTrayList.value.forEach((heatAreaItem:any) => { |
|
|
selectedTrayList.value.forEach((heatAreaItem:any) => { |
|
|
const params = { |
|
|
const params = { |
|
|
areaId: heatAreaItem.id |
|
|
|
|
|
|
|
|
heatId: heatAreaItem.id |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
taskCmd({ command:'upTray', params }).then((res) => { |
|
|
taskCmd({ command:'upTray', params }).then((res) => { |
|
@ -677,11 +679,11 @@ const onUpTray = () => { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
//修改加热区状态 selectedValue: 0 | 1 | 2; // 0为无托盘,1为有托盘,2为托盘抬起 |
|
|
//修改加热区状态 selectedValue: 0 | 1 | 2; // 0为无托盘,1为有托盘,2为托盘抬起 |
|
|
const updateheatAearStatus = (selectedValue:any, areaId:string) => { |
|
|
|
|
|
|
|
|
const updateheatAearStatus = (selectedValue:any, heatId:string) => { |
|
|
let heaterList = statusStore.status?.heater |
|
|
let heaterList = statusStore.status?.heater |
|
|
if(heaterList){ |
|
|
if(heaterList){ |
|
|
heaterList.forEach(item => { |
|
|
heaterList.forEach(item => { |
|
|
if(item.heaterId == areaId){ |
|
|
|
|
|
|
|
|
if(item.heaterId == heatId){ |
|
|
item.trayStatus = selectedValue |
|
|
item.trayStatus = selectedValue |
|
|
} |
|
|
} |
|
|
}) |
|
|
}) |
|
@ -866,6 +868,7 @@ const onSendCmd = (command:OperationCmd,params:any)=> { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
.home_tube { |
|
|
.home_tube { |
|
|
|
|
|
width: 13rem; |
|
|
height: 13rem; |
|
|
height: 13rem; |
|
|
background: #384d5d; |
|
|
background: #384d5d; |
|
|
opacity: 1; |
|
|
opacity: 1; |
|
|