From 2169195fa828a54680daed6a23784402c135284b Mon Sep 17 00:00:00 2001
From: wangfei <3597712270@qq.com>
Date: 星期四, 27 三月 2025 15:28:11 +0800
Subject: [PATCH] 报工管理页面完善、大屏显示翻译文件补充

---
 UI-Project/src/views/ReportWork/reportWork.vue |   78 +++++++++++++++++++++++++++++++++++----
 1 files changed, 70 insertions(+), 8 deletions(-)

diff --git a/UI-Project/src/views/ReportWork/reportWork.vue b/UI-Project/src/views/ReportWork/reportWork.vue
index ef5e1b9..5400e22 100644
--- a/UI-Project/src/views/ReportWork/reportWork.vue
+++ b/UI-Project/src/views/ReportWork/reportWork.vue
@@ -45,9 +45,31 @@
           <el-table-column prop="temperingLayoutId" align="center" :label="$t('reportmanage.layoutID')"
             min-width="120" />
           <el-table-column prop="formattedCreateTime" align="center" :label="$t('reportmanage.productiontime')"
-            min-width="230" />damageTime
-          <el-table-column prop="type" align="center" :label="$t('reportmanage.type')" min-width="120" />
-          <el-table-column prop="status" align="center" :label="$t('reportmanage.state')" min-width="120" />
+            min-width="230" />
+          <el-table-column
+            align="center"
+            :label="$t('reportmanage.type')"
+            min-width="120"
+            prop="type"
+          >
+          <template #default="scope">  
+        <el-tag :type="gettypeType(scope.row.type)">  
+          {{ gettypeText(scope.row.type) }}  
+        </el-tag>  
+      </template> 
+          </el-table-column>
+          <el-table-column
+            align="center"
+            :label="$t('reportmanage.state')"
+            min-width="120"
+            prop="status"
+          >
+          <template #default="scope">  
+        <el-tag :type="getStatusType(scope.row.status)">  
+          {{ getStatusText(scope.row.status) }}  
+        </el-tag>  
+      </template> 
+          </el-table-column>
           <el-table-column prop="processId" align="center" :label="$t('reportmanage.processcards')" min-width="140" />
           <el-table-column prop="orderNumber" align="center" :label="$t('reportmanage.number')" min-width="120" />
           <el-table-column prop="technologyNumber" align="center" :label="$t('reportmanage.layer')" min-width="120" />
@@ -74,9 +96,9 @@
             <template #default="{ row }">
               <el-select v-model="row.responsibleProcess" filterable :placeholder="$t('reportmanage.ptypebreakage')" :disabled="selectedType"
                 clearable @input="handleInputChangea($event, row.id)">
-                <el-option value="鍒囧壊" label="鍒囧壊"></el-option>
-                <el-option value="纾ㄨ竟" label="纾ㄨ竟"></el-option>
-                <el-option value="閽㈠寲" label="閽㈠寲"></el-option>
+               <el-option :label="$t('reportmanage.incise')" value="鍒囧壊"></el-option>
+               <el-option :label="$t('reportmanage.edging')" value="纾ㄨ竟"></el-option>
+               <el-option :label="$t('reportmanage.steel')" value="閽㈠寲"></el-option>
               </el-select>
             </template>
           </el-table-column>
@@ -118,7 +140,7 @@
     </el-card>
   </div>
 </template>
-<script setup>
+<script lang="ts" setup>
 import { Delete, Upload } from '@element-plus/icons-vue'
 import { ElMessage, ElMessageBox } from 'element-plus'
 import { ref, onMounted, onBeforeUnmount, reactive, computed, shallowRef, onUnmounted, watchEffect } from "vue";
@@ -191,7 +213,7 @@
   if (response.code === 200) {
     const formattedData = response.data.map(record => ({
         ...record,
-        formattedCreateTime: formatTimestamp(record.createTime),
+        formattedCreateTime: formatTimestamp(record.damageTime),
       }));
     reportData.value = formattedData;
     ElMessage.success(response.message);
@@ -259,6 +281,46 @@
   inputValuesb[rowId] = value;
 };
 fetchTableData();
+function gettypeType(type: number) {  
+  switch (type) {
+    case 9: 
+      return 'success';  
+    case 8: 
+      return 'danger';  
+  }
+}  
+function gettypeText(type: number) {
+  switch (type) {
+    case 9:  
+      return t('reportmanage.takeout'); 
+    case 8:  
+      return t('reportmanage.broke'); 
+  }  
+}
+function getStatusType(status: number) {  
+  switch (status) {  
+    case 1:
+      return 'warning';  
+    case 3: 
+      return 'info';  
+    case 7: 
+      return 'success';  
+    case 8: 
+      return 'primary';  
+  }
+}  
+function getStatusText(status: number) {
+  switch (status) {
+    case 1:  
+      return t('reportmanage.dreportwork');
+    case 3:  
+      return t('reportmanage.reportwork'); 
+    case 7:  
+      return t('reportmanage.pendingwork'); 
+    case 8:  
+      return t('reportmanage.reportworked'); 
+  }  
+}
 let socket = null;
 // const socketUrl = `ws://${WebSocketHost}:${host}/api/temperingGlass/api/talk/screen`;
 // const handleMessage = (data) => {

--
Gitblit v1.8.0