From f7ddeac884b4bdc5c608e5f34cf8f3c9d7c5e588 Mon Sep 17 00:00:00 2001
From: wlzboy <66905212@qq.com>
Date: 星期二, 23 九月 2025 09:15:23 +0800
Subject: [PATCH] feat:优化 custome

---
 ruoyi-ui/src/views/system/order/detail.vue |   89 ++++++++++++++++++++++++--------------------
 1 files changed, 48 insertions(+), 41 deletions(-)

diff --git a/ruoyi-ui/src/views/system/order/detail.vue b/ruoyi-ui/src/views/system/order/detail.vue
index 22aab2e..886735a 100644
--- a/ruoyi-ui/src/views/system/order/detail.vue
+++ b/ruoyi-ui/src/views/system/order/detail.vue
@@ -45,10 +45,10 @@
             <div slot="header"><b>鏈嶅姟瑕佹眰</b></div>
             <el-descriptions :column="1" border>
               <el-descriptions-item label="鍑哄彂鍦�">{{ serviceInfo.startAddress }}</el-descriptions-item>
-              <el-descriptions-item label="鍑哄彂鍦颁綅缃�">{{ serviceInfo.startLocation }}</el-descriptions-item>
+              <!-- <el-descriptions-item label="鍑哄彂鍦颁綅缃�">{{ serviceInfo.startLocation }}</el-descriptions-item> -->
               <el-descriptions-item label="鐩殑鍦�">{{ serviceInfo.endAddress }}</el-descriptions-item>
-              <el-descriptions-item label="鐩殑鍦颁綅缃�">{{ serviceInfo.endLocation }}</el-descriptions-item>
-              <el-descriptions-item label="杞繍閲岀▼">{{ serviceInfo.distance }}</el-descriptions-item>
+              <!-- <el-descriptions-item label="鐩殑鍦颁綅缃�">{{ serviceInfo.endLocation }}</el-descriptions-item> -->
+              <el-descriptions-item label="杞繍閲岀▼">{{ serviceInfo.distance }} 鍏噷</el-descriptions-item>
               <el-descriptions-item label="鎼姮鏈嶅姟">{{ serviceInfo.liftService }}</el-descriptions-item>
               <el-descriptions-item label="鎼姮妤煎眰">{{ serviceInfo.liftFloor }}</el-descriptions-item>
               <el-descriptions-item label="鍖绘姢瑕佹眰">{{ serviceInfo.medicalStaff }}</el-descriptions-item>
@@ -98,9 +98,9 @@
               :size="isMobile ? 'mini' : 'medium'"
               class="responsive-table">
               <el-table-column prop="id" label="鏀舵娴佹按" min-width="120" />
-              <el-table-column 
-                prop="paidMoneyTime" 
-                label="鏀舵鏃堕棿" 
+              <el-table-column
+                prop="paidMoneyTime"
+                label="鏀舵鏃堕棿"
                 min-width="140"
                 :formatter="(row, column, cellValue) => formatDateTime(cellValue)"
               />
@@ -112,43 +112,28 @@
         </el-col>
       </el-row>
 
-      <!-- 杩愯鎯呭喌 -->
-      <el-row>
-        <el-col :span="24">
-          <el-card class="inner-card">
-            <div slot="header">
-              <b>杩愯鎯呭喌</b>
-              <span style="float: right">{{dispatchInfo.carLicense}}</span>
-            </div>
-            <el-table
-              :data="operationInfo"
-              border
-              style="width: 100%"
-              :size="isMobile ? 'mini' : 'medium'"
-              class="responsive-table">
-              <el-table-column prop="status" label="鍑鸿溅鐘舵��" min-width="100" />
-              <el-table-column prop="operator" label="鎿嶄綔浜�" min-width="100" />
-              <el-table-column prop="operateTime" label="鎿嶄綔鏃堕棿" min-width="140" />
-              <el-table-column prop="location" label="鍧愭爣浣嶇疆" min-width="200" show-overflow-tooltip />
-            </el-table>
-          </el-card>
-        </el-col>
-      </el-row>
 
       <!-- 璁㈠崟鎯呭喌 -->
       <el-row :gutter="20">
         <!-- 璋冨害淇℃伅 -->
         <el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
           <el-card class="inner-card">
-            <div slot="header"><b>璋冨害淇℃伅</b></div>
+            <div slot="header"><b>璇︽儏</b></div>
             <el-descriptions :column="isMobile ? 1 : 2" border>
