From 46e6a2b43b042963953b4d1d6a36e0cee69962b0 Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期一, 27 四月 2026 20:03:16 +0800
Subject: [PATCH] 小程序端和PC端bug修复

---
 admin/src/components/business/OperaOrderDetail.vue |   68 +++++++++++++++++++++++-----------
 1 files changed, 46 insertions(+), 22 deletions(-)

diff --git a/admin/src/components/business/OperaOrderDetail.vue b/admin/src/components/business/OperaOrderDetail.vue
index b150cf9..e9271d9 100644
--- a/admin/src/components/business/OperaOrderDetail.vue
+++ b/admin/src/components/business/OperaOrderDetail.vue
@@ -2,17 +2,18 @@
   <GlobalWindow
     :title="title"
     :visible.sync="visible"
-    width="900px"
+    width="1000px"
     :withFooter="false"
   >
     <div class="order-detail" v-if="detailInfo">
       <div class="section">
         <div class="section-header">
           <span class="section-title">璁㈠崟璇︽儏</span>
-          <el-tag v-if="detailInfo.status === 1" type="warning">寰呭彇浠�</el-tag>
-          <el-tag v-else-if="detailInfo.status === 2" type="primary">閰嶉�佷腑</el-tag>
-          <el-tag v-else-if="detailInfo.status === 3" type="success">宸插畬鎴�</el-tag>
-          <el-tag v-else-if="detailInfo.status === 4" type="info">宸插彇娑�</el-tag>
+          <el-tag v-if="detailInfo.order && detailInfo.order.status === 4" type="primary">{{detailInfo.statusDesc}}</el-tag>
+          <el-tag v-else-if="detailInfo.order && detailInfo.order.status <7" type="warning" >{{detailInfo.statusDesc}}</el-tag>
+          <el-tag  v-else-if="detailInfo.order && detailInfo.order.status ===7"  type="success">{{detailInfo.statusDesc}}</el-tag>
+          <el-tag v-else   type="info">{{detailInfo.statusDesc}}</el-tag>
+          <el-button style="" type="primary" @click="showLogList" >鍔犳�ユ棩蹇�</el-button>
         </div>
         <div class="info-grid">
           <div class="info-item">
@@ -157,7 +158,7 @@
             </div>
             <span v-else>-</span>
           </div>
-          <div class="info-item full-width">
+          <div class="info-item full-width" v-if="detailInfo.order && detailInfo.order.type===1">
             <span class="label">鍙告満鍙栦欢鎷嶇収锛�</span>
             <div v-if="detailInfo.driverTakeImages && detailInfo.driverTakeImages.length" class="image-list">
               <el-image
@@ -171,7 +172,7 @@
             </div>
             <span v-else>-</span>
           </div>
-          <div class="info-item full-width">
+          <div class="info-item full-width" v-if="detailInfo.order && detailInfo.order.type===1">
             <span class="label">鍙告満閫佽揪鎷嶇収/闂ㄥ簵鍏ュ簱鎷嶇収锛�</span>
             <div v-if="detailInfo.driverDoneImages && detailInfo.driverDoneImages.length" class="image-list">
               <el-image
@@ -185,7 +186,7 @@
             </div>
             <span v-else>-</span>
           </div>
-          <div class="info-item full-width">
+          <div class="info-item full-width" v-if="detailInfo.order && detailInfo.order.takeShopId">
             <span class="label">闂ㄥ簵鍑哄簱鎷嶇収锛�</span>
             <div v-if="detailInfo.storeOutImages && detailInfo.storeOutImages.length" class="image-list">
               <el-image
@@ -285,37 +286,39 @@
           <el-table-column prop="luggageName" label="鐗╁搧灏哄" min-width="80px"></el-table-column>
           <el-table-column label="鍗曚环锛堝厓锛�" min-width="100px">
             <template slot-scope="{row}">
-              楼{{ (row.unitPriceYuan / 100).toFixed(2) }}
+              楼{{ ((row.unitPrice||0) / 100).toFixed(2) }}
             </template>
           </el-table-column>
           <el-table-column prop="num" label="鏁伴噺" min-width="60px"></el-table-column>
           <el-table-column label="灏忚锛堝厓锛�" min-width="100px">
             <template slot-scope="{row}">
