|
|
@ -281,97 +281,10 @@ watch( |
|
|
|
}, |
|
|
|
{ immediate: true, deep: true }, |
|
|
|
) |
|
|
|
<<<<<<< HEAD |
|
|
|
//使用websocket保证数据的实时性 |
|
|
|
const startWebSocket = () => { |
|
|
|
socket.connect() |
|
|
|
} |
|
|
|
const emergencyStateList = [ |
|
|
|
'EMPTY', |
|
|
|
'TO_BE_PROCESSED', |
|
|
|
'PROCESS_COMPLETE', |
|
|
|
'ERROR', |
|
|
|
] //只有当前急诊位状态为EMPTY,PROCESS_COMPLETE,ERROR才能添加添加新的耗材 |
|
|
|
onMounted(() => { |
|
|
|
//获取急诊位状态 |
|
|
|
getEmergencyStatus() |
|
|
|
startWebSocket() |
|
|
|
socket.subscribe<EmergencyPosStateMessage>( |
|
|
|
'EmergencyPosState', |
|
|
|
handleEmergencyPosState, |
|
|
|
) |
|
|
|
}) |
|
|
|
|
|
|
|
let emergencyStatus = ref(false) |
|
|
|
if (deviceStore.deviceState.workState === 'WORKING') { |
|
|
|
emergencyStatus.value = false; |
|
|
|
} |
|
|
|
//处理急诊状态消息 |
|
|
|
const handleEmergencyPosState = (data: EmergencyPosStateMessage['data']) => { |
|
|
|
// data.tube.state = 'PROCESSING' |
|
|
|
if (deviceStore.deviceState.workState === 'WORKING') { |
|
|
|
emergencyStatus.value = false; |
|
|
|
return; |
|
|
|
} |
|
|
|
|
|
|
|
let { state } = data.tube |
|
|
|
//当急诊试管状态是 EMPTY、TO_BE_PROCESSED、PROCESS_COMPLETE、ERROR可以编辑 |
|
|
|
if(emergencyStateList.includes(state)){ |
|
|
|
emergencyStatus.value = true; |
|
|
|
}else{ |
|
|
|
emergencyStatus.value = false; |
|
|
|
} |
|
|
|
emergencyStore.setInfo(data.tube) |
|
|
|
//当试管状态是完成时"PROCESS_COMPLETE",取消订阅上报事件 |
|
|
|
if (state === 'PROCESS_COMPLETE') { |
|
|
|
socket.unsubscribe<EmergencyPosStateMessage>( |
|
|
|
'EmergencyPosState', |
|
|
|
unSubEmergencyPosState, |
|
|
|
) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
//取消急诊事件消息处理 |
|
|
|
const unSubEmergencyPosState = () => {} |
|
|
|
|
|
|
|
//获取急诊位状态 |
|
|
|
const getEmergencyStatus = () => { |
|
|
|
isTubeExist().then((res) => { |
|
|
|
console.log('这是急诊位状态=1=', res) |
|
|
|
if (res && res.data) { |
|
|
|
const data = res.data |
|
|
|
const { tube } = data |
|
|
|
|
|
|
|
if (tube && tube.state && emergencyStateList.includes(tube.state)) { |
|
|
|
emergencyStatus.value = true |
|
|
|
} |
|
|
|
} |
|
|
|
}) |
|
|
|
} |
|
|
|
======= |
|
|
|
>>>>>>> release/version1.0 |
|
|
|
|
|
|
|
// 激活的移液盘 索引 |
|
|
|
const activeTab = ref(0) |
|
|
|
|
|
|
|
<<<<<<< HEAD |
|
|
|
watch( |
|
|
|
() => props.emergencyInfo, |
|
|
|
(newVal) => { |
|
|
|
// 只有当急诊数据存在且不为空或者不是异常状态时,不激活小球 |
|
|
|
console.log('newVal.state===', newVal?.state) |
|
|
|
if (newVal && (newVal.state == EMERGENCY_STATE.EMPTY || newVal.state == EMERGENCY_STATE.ERROR)) { |
|
|
|
isActive.value = false // 没有急诊数据时,不激活小球 |
|
|
|
} else {//其它状态激活小球 |
|
|
|
isActive.value = true |
|
|
|
} |
|
|
|
}, |
|
|
|
{ immediate: true }, // 确保初始化时会触发一次 |
|
|
|
) |
|
|
|
|
|
|
|
const emergencyInfo = reactive(emergencyStore.emergencyInfo || {}) |
|
|
|
======= |
|
|
|
>>>>>>> release/version1.0 |
|
|
|
const router = useRouter() |
|
|
|
let showEmergencyModal = ref(false) |
|
|
|
const addEmergency = () => { |
|
|
|