Browse Source

feat: 工艺绑定

master
guoapeng 1 week ago
parent
commit
b1230213e2
  1. 29
      src/components/home/selectCraft/index.vue
  2. 14
      src/layouts/default.vue
  3. 22
      src/views/home/index.vue

29
src/components/home/selectCraft/index.vue

@ -34,9 +34,33 @@ const handleCheckAllChange = (val: CheckboxValueType, type: number) => {
const tubeCrafts = ref([]) const tubeCrafts = ref([])
const selectChange = (val: any) => {
const selectTubes = trayTubes1.value.concat(trayTubes2.value)
selectTubes.forEach((item) => {
const tube = tubeCrafts.value.find((tube: any) => tube.tubeNum === item)
if (tube) {
tube.craftsId = val
}
else {
tubeCrafts.value.push({
tubeNum: item,
craftsId: val,
})
}
})
}
const close = () => { const close = () => {
emits('close') emits('close')
} }
const findCraftName = (id: number) => {
const craft = tubeCrafts.value.find((item: any) => item.tubeNum === id)
if (craft) {
return craftList.value.find(c => c.tubeNum === craft.craftsId)?.name
}
return undefined
}
</script> </script>
<template lang="pug"> <template lang="pug">
@ -50,6 +74,7 @@ const close = () => {
div.tube-item div.tube-item
span.serial-number {{item.toString().padStart(2, '0')}} span.serial-number {{item.toString().padStart(2, '0')}}
el-checkbox(:value="item") el-checkbox(:value="item")
p {{findCraftName(item) || ''}}
el-card el-card
el-checkbox(v-model="checkAll2" :indeterminate="isIndeterminate2" @change="val => handleCheckAllChange(val, 2)") 全选 el-checkbox(v-model="checkAll2" :indeterminate="isIndeterminate2" @change="val => handleCheckAllChange(val, 2)") 全选
el-checkbox-group(v-model="trayTubes2" ) el-checkbox-group(v-model="trayTubes2" )
@ -58,10 +83,10 @@ const close = () => {
div.tube-item div.tube-item
span.serial-number {{(item+16).toString().padStart(2, '0')}} span.serial-number {{(item+16).toString().padStart(2, '0')}}
el-checkbox(:value="item+16") el-checkbox(:value="item+16")
p 加热位打发过分沙发斯蒂芬
p {{findCraftName(item+16) || ''}}
div.select-box div.select-box
p 选择工艺 p 选择工艺
el-select(style="width: 200px")
el-select(style="width: 200px" @change="selectChange")
el-option(v-for="item in craftList" :key="item.id" :label="item.name" :value="item.id") el-option(v-for="item in craftList" :key="item.id" :label="item.name" :value="item.id")
template(#footer) template(#footer)
ft-button(type="primary" :click-handle="start") ft-button(type="primary" :click-handle="start")

14
src/layouts/default.vue

@ -61,7 +61,7 @@ const receiveMessage = async (data: any) => {
watch (() => isClose.value, async (newVal) => { watch (() => isClose.value, async (newVal) => {
if (newVal) { if (newVal) {
await checkCraft()
// await checkCraft()
} }
}) })
@ -83,15 +83,15 @@ onMounted(async () => {
if (!systemStore.systemStatus.selfTest && systemStore.systemStatus.currentUser && systemStore.systemStatus.currentUser?.username !== 'test') { if (!systemStore.systemStatus.selfTest && systemStore.systemStatus.currentUser && systemStore.systemStatus.currentUser?.username !== 'test') {
isCheck.value = true isCheck.value = true
} }
await checkCraft()
// await checkCraft()
}) })
const checkCraftVisible = ref(false) const checkCraftVisible = ref(false)
const checkCraft = async () => {
const res = await craftList()
systemStore.errorCraft = res && res.length > 0
systemStore.errCraftList = res
}
// const checkCraft = async () => {
// const res = await craftList()
// systemStore.errorCraft = res && res.length > 0
// systemStore.errCraftList = res
// }
// metaisDefault=true isDebug=true,debug // metaisDefault=true isDebug=true,debug
const menuList = computed(() => { const menuList = computed(() => {

22
src/views/home/index.vue

@ -13,7 +13,7 @@ import { FtMessage } from 'libs/message'
import { socket } from 'libs/socket' import { socket } from 'libs/socket'
import { useHomeStore } from 'stores/homeStore' import { useHomeStore } from 'stores/homeStore'
import { useSystemStore } from 'stores/systemStore' import { useSystemStore } from 'stores/systemStore'
import { onMounted, ref, watch } from 'vue'
import { computed, onMounted, onUnmounted, ref, watch } from 'vue'
const option = ref({ const option = ref({
grid: { grid: {
@ -38,6 +38,16 @@ const option = ref({
], ],
}) })
onMounted(() => {
socket.init(receiveMessage, 'log')
})
onUnmounted(() => {
socket.unregisterCallback(receiveMessage, 'log')
})
const receiveMessage = async (data: any) => {
homeStore.insertLog(data)
}
const chartBox = ref(null) const chartBox = ref(null)
const systemStore = useSystemStore() const systemStore = useSystemStore()
@ -129,13 +139,8 @@ const heatList = computed(() => {
const titrationList = computed(() => { const titrationList = computed(() => {
return systemStore.systemStatus.titrationModule return systemStore.systemStatus.titrationModule
}) })
onMounted(() => {
socket.init(receiveMessage, 'log')
})
const receiveMessage = async (data: any) => {
homeStore.insertLog(data)
}
const list = homeStore.logList
const list = computed(() => homeStore.logList)
</script> </script>
<template lang="pug"> <template lang="pug">
@ -164,6 +169,7 @@ const list = homeStore.logList
template(#default) template(#default)
div.operation-box div.operation-box
ft-button(type="primary" :click-handle="() => addTube(item + 16)") 放入试管 ft-button(type="primary" :click-handle="() => addTube(item + 16)") 放入试管
ft-button(type="primary" :click-handle="() => delTube(item+ 16)") 取出试管
//ft-button(type="primary" :click-handle="() => tubeMoveHandle(item + 16)") //ft-button(type="primary" :click-handle="() => tubeMoveHandle(item + 16)")
ft-button(type="primary" :click-handle="() => tubeMoveHandle(item + 16)") 移至滴定位 ft-button(type="primary" :click-handle="() => tubeMoveHandle(item + 16)") 移至滴定位
template(#reference) template(#reference)

Loading…
Cancel
Save