From 2f3f713465e0a538dfa49fc187b8b8d84b3f0a55 Mon Sep 17 00:00:00 2001
From: buhuazhen <hua100783@gmail.com>
Date: 星期三, 27 五月 2026 17:18:48 +0800
Subject: [PATCH] feat 页面显示巡检状态

---
 src/views/productionManagement/workOrder/index.vue           |    4 +-
 src/views/equipmentManagement/repair/index.vue               |   52 +++++++++++++++++---------
 src/views/equipmentManagement/inspectionManagement/index.vue |   23 +++++++++++
 3 files changed, 58 insertions(+), 21 deletions(-)

diff --git a/src/views/equipmentManagement/inspectionManagement/index.vue b/src/views/equipmentManagement/inspectionManagement/index.vue
index d80d29a..3677ec8 100644
--- a/src/views/equipmentManagement/inspectionManagement/index.vue
+++ b/src/views/equipmentManagement/inspectionManagement/index.vue
@@ -70,6 +70,17 @@
                     class="no-data">--</span>
             </div>
           </template>
+          <template #status="{ row }">
+            <el-tag v-if="row.status === 'EXPIRED'"
+                    type="danger"
+                    size="small">宸茶繃鏈�</el-tag>
+            <el-tag v-else-if="row.status === 'IN_PROGRESS'"
+                    type="warning"
+                    size="small">宸℃涓�</el-tag>
+            <el-tag v-else
+                    type="info"
+                    size="small">寰呭贰妫�</el-tag>
+          </template>
         </PIMTable>
       </div>
     </el-card>
@@ -127,7 +138,7 @@
   const pageNum = ref(1);
   const pageSize = ref(10);
 
-  // 鍒楅厤缃�
+  // 鍒楅厤缃紙鍩虹鍒楋紝涓嶅惈鐘舵�侊級
   const columns = ref([
     { prop: "taskName", label: "宸℃浠诲姟鍚嶇О", minWidth: 160 },
     { prop: "remarks", label: "澶囨敞", minWidth: 150 },
@@ -227,6 +238,15 @@
     radioChange("taskManage");
   });
 
+  // 鐘舵�佸垪閰嶇疆锛堜粎瀹氭椂浠诲姟璁板綍鏄剧ず锛�
+  const statusColumn = {
+    prop: "status",
+    label: "鐘舵��",
+    minWidth: 100,
+    dataType: "slot",
+    slot: "status"
+  };
+
   // 鍗曢�夊彉鍖�
   const radioChange = value => {
     if (value === "taskManage") {
@@ -240,6 +260,7 @@
       const operationColumn = getOperationColumn(["upload", "viewFile"]);
       tableColumns.value = [
         ...columns.value,
+        statusColumn,  // 瀹氭椂浠诲姟璁板綍娣诲姞鐘舵�佸垪
         ...(operationColumn ? [operationColumn] : []),
       ];
       operationsArr.value = ["upload", "viewFile"];
diff --git a/src/views/equipmentManagement/repair/index.vue b/src/views/equipmentManagement/repair/index.vue
index b43ba44..a38caf2 100644
--- a/src/views/equipmentManagement/repair/index.vue
+++ b/src/views/equipmentManagement/repair/index.vue
@@ -41,13 +41,17 @@
             @change="getTableData"
         />
       </el-form-item>
-      <el-form-item label="鎶ヤ慨鏃ユ湡">
+      <el-form-item label="鎶ヤ慨鏃堕棿">
         <el-date-picker
-            v-model="filters.repairTimeStr"
-            type="date"
-            placeholder="璇烽�夋嫨鎶ヤ慨鏃ユ湡"
-            size="default"
-            @change="(date) => handleDateChange(date,2)"
+            v-model="filters.repairTimeRange"
+            type="datetimerange"
+            range-separator="鑷�"
+            start-placeholder="寮�濮嬫椂闂�"
+            end-placeholder="缁撴潫鏃堕棿"
+            format="YYYY-MM-DD HH:mm:ss"
+            value-format="YYYY-MM-DD HH:mm:ss"
+            style="width: 360px"
+            @change="handleRepairTimeChange"
         />
       </el-form-item>
       <el-form-item label="缁翠慨鏃ユ湡">
@@ -189,7 +193,9 @@
       deviceModel: undefined,
       remark: undefined,
       maintenanceName: undefined,
-      repairTimeStr: undefined,
+      repairTimeRange: undefined,
+      repairTimeStart: undefined,
+      repairTimeEnd: undefined,
       maintenanceTimeStr: undefined,
     },
     [
@@ -256,21 +262,31 @@
         align: "center",
         width: "300px",
       },
-    ]
+    ],
+    null,
+    {
+      // 杩囨护鎺� repairTimeRange锛屽彧鍙戦�� repairTimeStart 鍜� repairTimeEnd
+      repairTimeRange: () => ({})
+    }
 );
 
-// type === 1 缁翠慨 2鎶ヤ慨闂�
+// 鎶ヤ慨鏃堕棿鑼冨洿鍙樺寲
+const handleRepairTimeChange = (value) => {
+  if (value && value.length === 2) {
+    filters.repairTimeStart = value[0];
+    filters.repairTimeEnd = value[1];
+  } else {
+    filters.repairTimeStart = undefined;
+    filters.repairTimeEnd = undefined;
+  }
+  getTableData();
+};
+
+// type === 1 缁翠慨
 const handleDateChange = (value, type) => {
   filters.maintenanceTimeStr = null
-  filters.c = null
-  if (type === 1) {
-    if (value) {
-      filters.maintenanceTimeStr = dayjs(value).format("YYYY-MM-DD");
-    }
-  } else {
-    if (value) {
-      filters.repairTimeStr = dayjs(value).format("YYYY-MM-DD");
-    }
+  if (type === 1 && value) {
+    filters.maintenanceTimeStr = dayjs(value).format("YYYY-MM-DD");
   }
   getTableData();
 };
diff --git a/src/views/productionManagement/workOrder/index.vue b/src/views/productionManagement/workOrder/index.vue
index 564037e..88564ea 100644
--- a/src/views/productionManagement/workOrder/index.vue
+++ b/src/views/productionManagement/workOrder/index.vue
@@ -1068,8 +1068,8 @@
           showReportDialog(row);
         },
         // // 鐢ㄦ埛褰撳墠id
-        // disabled: row => row.completeQuantity >= row.planQuantity ||
-        //     !isCurrentUserInUserIds(row) || row.hasUnreportedMachine
+        disabled: row => row.completeQuantity >= row.planQuantity ||
+            !isCurrentUserInUserIds(row) || row.hasUnreportedMachine
       },
       {
         name: "鐢熶骇鎺掍骇",

--
Gitblit v1.9.3