From c9cc00d09c756f126710168f81eb7ceba0959ec2 Mon Sep 17 00:00:00 2001
From: zhang_nuo <zhang_12370@163.com>
Date: 星期五, 21 八月 2026 11:17:31 +0800
Subject: [PATCH] feat(personnel,production): 新增年龄自动计算及工单数量支持小数

---
 src/views/productionManagement/productionTraceability/index.vue |   41 +++++++++++++++++++++++++++++++++--------
 1 files changed, 33 insertions(+), 8 deletions(-)

diff --git a/src/views/productionManagement/productionTraceability/index.vue b/src/views/productionManagement/productionTraceability/index.vue
index a850788..58fe2de 100644
--- a/src/views/productionManagement/productionTraceability/index.vue
+++ b/src/views/productionManagement/productionTraceability/index.vue
@@ -1,5 +1,7 @@
 <template>
   <div class="app-container">
+    <PageHeader v-if="showHeader"
+                content="鐢熶骇璁㈠崟" />
     <el-card style="height:82vh;overflow:auto;">
       <template #header>
         <div class="card-header">
@@ -33,7 +35,7 @@
                          border>
           <el-descriptions-item label="鐢熶骇璁㈠崟鍙�">{{ rowData.productionOrderDto?.npsNo || '-' }}</el-descriptions-item>
           <el-descriptions-item label="浜у搧鍚嶇О">{{ rowData.productionOrderDto?.productName || '-' }}</el-descriptions-item>
-          <el-descriptions-item label="浜у搧瑙勬牸">{{ rowData.productionOrderDto?.model || '-' }}</el-descriptions-item>
+          <el-descriptions-item label="瑙勬牸鍨嬪彿">{{ rowData.productionOrderDto?.model || '-' }}</el-descriptions-item>
           <!-- <el-descriptions-item label="鐗╂枡缂栫爜">{{ rowData.productionOrderDto?.materialCode || '-' }}</el-descriptions-item> -->
           <el-descriptions-item label="璁″垝鏁伴噺">{{ rowData.productionOrderDto?.quantity || 0 }} <span class="unit">{{ rowData.productionOrderDto?.unit || '-' }}</span></el-descriptions-item>
           <el-descriptions-item label="褰撳墠鐘舵��">
@@ -42,7 +44,7 @@
             </el-tag>
           </el-descriptions-item>
           <el-descriptions-item label="瀹㈡埛鍚嶇О">{{ rowData.productionOrderDto?.customerName || '-' }}</el-descriptions-item>
-          <el-descriptions-item label="寮�濮嬫棩鏈�">{{ parseTime(rowData.productionOrderDto?.startTime) || '-' }}</el-descriptions-item>
+          <el-descriptions-item label="寮�濮嬫棩鏈�">{{ parseTime(rowData.productionOrderDto?.startTime, '{y}-{m}-{d}') || '-' }}</el-descriptions-item>
           <el-descriptions-item label="瀹屾垚杩涘害">
             <el-progress :percentage="rowData.productionOrderDto?.completionStatus>=100?100:rowData.productionOrderDto?.completionStatus"
                          :color="customColors(rowData.productionOrderDto?.completionStatus)"
@@ -78,11 +80,17 @@
                   {{ row.workOrder.model || '-' }}
                 </template>
               </el-table-column>
+              <el-table-column label="宸ュ簭"
+                               prop="workOrder.operationName"
+                               align="center" />
               <el-table-column prop="workOrder.planQuantity"
                                label="闇�姹傛暟閲�"
                                align="center" />
               <el-table-column prop="workOrder.completeQuantity"
                                label="瀹屾垚鏁伴噺"
+                               align="center" />
+              <el-table-column prop="workOrder.scrapQty"
+                               label="鎶ュ簾鏁伴噺"
                                align="center" />
               <el-table-column prop="workOrder.completionStatus"
                                label="瀹屾垚杩涘害"
@@ -124,8 +132,8 @@
             <el-descriptions-item label="鐢熶骇宸ュ崟鍙�">{{ detailData.workOrder.workOrderNo || '-' }}</el-descriptions-item>
             <el-descriptions-item label="璁″垝鏁伴噺">{{ detailData.workOrder.planQuantity || 0 }}</el-descriptions-item>
             <el-descriptions-item label="瀹屾垚鏁伴噺">{{ detailData.workOrder.completeQuantity || 0 }}</el-descriptions-item>
