From b3fedd4221b807a07058be9d5d5d8ba8998adbcb Mon Sep 17 00:00:00 2001
From: Bang Hu <hu_bang@hotmail.com>
Date: 星期四, 11 九月 2025 21:35:31 +0800
Subject: [PATCH] Bug修改代码提交

---
 src/views/tradeManage/detail/index.vue |   74 +++++++++++++++++++++++++++++++++++++
 1 files changed, 74 insertions(+), 0 deletions(-)

diff --git a/src/views/tradeManage/detail/index.vue b/src/views/tradeManage/detail/index.vue
index d0cfb81..c5eb9b5 100644
--- a/src/views/tradeManage/detail/index.vue
+++ b/src/views/tradeManage/detail/index.vue
@@ -293,6 +293,53 @@
       </div>
 
     </el-card>
+
+    <!-- 浜ゆ槗璇勪环锛堝綋宸茶瘎浠锋椂鏄剧ず锛� -->
+    <el-card class="mt15" shadow="never" v-if="showEvaluation">
+      <div class="title">浜ゆ槗璇勪环</div>
+      <div class="evaluation-content">
+        <div class="evaluation-form">
+          <div class="rating-section">
+            <div class="rating-items">
+              <div class="rating-row">
+                <div class="rating-item">
+                  <label class="required">缁煎悎璇勫垎:</label>
+                  <el-rate :model-value="evaluation.overallRating" :max="5" disabled :colors="['#99A9BF', '#F7BA2A', '#FF9900']" />
+                </div>
+                <div class="rating-item">
+                  <label class="required">鏈嶅姟璇勫垎:</label>
+                  <el-rate :model-value="evaluation.serviceRating" :max="5" disabled :colors="['#99A9BF', '#F7BA2A', '#FF9900']" />
+                </div>
+              </div>
+              <div class="rating-row">
+                <div class="rating-item">
+                  <label class="required">璐ㄩ噺璇勫垎:</label>
+                  <el-rate :model-value="evaluation.qualityRating" :max="5" disabled :colors="['#99A9BF', '#F7BA2A', '#FF9900']" />
+                </div>
+                <div class="rating-item">
+                  <label class="required">閫熷害璇勫垎:</label>
+                  <el-rate :model-value="evaluation.speedRating" :max="5" disabled :colors="['#99A9BF', '#F7BA2A', '#FF9900']" />
+                </div>
+              </div>
+            </div>
+          </div>
+
+          <div class="form-item">
+            <label class="required">璇勪环鍐呭:</label>
+            <div class="eval-text">{{ evaluation.content || '-' }}</div>
+          </div>
+
+          <div class="form-item">
+            <label>鍏朵粬淇℃伅:</label>
+            <div class="eval-meta">
+              <span>鏄惁鍖垮悕锛歿{ evaluation.isAnonymous ? '鏄�' : '鍚�' }}</span>
+              <span class="split">|</span>
+              <span>璇勪环鏃堕棿锛歿{ evaluation.evaluateTime || '-' }}</span>
+            </div>
+          </div>
+        </div>
+      </div>
+    </el-card>
     <!-- 杩斿洖鎸夐挳 -->
     <div class="action-buttons">
         <el-button @click="goBack">杩斿洖</el-button>
@@ -315,6 +362,15 @@
 const route = useRoute()
 const router = useRouter()
 const detail = reactive<any>({ items: [], records: [], nodes: [] })
+const evaluation = reactive<any>({
+  content: '',
+  overallRating: 0,
+  serviceRating: 0,
+  qualityRating: 0,
+  speedRating: 0,
+  isAnonymous: false,
+  evaluateTime: ''
+})
 const orderTableWrapRef = ref<HTMLElement | null>(null)
 const activeTab = ref('records')
 const userStore = useUserInfo()
@@ -340,6 +396,11 @@
   const statusOrder = ['WAIT_UPLOAD', 'WAIT_AUTHORIZE', 'WAIT_CONFIRM', 'COMPLETED', 'EVALUATED']
   const currentStatus = statusServerToUi[statusName]
   return currentStatus && statusOrder.indexOf(currentStatus) >= statusOrder.indexOf('WAIT_CONFIRM')
+})
+
+// 鏄惁鏄剧ず璇勪环鍗$墖锛堝凡璇勪环鏃舵樉绀猴級
+const showEvaluation = computed(() => {
+  return (detail.isEvaluate === '宸茶瘎浠�')
 })
 
 // 璁$畻琛ㄦ牸鏁版嵁锛屾坊鍔犳眹鎬昏
@@ -452,6 +513,7 @@
       projectUnit: data.projectUnit || '-',
       productType: data.productType || '-',
       productDesc: data.productDesc || '-',
+      isEvaluate: data.isEvaluate || '鏈瘎浠�'
     }
 
     // 鏄庣粏椤规槧灏�
@@ -488,6 +550,18 @@
       workflowId: data.workflowId || data.processinstId || ''
     })
 
+    // 鏄犲皠浜ゆ槗璇勪环淇℃伅锛堝鏋滃瓨鍦級
+    if (data.evaluation) {
+      evaluation.content = data.evaluation.content || ''
+      evaluation.overallRating = Number(data.evaluation.rating || data.evaluation.overallRating || 0)
+      evaluation.serviceRating = Number(data.evaluation.serviceRating || 0)
+      evaluation.qualityRating = Number(data.evaluation.qualityRating || 0)
+      // 鍚庣涓� deliveryRating锛屽榻愬墠绔� speedRating 鍛藉悕
+      evaluation.speedRating = Number(data.evaluation.deliveryRating || data.evaluation.speedRating || 0)
+      evaluation.isAnonymous = Boolean(data.evaluation.isAnonymous)
+      evaluation.evaluateTime = formatDateTime((data.evaluation.replyTime || data.evaluation.createdAt || data.evaluation.createTime) as any)
+    }
+
     // 鍒濆鍖栦氦鏄撲俊鎭娉ㄦ暟鎹�
     remarkItems.value = (detail.items || []).map((item: any, index: number) => {
       // 璁$畻鎺堟潈缁撴潫鏃堕棿

--
Gitblit v1.8.0