From c80bc467a41daa6cbae4e5515a300a8ca98cfeaa Mon Sep 17 00:00:00 2001
From: WXL <wl_5969728@163.com>
Date: 星期二, 21 七月 2026 15:44:01 +0800
Subject: [PATCH] 维护

---
 pagesSub/case/index.vue |  104 +++++++++++++++++++++++++++-------------------------
 1 files changed, 54 insertions(+), 50 deletions(-)

diff --git a/pagesSub/case/index.vue b/pagesSub/case/index.vue
index b924cb0..c4250e4 100644
--- a/pagesSub/case/index.vue
+++ b/pagesSub/case/index.vue
@@ -75,18 +75,16 @@
               <text class="type">{{ caseItem.caseType }}</text>
             </view>
           </view>
-          <text
-            class="status"
-            :class="getStatusClass(caseItem.reportStatus)"
-            >{{ caseItem.statusText }}</text
-          >
+          <text class="status" :class="getStatusClass(caseItem.reportStatus)">{{
+            caseItem.statusText
+          }}</text>
         </view>
 
         <view class="detail-info">
           <!-- 鍩虹淇℃伅淇濇寔涓嶅彉 -->
           <view class="info-item">
             <text class="label">鎹愮尞缂栧彿</text>
-            <text class="value">{{ caseItem.donorNo }}</text>
+            <text class="value">{{ caseItem.caseNo }}</text>
           </view>
           <view class="info-item">
             <text class="label">鎹愮尞鑰呭鍚�</text>
@@ -234,7 +232,9 @@
             </button>
             <button
               class="action-btn secondary"
-              v-if="caseItem.reportStatus == '1' || caseItem.reportStatus == '2'"
+              v-if="
+                caseItem.reportStatus == '1' || caseItem.reportStatus == '2'
+              "
               @tap.stop="editCase(caseItem)"
             >
               缂栬緫
@@ -277,12 +277,12 @@
         </view>
       </view>
     </view>
-    
+
     <!-- 鍔犺浇鐘舵�� -->
     <u-loading-page v-if="initLoading" :loading="true" text="鏁版嵁鍔犺浇涓�..." />
   </view>
-   <view class="float-button" @tap="createNewCase">
-    <u-icon name="plus" color="#fff" size="24"></u-icon>
+  <view class="float-button" @tap="createNewCase">
+    <up-icon name="plus" color="#fff" size="24"></up-icon>
   </view>
 </template>
 
@@ -327,6 +327,7 @@
   return {
     id: apiData.id || apiData.donatebaseinfoReportId,
     donorNo: apiData.caseNo,
+    caseNo:apiData.caseNo,
     reportStatus: apiData.reportStatus,
     hospitalName: apiData.treatmenthospitalname,
     hospitalLogo: "/static/hospital/default.jpg",
@@ -334,14 +335,13 @@
     donorName: apiData.name,
     idCardNo: apiData.idcardno,
     gender:
-      dict.value.sys_user_sex?.find((item) => item.dictValue == apiData.sex)
-        ?.dictLabel || apiData.sex,
+      dict.value.sys_user_sex?.find((item) => item.value == apiData.sex)
+        ?.label || apiData.sex,
     age: apiData.age,
     ageunit: apiData.ageunit,
     bloodType:
-      dict.value.sys_BloodType?.find(
-        (item) => item.dictValue == apiData.bloodType,
-      )?.dictLabel || apiData.bloodType,
+      dict.value.sys_BloodType?.find((item) => item.value == apiData.bloodType)
+        ?.label || apiData.bloodType,
     diagnosis: apiData.diagnosisname,
     illnessoverview: apiData.illnessoverview,
     patientstate: apiData.patientstate,
@@ -381,7 +381,7 @@
 };
 const createNewCase = () => {
   uni.navigateTo({
-    url: '/pagesSub/case/CaseDetails'
+    url: "/pagesSub/case/CaseDetails",
   });
 };
 const canCreateTransport = (caseData) => {
@@ -479,13 +479,13 @@
 };
 const getStatusClass = (status) => {
   const map = {
-    '1': 'reported',     // 宸蹭笂鎶�
-    '2': 'read',         // 宸查槄璇�
-    '3': 'agreed',       // 宸插悓鎰�
-    '4': 'rejected'      // 宸查┏鍥�
+    1: "reported", // 宸蹭笂鎶�
+    2: "read", // 宸查槄璇�
+    3: "agreed", // 宸插悓鎰�
+    4: "rejected", // 宸查┏鍥�
   };
-  return map[status] || 'reported';
-}
+  return map[status] || "reported";
+};
 const viewTransportDetail = (caseItem) => {
   if (hasTransport(caseItem)) {
     const transport = caseItem.serviceTransport[0];
@@ -527,8 +527,9 @@
   }
 });
 
