From f08739f46afe856f60ebb1d21ab23d72947629ed Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期日, 21 十二月 2025 00:03:12 +0800
Subject: [PATCH] feat:优化任务搜索查询 app

---
 app/pagesTask/detail.vue |   79 ++++++++++++++++++++++-----------------
 1 files changed, 44 insertions(+), 35 deletions(-)

diff --git a/app/pagesTask/detail.vue b/app/pagesTask/detail.vue
index 8cf97d9..771094a 100644
--- a/app/pagesTask/detail.vue
+++ b/app/pagesTask/detail.vue
@@ -14,7 +14,8 @@
           <view class="label">浠诲姟缂栧彿</view>
           <view class="value">
             {{ taskDetail.showTaskCode }}
-            <text v-if="taskDetail.isHeadPush === '1'" class="head-push-tag">鎬�</text>
+            <text v-if="taskDetail.emergencyInfo && taskDetail.emergencyInfo.serviceOrdVip === '1'" class="vip-tag">VIP</text>
+            <text v-if="taskDetail.emergencyInfo && taskDetail.emergencyInfo.fromHq2Is === '1'" class="hq-tag">骞挎��</text>
           </view>
         </view>
         <view class="info-item">
@@ -54,21 +55,12 @@
               <view class="assignee-role">
                 <view 
                   class="role-tag"
-                  :class="{
-                    'role-driver': assignee.userType === 'driver',
-                    'role-doctor': assignee.userType === 'doctor',
-                    'role-nurse': assignee.userType === 'nurse'
-                  }"
-                >
+                  :class="{'role-driver': assignee.userType === 'driver','role-doctor': assignee.userType === 'doctor','role-nurse': assignee.userType === 'nurse'}">
                   {{ getUserTypeLabel(assignee.userType) }}
                 </view>
                 <view 
                   class="ready-badge"
-                  :class="{
-                    'ready': isAssigneeReady(assignee),
-                    'unready': !isAssigneeReady(assignee)
-                  }"
-                >
+                  :class="{'ready': isAssigneeReady(assignee),'unready': !isAssigneeReady(assignee)}">
                   {{ isAssigneeReady(assignee) ? '宸插氨缁�' : '鏈氨缁�' }}
                 </view>
               </view>
@@ -105,13 +97,13 @@
         <view class="section-title">浣嶇疆淇℃伅</view>
         <!-- 杞繍浠诲姟锛氭樉绀鸿浆鍑�/杞叆鍖婚櫌鍦板潃 -->
         <template v-if="taskDetail.taskType === 'EMERGENCY_TRANSFER' && taskDetail.emergencyInfo">
-          <view class="info-item" v-if="taskDetail.emergencyInfo.hospitalOutAddress">
+          <view class="info-item" v-if="taskDetail.emergencyInfo.hospitalOutName">
             <view class="label">杞嚭鍖婚櫌</view>
-            <view class="value">{{ taskDetail.emergencyInfo.hospitalOutAddress }}</view>
+            <view class="value">{{ taskDetail.emergencyInfo.hospitalOutName }}</view>
           </view>
-          <view class="info-item" v-if="taskDetail.emergencyInfo.hospitalInAddress">
+          <view class="info-item" v-if="taskDetail.emergencyInfo.hospitalInName">
             <view class="label">杞叆鍖婚櫌</view>
-            <view class="value">{{ taskDetail.emergencyInfo.hospitalInAddress }}</view>
+            <view class="value">{{ taskDetail.emergencyInfo.hospitalInName }}</view>
           </view>
         </template>
         <!-- 绂忕杞︿换鍔★細鏄剧ず鎺ラ��/鐩殑鍦板潃 -->
@@ -499,7 +491,19 @@
         }
         return ['COMPLETED', 'CANCELLED'].includes(this.taskDetail.taskStatus)
       },
-      // 鏄剧ず浠诲姟绫诲瀷
+      
+      // 鐢熸垚鎵ц浜哄憳瑙掕壊鏍囩鐨勭被鍚�
+      getRoleTagClass() {
+        return (userType) => {
+          const baseClass = 'role-tag'
+          const roleClasses = {
+            'driver': 'role-driver',
+            'doctor': 'role-doctor',
+            'nurse': 'role-nurse'
+          }
+          return [baseClass, roleClasses[userType] || '']
+        }
+      },      // 鏄剧ず浠诲姟绫诲瀷
       displayTaskType() {
         if (!this.taskDetail || !this.taskDetail.taskType) {
           return '鏈缃�'
@@ -594,13 +598,7 @@
         
         getTask(this.taskId).then(response => {
           this.taskDetail = response.data || response
-          // 璋冭瘯锛氭墦鍗拌繑鍥炵殑鏁版嵁
-          // console.log('浠诲姟璇︽儏瀹屾暣鏁版嵁:', JSON.stringify(this.taskDetail, null, 2))
-          // console.log('浠诲姟绫诲瀷瀛楁鍊�:', this.taskDetail.taskType)
-          // console.log('浠诲姟鐘舵�佸瓧娈靛��:', this.taskDetail.taskStatus)
-          // console.log('鍑哄彂鍦板潃:', this.taskDetail.departureAddress)
-          // console.log('鐩殑鍦板潃:', this.taskDetail.destinationAddress)
-          // console.log('杞繍浠诲姟淇℃伅 (emergencyInfo):', this.taskDetail.emergencyInfo)
+         
           
           // 濡傛灉鏄浆杩愪换鍔★紝鍔犺浇鏀粯淇℃伅
           if (this.taskDetail.taskType === 'EMERGENCY_TRANSFER') {
@@ -1464,17 +1462,6 @@
       }
     }
     
-    // 鎬婚儴鎺ㄩ�佹爣璁版牱寮�
-    .head-push-tag {
-      color: #ff0000;
-      font-size: 24rpx;
-      font-weight: bold;
-      margin-left: 10rpx;
-      padding: 2rpx 8rpx;
-      border: 1rpx solid #ff0000;
-      border-radius: 4rpx;
-    }
-    
     .detail-content {
       padding: 20rpx;
       height: calc(100vh - 220rpx); // 鍑忓幓header(100rpx)鍜屾寜閽尯鍩�(120rpx)鐨勯珮搴�
@@ -1816,5 +1803,27 @@
         }
       }
     }
+    
+    .vip-tag {
+      display: inline-block;
+      padding: 2rpx 8rpx;
+      font-size: 20rpx;
+      color: #fff;
+      background-color: #ff0000;
+      border-radius: 4rpx;
+      margin-left: 10rpx;
+      vertical-align: middle;
+    }
+    
+    .hq-tag {
+      display: inline-block;
+      padding: 2rpx 8rpx;
+      font-size: 20rpx;
+      color: #fff;
+      background-color: #5856d6;
+      border-radius: 4rpx;
+      margin-left: 10rpx;
+      vertical-align: middle;
+    }
   }
 </style>
\ No newline at end of file

--
Gitblit v1.9.1