-              楼{{ (row.subtotal / 100).toFixed(2) }}
+              楼{{ ((row.subtotal ||0) / 100).toFixed(2) }}
             </template>
           </el-table-column>
         </el-table>
-        <div class="price-summary">
-          <span>鍩虹鏈嶅姟璐癸細楼{{ (detailInfo.order.price / 100).toFixed(2) }}</span>
-          <span>鐗╁搧淇濊垂锛毬{ (detailInfo.order.declaredFee / 100).toFixed(2) }}</span>
-          <span>璁㈠崟鎬讳环锛毬{ (detailInfo.order.totalAmount / 100).toFixed(2) }}</span>
-          <span>瀹為檯鏀粯锛毬{ (detailInfo.order.payAmount / 100).toFixed(2) }}</span>
-          <span>閫�娆鹃噾棰濓細楼{{ (detailInfo.order.refundAmount / 100).toFixed(2) }}</span>
-          <span>瓒呮椂閲戦锛毬{ (detailInfo.order.overdueAmount / 100).toFixed(2) }}</span>
-          <span>寮傚父閲戦锛毬{ (detailInfo.order.exceptionAmount / 100).toFixed(2) }}</span>
+        <div class="price-summary" v-if="detailInfo.order">
+          <span>鍩虹鏈嶅姟璐癸細楼{{ ((detailInfo.order.price||0) / 100).toFixed(2) }}</span>
+          <span>鐗╁搧淇濊垂锛毬{ ((detailInfo.order.declaredFee||0) / 100).toFixed(2) }}</span>
+          <span>璁㈠崟鎬讳环锛毬{ ((detailInfo.order.totalAmount||0) / 100).toFixed(2) }}</span>
+          <span>瀹為檯鏀粯锛毬{ ((detailInfo.order.payAmount||0) / 100).toFixed(2) }}</span>
+          <span>閫�娆鹃噾棰濓細楼{{ ((detailInfo.order.refundAmount ||0)/ 100).toFixed(2) }}</span>
+          <span>瓒呮椂閲戦锛毬{ ((detailInfo.order.overdueAmount ||0)/ 100).toFixed(2) }}</span>
+          <span>寮傚父閲戦锛毬{ ((detailInfo.order.exceptionAmount ||0)/ 100).toFixed(2) }}</span>
         </div>
       </div>
     </div>
+
+    <orderProgress ref ='orderProgress'></orderProgress>
   </GlobalWindow>
 </template>
 
 <script>
 import GlobalWindow from '@/components/common/GlobalWindow'
-import { getById } from '@/api/business/orderManagement'
-
+import { getById ,logListPage} from '@/api/business/orderManagement'
+import orderProgress from '@/components/business/orderProgress'
 export default {
   name: 'OperaOrderDetail',
-  components: { GlobalWindow },
+  components: { GlobalWindow ,orderProgress},
   data () {
     return {
       title: '璁㈠崟璇︽儏',
@@ -333,6 +336,27 @@
       }).catch(e => {
         this.$tip.apiFailed(e)
       })
+    },
+    showLogList () {
+      var that = this
+      if (!this.detailInfo.order || !this.detailInfo.order.id) {
+        return
+      }
+      logListPage({
+        capacity: 10000,
+        model: {
+          orderId: this.detailInfo.order.id
+        },
+        page: 1
+      }).then(res => {
+        var orderLogList = res.records || []
+        if (orderLogList.length) {
+          this.$refs.orderProgress.open('璁㈠崟娲惧崟鏃ュ織', orderLogList || [])
+        } else {
+          this.$message.warning('鏈煡璇㈠埌浠讳綍娲惧崟璁板綍锛�')
+        }
+      }).catch(e => {
+      })
     }
   }
 }
@@ -340,7 +364,7 @@
 
 <style scoped>
 .order-detail {
-  
+
 }
 .section {
   margin-bottom: 25px;

--
Gitblit v1.9.3