From c8e9849cb5f24848df0174c13bfbbff37bb08a5a Mon Sep 17 00:00:00 2001
From: WXL <wl_5969728@163.com>
Date: 星期二, 21 七月 2026 15:45:30 +0800
Subject: [PATCH] 维护
---
src/components/CaseBasicInfo/index.vue | 73 +++++++++++++++++++++++++++++-------
1 files changed, 59 insertions(+), 14 deletions(-)
diff --git a/src/components/CaseBasicInfo/index.vue b/src/components/CaseBasicInfo/index.vue
index c7a9c90..1fa9b10 100644
--- a/src/components/CaseBasicInfo/index.vue
+++ b/src/components/CaseBasicInfo/index.vue
@@ -2,6 +2,16 @@
<el-card class="basic-info-card" v-loading="loading">
<div slot="header" class="clearfix">
<span>妗堜緥鍩烘湰淇℃伅</span>
+
+ <el-button
+ v-if="showAttachment"
+ type="text"
+ style="float: right; margin-left: 12px"
+ @click="openStageAttachments"
+ >
+ <i class="el-icon-folder"></i> 鏌ョ湅鍚勯樁娈甸檮浠�
+ </el-button>
+
<el-button
v-if="showAttachment && hasAttachments"
style="float: right; padding: 3px 0"
@@ -13,14 +23,16 @@
</div>
<el-descriptions v-if="basicData" :column="column" border>
- <!-- 1. 妗堜緥缂栧彿 -->
- <el-descriptions-item label="妗堜緥缂栧彿">
- {{ basicData.caseNo || "--" }}
+ <!-- 1. 浣忛櫌鍙� -->
+ <el-descriptions-item label="鎹愮尞缂栧彿">
+ {{ basicData.caseNo || "鏃�" }}
</el-descriptions-item>
-
+ <el-descriptions-item label="浣忛櫌鍙�">
+ {{ basicData.inpatientno || "鏃�" }}
+ </el-descriptions-item>
<!-- 2. 娼滃湪鎹愮尞鑰呭鍚� -->
<el-descriptions-item label="鎹愮尞鑰呭鍚�">
- {{ basicData.name || basicData.donorName || "--" }}
+ {{ basicData.name || basicData.donorName || "鏃�" }}
</el-descriptions-item>
<!-- 3. 鎬у埆/骞撮緞 -->
@@ -41,7 +53,7 @@
<!-- 4. 璇佷欢鍙风爜 -->
<el-descriptions-item label="璇佷欢鍙风爜">
- {{ basicData.idcardno || basicData.idCardNo || "--" }}
+ {{ basicData.idcardno || basicData.idCardNo || "鏃�" }}
</el-descriptions-item>
<!-- 5. 琛�鍨� -->
@@ -51,25 +63,33 @@
</template>
<template v-else>--</template>
</el-descriptions-item>
+ <el-descriptions-item label="浼犳煋鐥�">
+ <template v-if="basicData.infectious">
+ <span v-for="item in basicData.infectious.split(',')"
+ ><dict-tag :options="dict.type.sys_Infectious" :value="item" />
+ </span>
+ </template>
+ <template v-else>--</template>
+ </el-descriptions-item>
<!-- 6. 鐤剧梾璇婃柇 -->
<el-descriptions-item label="鐤剧梾璇婃柇">
- {{ basicData.diagnosisname || basicData.diagnosis || "--" }}
+ {{ basicData.diagnosisname || basicData.diagnosis || "鏃�" }}
</el-descriptions-item>
<!-- 7. 鎵�鍦ㄥ尰鐤楁満鏋� -->
<el-descriptions-item label="鎵�鍦ㄥ尰鐤楁満鏋�">
- {{ basicData.treatmenthospitalname || basicData.hospitalName || "--" }}
+ {{ basicData.currentMedicalInstitution || "鏃�" }}
</el-descriptions-item>
<!-- 8. 鍗忚皟鍛� -->
<el-descriptions-item label="鍗忚皟鍛�">
- {{ basicData.coordinatorName || basicData.contactPerson || "--" }}
+ {{ basicData.coordinatorName || basicData.contactPerson || "鏃�" }}
</el-descriptions-item>
<!-- 9. 涓婃姤鏃堕棿 -->
<el-descriptions-item label="涓婃姤鏃堕棿">
- {{ formatDateTime(basicData.reportTime) || "--" }}
+ {{ formatDateTime(basicData.reportTime) || "鏃�" }}
</el-descriptions-item>
<!-- 10. 妗堜緥鐘舵�� -->
@@ -100,14 +120,24 @@
<div v-else class="empty-state">
<el-empty description="鏆傛棤妗堜緥淇℃伅" :image-size="100"></el-empty>
</div>
+ <!-- 鍚勯樁娈甸檮浠跺脊妗� -->
+ <case-stage-attachments-dialog
+ ref="stageDialog"
+ :case-id="caseId"
+ :selected-ids="selectedAttachmentIds"
+ @confirm="onAttachmentsConfirm"
+ />
</el-card>
</template>
<script>
-import { getDonatebaseinfo } from "@/api/project/donatebaseinfo";
+import { getDonatebaseinfo, getfileList } from "@/api/project/donatebaseinfo";
+import CaseStageAttachmentsDialog from "@/components/CaseStageAttachmentsDialog";
export default {
name: "CaseBasicInfoSimple",
+ components: { CaseStageAttachmentsDialog },
+
props: {
// 妗堜緥ID
caseId: {
@@ -165,7 +195,8 @@
"sys_user_sex",
"sys_BloodType",
"sys_DonationCategory",
- "sys_donornode"
+ "sys_donornode",
+ "sys_Infectious"
],
data() {
return {
@@ -173,7 +204,9 @@
basicData: null,
// 瀛楀吀閫夐」
sexOptions: [],
- bloodTypeOptions: []
+ bloodTypeOptions: [],
+ selectedAttachmentIds: ["123", "456"],
+ finalAttachments: []
};
},
computed: {
@@ -234,7 +267,16 @@
console.warn("鍔犺浇瀛楀吀澶辫触:", error);
}
},
+ // 鎵撳紑鍚勯樁娈甸檮浠跺脊妗�
+ openStageAttachments() {
+ this.$refs.stageDialog.open();
+ },
+ onAttachmentsConfirm(list) {
+ this.finalAttachments = list;
+ console.log("閫変腑鐨勯樁娈甸檮浠讹細", list);
+ // 鍙洿鎺ユ彁浜ょ粰鎺ュ彛
+ },
// 鍔犺浇鍩烘湰淇℃伅
async loadBasicInfo() {
if (!this.caseId) return;
@@ -245,7 +287,7 @@
if (response.code === 200) {
this.basicData = this.mapApiData(response.data);
- console.log(this.basicData );
+ console.log(this.basicData);
this.loading = false;
} else {
@@ -273,6 +315,9 @@
sex: apiData.sex,
age: apiData.age,
ageunit: apiData.ageunit,
+ inpatientno: apiData.inpatientno,
+ infectious: apiData.infectious,
+ currentMedicalInstitution: apiData.currentMedicalInstitution,
workflow: apiData.workflow,
bloodType: apiData.bloodType || apiData.bloodtype,
idcardno: apiData.idcardno || apiData.idCardNo,
--
Gitblit v1.9.3