-              <el-descriptions-item label="鏈嶅姟璇勪环">{{ dispatchInfo.dispatchTime }}</el-descriptions-item>
-              <el-descriptions-item label="鍙戠エ鐘舵��">{{ dispatchInfo.dispatchStatus }}</el-descriptions-item>
-              <el-descriptions-item label="鏀粯鐘舵��">{{ dispatchInfo.driver }}</el-descriptions-item>
-              <el-descriptions-item label="杞︾墝">{{ dispatchInfo.carLicense }}</el-descriptions-item>
-              <el-descriptions-item label="鍖荤敓">{{ dispatchInfo.doctor }}</el-descriptions-item>
-              <!-- <el-descriptions-item label="鑱屼綅">{{ dispatchInfo.doctorPosition }}</el-descriptions-item> -->
-              <el-descriptions-item label="鎶ゅ+">{{ dispatchInfo.nurse }}</el-descriptions-item>
+              <el-descriptions-item label="鏈嶅姟璇勪环">{{ otherInfo.serviceOrdVisit }}</el-descriptions-item>
+              <el-descriptions-item label="鍙戠エ鐘舵��">{{ otherInfo.invoiceStatus }}</el-descriptions-item>
+              <el-descriptions-item label="鐭ユ儏鍚屾剰涔�">
+                <div v-if="otherInfo.imageUrls && otherInfo.imageUrls.length > 0" class="image-container">
+                  <el-image
+                    v-for="image in otherInfo.imageUrls"
+                    :key="image"
+                    :src="`https://sys.966120.com.cn${image}`"
+                    :preview-src-list="otherInfo.imageUrls"
+                    class="preview-image"
+                  />
+                </div>
+                <span v-else>鏆傛棤鍥剧墖</span>
+              </el-descriptions-item>
             </el-descriptions>
           </el-card>
         </el-col>
@@ -173,7 +158,7 @@
       medicalInfo: {},
       dispatchInfo: {},
       paymentInfo: [],
-      operationInfo: [],
+      otherInfo: [],
       screenWidth: document.documentElement.clientWidth // 灞忓箷瀹藉害
     }
   },
@@ -183,8 +168,19 @@
     }
   },
   created() {
+    // 鑾峰彇璺敱鍙傛暟涓殑璁㈠崟ID
     const orderId = this.$route.params.id
-    this.getDetail(orderId)
+
+    // 鑾峰彇URL鏌ヨ鍙傛暟
+    const urlParams = new URLSearchParams(window.location.search)
+    const params = {
+      appId: urlParams.get('appId'),
+      timestamp: urlParams.get('timestamp'),
+      sign: urlParams.get('sign')
+    }
+
+    // 璋冪敤鑾峰彇璇︽儏鏂规硶锛屼紶鍏ユ墍鏈夊弬鏁�
+    this.getDetail(orderId, params)
     // 鐩戝惉绐楀彛澶у皬鍙樺寲
     window.addEventListener('resize', this.handleResize)
   },
@@ -194,8 +190,8 @@
   },
   methods: {
     /** 鑾峰彇璁㈠崟璇︽儏 */
-    getDetail(orderId) {
-      getOrderDetail(orderId).then(response => {
+    getDetail(orderId, params) {
+      getOrderDetail(orderId, params).then(response => {
         const { data } = response
         // 鏍规嵁鍚庣杩斿洖鐨勬暟鎹粨鏋勮缃悇涓璞$殑鍊�
         this.orderInfo = data.orderInfo || {}
@@ -204,7 +200,7 @@
         this.medicalInfo = data.medicalInfo || {}
         this.dispatchInfo = data.dispatchInfo || {}
         this.paymentInfo = data.paymentInfo || []
-        this.operationInfo = data.operationInfo || []
+        this.otherInfo = data.otherInfo || []
 
         console.log(this.orderInfo)
 
@@ -252,4 +248,15 @@
   .el-descriptions-item { padding: 8px !important; }
   .el-descriptions-item__label { width: 100px !important; }
 }
+.image-container {
+  display: flex;
+  flex-wrap: wrap;
+  gap: 10px;
+}
+.preview-image {
+  width: 100px;
+  height: 100px;
+  object-fit: cover;
+  cursor: pointer;
+}
 </style>

--
Gitblit v1.9.1