-onShow(() => {
+onShow(async () => {
   const transportUpdate = uni.getStorageSync("transportStatusUpdate");
+  await loadInitialData();
   if (transportUpdate) {
     updateTransportStatus(transportUpdate.orderNo, transportUpdate.status);
     uni.removeStorageSync("transportStatusUpdate");
@@ -553,58 +554,58 @@
     pageNum.value = 1;
     hasMore.value = true;
   }
-  
+
   if (loading.value || loadingMore.value || !hasMore.value) return;
-  
+
   if (reset) {
     loading.value = true;
   } else {
     loadingMore.value = true;
   }
-  
+
   try {
     const params = {
       pageNum: pageNum.value,
       pageSize: pageSize.value,
     };
-    
+
     // 绛涢�夋潯浠� - 濡傛灉閫夋嫨浜�"鍏ㄩ儴"锛屼笉浼爎eportStatus鍙傛暟
     if (currentType.value !== "all") {
       params.reportStatus = currentType.value;
     }
-    
+
     // 鏃堕棿绛涢�夋潯浠�
     if (startDate.value && endDate.value) {
       // 灏嗘椂闂存牸寮忚浆鎹负鎺ュ彛闇�瑕佺殑鏍煎紡
       params.startDate = startDate.value;
       params.endDate = endDate.value;
     }
-    
+
     console.log("璇锋眰鍙傛暟:", params);
-    
+
     const res = await uni.$uapi.post(
       "/project/donatebaseinforeport/list",
       params,
     );
-    
+
     console.log("鎺ュ彛杩斿洖鏁版嵁:", res);
-    
+
     if (res.code == 200) {
-      const data =res.data || [];
+      const data = res.data || [];
       const mappedData = data.map((item) => mapApiDataToCaseItem(item));
-      
+
       if (reset || pageNum.value == 1) {
-        console.log(mappedData,'mappedData');
-        
+        console.log(mappedData, "mappedData");
+
         cases.value = mappedData;
       } else {
         cases.value = [...cases.value, ...mappedData];
       }
-      
+
       // 鍒ゆ柇鏄惁杩樻湁鏇村鏁版嵁
       hasMore.value = data.length >= pageSize.value;
       total.value = res.total || 0;
-      
+
       // 濡傛灉鏈夋暟鎹姞杞芥垚鍔燂紝澧炲姞椤电爜
       if (data.length > 0) {
         pageNum.value++;
@@ -645,15 +646,15 @@
 // 璁$畻灞炴�э細绛涢�夎褰� - 鐜板湪鍙仛鍓嶇鐘舵�佺瓫閫�
 const filteredCases = computed(() => {
   let result = cases.value;
-  console.log(result,'result');
-  
+  console.log(result, "result");
+
   // 鍙仛鍓嶇鐘舵�佺瓫閫夛紝鏃堕棿绛涢�夊凡缁忛�氳繃鎺ュ彛瀹炵幇
   // if (currentType.value !== "all") {
   //   result = result.filter(
   //     (caseItem) => caseItem.reportStatus == currentType.value,
   //   );
   // }
-  
+
   return result;
 });
 
@@ -725,18 +726,20 @@
 
 const confirmWithdraw = async () => {
   try {
-    const res = await uni.$uapi.delete(`/project/donatebaseinforeport/${currentCase.value.id}`);
-    
+    const res = await uni.$uapi.delete(
+      `/project/donatebaseinforeport/${currentCase.value.id}`,
+    );
+
     if (res.code === 200) {
       // 浠庡垪琛ㄤ腑绉婚櫎
       const index = cases.value.findIndex(
-        (item) => item.id == currentCase.value.id
+        (item) => item.id == currentCase.value.id,
       );
       if (index !== -1) {
         cases.value.splice(index, 1);
         stats.value.totalCases -= 1;
       }
-      
+
       uni.showToast({
         title: "鎾ゅ洖鎴愬姛",
         icon: "success",
@@ -1133,14 +1136,15 @@
       }
     }
   }
-  
-  .load-more, .no-more {
+
+  .load-more,
+  .no-more {
     text-align: center;
     padding: 40rpx 0;
     color: $text-secondary;
     font-size: 28rpx;
   }
-  
+
   .empty-state {
     padding: 120rpx 0;
     text-align: center;
@@ -1240,10 +1244,10 @@
   box-shadow: 0 8rpx 20rpx rgba($primary-color, 0.3);
   z-index: 100;
   transition: all 0.3s ease;
-  
+
   &:active {
     opacity: 0.8;
     transform: scale(0.95);
   }
 }
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.9.3