-            <el-descriptions-item label="瀹為檯寮�濮嬫椂闂�">{{ parseTime(detailData.workOrder.actualStartTime) || '-' }}</el-descriptions-item>
-            <el-descriptions-item label="瀹為檯缁撴潫鏃堕棿">{{ parseTime(detailData.workOrder.actualEndTime) || '-' }}</el-descriptions-item>
+            <el-descriptions-item label="瀹為檯寮�濮嬫椂闂�">{{ parseTime(detailData.workOrder.actualStartTime, '{y}-{m}-{d}') || '-' }}</el-descriptions-item>
+            <el-descriptions-item label="瀹為檯缁撴潫鏃堕棿">{{ parseTime(detailData.workOrder.actualEndTime, '{y}-{m}-{d}') || '-' }}</el-descriptions-item>
             <!-- <el-descriptions-item label="瀹屾垚杩涘害">
               <el-progress :percentage="detailData.workOrder.completionStatus >= 100 ? 100 : (detailData.workOrder.completionStatus || 0)"
                            :color="customColors(detailData.workOrder.completionStatus)"
@@ -149,9 +157,18 @@
             <el-table-column label="鍒涘缓鏃堕棿"
                              align="center">
               <template #default="{ row }">
-                {{ parseTime(row.createTime) }}
+                {{ parseTime(row.createTime, '{y}-{m}-{d}') }}
               </template>
             </el-table-column>
+            <el-table-column label="宸ユ椂锛坔锛�"
+                             prop="workHour"
+                             align="center" />
+            <el-table-column label="浜у嚭鏁伴噺"
+                             prop="quantity"
+                             align="center" />
+            <el-table-column label="鎶ュ簾鏁伴噺"
+                             prop="scrapQty"
+                             align="center" />
             <el-table-column label="鎿嶄綔"
                              align="center"
                              width="200">
@@ -213,10 +230,10 @@
              :key="record.id"
              class="quality-record-block">
           <div class="detail-section">
-            <h3 class="section-title">妫�娴嬭褰� {{ index + 1 }} - {{ parseTime(record.createTime) }}</h3>
+            <h3 class="section-title">妫�娴嬭褰� {{ index + 1 }} - {{ parseTime(record.createTime, '{y}-{m}-{d}') }}</h3>
             <el-descriptions :column="3"
                              border>
-              <el-descriptions-item label="妫�娴嬫棩鏈�">{{ parseTime(record.createTime) || '-' }}</el-descriptions-item>
+              <el-descriptions-item label="妫�娴嬫棩鏈�">{{ parseTime(record.createTime, '{y}-{m}-{d}') || '-' }}</el-descriptions-item>
               <el-descriptions-item label="鎶ュ伐鍗曞彿">{{ record.reportNo || '-' }}</el-descriptions-item>
               <el-descriptions-item label="妫�楠屽憳">{{ record.userName || '-' }}</el-descriptions-item>
               <el-descriptions-item label="浜у搧鍚嶇О">{{ record.productName || '-' }}</el-descriptions-item>
@@ -267,7 +284,7 @@
 </template>
 
 <script setup>
-  import { ref, reactive, onMounted } from "vue";
+  import { ref, reactive, onMounted, computed } from "vue";
   import { useRoute, useRouter } from "vue-router";
   import { ElMessage } from "element-plus";
   import { parseTime } from "@/utils/ruoyi";
@@ -279,6 +296,13 @@
 
   const route = useRoute();
   const router = useRouter();
+
+  // 鍒ゆ柇鏄惁鏄剧ず椤靛ご
+  const showHeader = computed(() => {
+    return (
+      Object.keys(route.query).length > 0 || Object.keys(route.params).length > 0
+    );
+  });
 
   // 鎼滅储鐩稿叧
   const searchForm = reactive({
@@ -385,6 +409,7 @@
       workOrder: row.workOrder || {},
       reports: (row.reportList || []).map(r => ({
         ...r.reportMain,
+        ...(r.reportOutputList[0] || {}),
         productionOperationParamList: r.reportParamList || [],
       })),
     };

--
Gitblit v1.9.3