From 8ce35ee72e52f51f93e61d2dec6084c3cfd397b6 Mon Sep 17 00:00:00 2001
From: eight <641137800@qq.com>
Date: 星期三, 18 十二月 2024 15:31:36 +0800
Subject: [PATCH] 设备查询完善
---
src/views/ecg/doctor/components/DevInstallPanel.vue | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 56 insertions(+), 4 deletions(-)
diff --git a/src/views/ecg/doctor/components/DevInstallPanel.vue b/src/views/ecg/doctor/components/DevInstallPanel.vue
index 9bc8732..931b5a5 100644
--- a/src/views/ecg/doctor/components/DevInstallPanel.vue
+++ b/src/views/ecg/doctor/components/DevInstallPanel.vue
@@ -6,16 +6,23 @@
label-width="100px"
v-loading="formLoading"
>
+ <el-form-item label="妫�鏌ラ」鐩�" prop="">
+ {{formData.checkType && checkTypeStore.getCheckTypeName(formData.checkType)}}
+ </el-form-item>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="鎮h�呯紪鍙�" prop="patId">
<el-input v-model="formData.patId" placeholder="璇疯緭鍏ユ偅鑰呯紪鍙�" @input="getRentInfoByPatId" />
+<!-- <Qrcode v-if="formData.patId !== undefined && formData.patId !== ''" :text="formData.patId" logo="/logo.gif" width=100 />-->
+ <Barcode v-if="displayBarCode" :value="displayBarCode" :width=100 />
+ <el-button @click="copyBarcode()">澶嶅埗</el-button>
</el-form-item>
<el-form-item label="鎮h�呭悕绉�" prop="patName">
<el-input v-model="formData.patName" placeholder="璇疯緭鍏ユ偅鑰呭悕绉�" />
</el-form-item>
<el-form-item label="鎮h�呮弿杩�" prop="patDeptDesc">
- 绉戝: {{formData.patDeptDesc}} 鐥呭尯: {{formData.patWardDesc}} 搴婁綅: {{formData.patBedNo}}
+ <dict-tag :type="DICT_TYPE.ECG_PAT_SOURCE" :value="formData.patSrc" />
+ {{formData.patDetails?.deptDesc}} {{formData.patDetails?.wardDesc}} {{formData.patDetails?.bedNo}}
</el-form-item>
<el-form-item label="瑁呮満鏃堕棿" prop="rentTime">
<el-date-picker
@@ -118,6 +125,9 @@
import {DeviceApi} from "@/api/ecg/devmanage";
import {QueueVO} from "@/api/ecg/queue";
import {RoomBedVO} from "@/api/ecg/doctor";
+import {Barcode} from "@/components/Barcode";
+import {useCheckTypeStore} from "@/store/modules/checkType";
+import {DICT_TYPE} from "@/utils/dict";
/** 璁惧瑁呮満 琛ㄥ崟 */
defineComponent({ name: 'DevInstallPanel' })
@@ -131,11 +141,18 @@
const emit = defineEmits(['event_dev_install']) // 瀹氫箟 success 浜嬩欢锛岀敤浜庢搷浣滄垚鍔熷悗鐨勫洖璋�
+const checkTypeStore = useCheckTypeStore()
+
const setPatient = (queueVO: QueueVO | undefined) => {
resetForm()
+ formData.value.applyNo = queueVO?.applyNo
+ formData.value.episodeId = queueVO?.episodeId
formData.value.patId = queueVO?.patId
formData.value.patName = queueVO?.patName
- getReadyRentInfo()
+ formData.value.checkType = queueVO?.bookCheckType
+ formData.value.patSrc = queueVO?.patDetails.source
+ getReadyRentInfo(formData.value)
+ copyBarcode()
}
defineExpose({ setPatient }) // 鎻愪緵 setPatient 鏂规硶锛岀敤浜庤缃偅鑰�
@@ -149,10 +166,14 @@
const formData = ref({})
const formRules = reactive({
- // devId: [{ required: true, message: '璁惧缂栧彿涓嶈兘涓虹┖', trigger: 'blur' }],
+ devId: [{ required: true, message: '璁惧缂栧彿涓嶈兘涓虹┖', trigger: 'blur' }],
rentTime: [{ required: true, message: '璇烽�夋嫨瑁呮満鏃ユ湡', trigger: 'blur' }],
+ patId: [{ required: true, message: '鎮h�呬笉鑳戒负绌�', trigger: 'blur' }],
+ patName: [{ required: true, message: '鎮h�呭悕涓嶈兘涓虹┖', trigger: 'blur' }]
})
const formRef = ref() // 琛ㄥ崟 Ref
+
+const displayBarCode = ref<string> ()
/** 鎻愪氦琛ㄥ崟 */
const submitForm = async () => {
@@ -224,6 +245,7 @@
formData.value.patId = tempPatId;
getReadyRentInfo(formData.value)
+ copyBarcode()
}
const getReadyRentInfo = async (devRentVO) => {
@@ -233,7 +255,9 @@
// formData.value = data //涓嶈兘鏁翠釜璧嬪�硷紝 榛樿瑁呮満鏃堕棿琚竻绌�
formData.value.id = data.id;
- formData.value.devId = data.devId
+ formData.value.applyNo = data.applyNo;
+ formData.value.episodeId = data.episodeId;
+ //formData.value.devId = data.devId // 璁╁尰鐢熸墜鍔ㄨ緭鍏ワ紝閬垮厤鍑洪敊
formData.value.category = data.category
formData.value.brand = data.brand
formData.value.model = data.model
@@ -296,6 +320,34 @@
getList()
}
+const getDisplayBarcode = (): string => {
+ if (!formData.value.checkType)
+ return ""
+
+ const displayBarcode: number[] = checkTypeStore.getCheckTypeDispBarCode(formData.value.checkType!)
+ if (!displayBarcode.includes( formData.value.patSrc ))
+ return ""
+
+ return getBarcode()
+}
+
+const getBarcode = (): string => {
+ if (!formData.value.checkType)
+ return ""
+
+ if (1 === formData.value.patSrc || 2 === formData.value.patSrc)
+ return formData.value.applyNo??""
+ else if (3 === formData.value.patSrc || 4 === formData.value.patSrc)
+ return formData.value.episodeId??""
+
+ return ""
+}
+
+const copyBarcode = async () => {
+ displayBarCode.value = getDisplayBarcode()
+ await navigator.clipboard.writeText( getBarcode() );
+}
+
/** 鍒濆鍖� **/
onMounted(() => {
resetForm()
--
Gitblit v1.9.3