From 61170727b72e6af32d370fd978f2a8920024af92 Mon Sep 17 00:00:00 2001 From: piaobo <1913856125@qq.com> Date: Fri, 25 Jul 2025 15:12:26 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=8D=E7=96=AB=E4=BF=9D=E5=81=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/biosafety/health/index.vue | 687 ++++++++++++++++-------- src/views/biosafety/immunity/index.vue | 697 ++++++++++++++++--------- 2 files changed, 923 insertions(+), 461 deletions(-) diff --git a/src/views/biosafety/health/index.vue b/src/views/biosafety/health/index.vue index e9fc95a..8cdf7b3 100644 --- a/src/views/biosafety/health/index.vue +++ b/src/views/biosafety/health/index.vue @@ -1,21 +1,16 @@ +/* ------------------ 药品/处方/下拉 ------------------ */ +const usageDetails = ref([]) +const presOptions = ref([]) +const units = ref([]) +const usages = ref([]) +const medicines = ref([]) + +function handleSelectPrescription(id) { + if (!id) return + getPrescription(id).then(res => { + usageDetails.value = res.data?.swPresDetailList?.map(i => ({ + mediId: i.mediId, + dosage: i.dosage, + unit: i.unitId, + usageId: i.usageId + })) || [] + }) +} + +function handleAddDetail() { + usageDetails.value.push({ mediId: null, dosage: 0, unit: null, usageId: null, manufacturer: null, batchNumber: null }) +} + +/* ------------------ 初始化 ------------------ */ +onMounted(() => { + getList() + getBarns() + listPrescription({ status: 1, persType: 2 }).then(res => { + presOptions.value = res.rows.map(item => ({ id: item.id, label: item.name })) + }) + listUnit().then(res => { + units.value = res.rows.map(item => ({ value: item.id, label: item.name })) + }) + listUsage().then(res => { + usages.value = res.rows.map(item => ({ value: item.id, label: item.name })) + }) + listMedicine().then(res => { + medicines.value = res.rows.map(item => ({ value: item.id, label: item.name })) + }) +}) + \ No newline at end of file diff --git a/src/views/biosafety/immunity/index.vue b/src/views/biosafety/immunity/index.vue index 63112dc..dffa551 100644 --- a/src/views/biosafety/immunity/index.vue +++ b/src/views/biosafety/immunity/index.vue @@ -1,31 +1,16 @@ +/* ------------------ 药品/处方/下拉 ------------------ */ +const usageDetails = ref([]) +const presOptions = ref([]) +const units = ref([]) +const usages = ref([]) +const medicines = ref([]) + +function handleSelectPrescription(id) { + if (!id) return + getPrescription(id).then(res => { + usageDetails.value = res.data?.swPresDetailList?.map(i => ({ + mediId: i.mediId, + dosage: i.dosage, + unit: i.unitId, + usageId: i.usageId + })) || [] + }) +} + +function handleAddDetail() { + usageDetails.value.push({ mediId: null, dosage: 0, unit: null, usageId: null, manufacturer: null, batchNumber: null }) +} + +/* ------------------ 初始化 ------------------ */ +onMounted(() => { + getList() + getBarns() + listPrescription({ status: 1, persType: 0 }).then(res => { + presOptions.value = res.rows.map(item => ({ id: item.id, label: item.name })) + }) + listUnit().then(res => { + units.value = res.rows.map(item => ({ value: item.id, label: item.name })) + }) + listUsage().then(res => { + usages.value = res.rows.map(item => ({ value: item.id, label: item.name })) + }) + listMedicine().then(res => { + medicines.value = res.rows.map(item => ({ value: item.id, label: item.name })) + }) +}) + \ No newline at end of file