From cc13825bb6b3f4185e3db8aa29e58990ee4e01c0 Mon Sep 17 00:00:00 2001
From: zhangwencui <1064582902@qq.com>
Date: 星期五, 27 二月 2026 17:49:36 +0800
Subject: [PATCH] 巡检模块流程更改

---
 src/views/equipmentManagement/inspectionManagement/index.vue |  137 +++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 135 insertions(+), 2 deletions(-)

diff --git a/src/views/equipmentManagement/inspectionManagement/index.vue b/src/views/equipmentManagement/inspectionManagement/index.vue
index 35f82d5..53f9345 100644
--- a/src/views/equipmentManagement/inspectionManagement/index.vue
+++ b/src/views/equipmentManagement/inspectionManagement/index.vue
@@ -151,6 +151,78 @@
       },
     },
     {
+      prop: "inspectionDeadlinetxt",
+      label: "鏈熼檺",
+      minWidth: 150,
+    },
+    {
+      prop: "inspectionStatus",
+      label: "宸℃鐘舵��",
+      minWidth: 150,
+      dataType: "tag",
+      formatType: params => {
+        const typeMap = {
+          宸插畬鎴�: "info",
+          鏈贰妫�: "warning",
+          瓒呮湡: "danger",
+        };
+        return typeMap[params] || "info";
+      },
+    },
+    {
+      prop: "frequencyDetail",
+      label: "寮�濮嬫棩鏈熶笌鏃堕棿",
+      minWidth: 150,
+      formatter: (row, column, cellValue) => {
+        // 鍏堝垽鏂槸鍚︽槸瀛楃涓�
+        if (typeof cellValue !== "string") return "";
+        let val = cellValue;
+        const replacements = {
+          MON: "鍛ㄤ竴",
+          TUE: "鍛ㄤ簩",
+          WED: "鍛ㄤ笁",
+          THU: "鍛ㄥ洓",
+          FRI: "鍛ㄤ簲",
+          SAT: "鍛ㄥ叚",
+          SUN: "鍛ㄦ棩",
+        };
+        // 浣跨敤姝e垯涓�娆℃�ф浛鎹㈡墍鏈夊尮閰嶉」
+        return val.replace(
+          /MON|TUE|WED|THU|FRI|SAT|SUN/g,
+          match => replacements[match]
+        );
+      },
+    },
+    { prop: "registrant", label: "鐧昏浜�", minWidth: 100 },
+    { prop: "createTime", label: "鐧昏鏃ユ湡", minWidth: 100 },
+  ]);
+  const columns1 = ref([
+    { prop: "taskName", label: "宸℃浠诲姟鍚嶇О", minWidth: 160 },
+    { prop: "remarks", label: "澶囨敞", minWidth: 150 },
+    { prop: "inspector", label: "鎵ц宸℃浜�", minWidth: 150, slot: "inspector" },
+    {
+      prop: "frequencyType",
+      label: "棰戞",
+      minWidth: 150,
+      // formatter: (_, __, val) => ({
+      //   DAILY: "姣忔棩",
+      //   WEEKLY: "姣忓懆",
+      //   MONTHLY: "姣忔湀",
+      //   QUARTERLY: "瀛e害"
+      // }[val] || "")
+      formatData: params => {
+        return params === "DAILY"
+          ? "姣忔棩"
+          : params === "WEEKLY"
+          ? "姣忓懆"
+          : params === "MONTHLY"
+          ? "姣忔湀"
+          : params === "QUARTERLY"
+          ? "瀛e害"
+          : "";
+      },
+    },
+    {
       prop: "frequencyDetail",
       label: "寮�濮嬫棩鏈熶笌鏃堕棿",
       minWidth: 150,
@@ -221,7 +293,7 @@
     if (value === "taskManage") {
       const operationColumn = getOperationColumn(["edit"]);
       tableColumns.value = [
-        ...columns.value,
+        ...columns1.value,
         ...(operationColumn ? [operationColumn] : []),
       ];
       operationsArr.value = ["edit"];
@@ -293,6 +365,13 @@
 
           return processedItem;
         });
+        tableData.value.forEach(item => {
+          item.inspectionStatus = getFileStatus(item);
+          item.inspectionDeadlinetxt =
+            item.frequencyType === "DAILY"
+              ? item.inspectionDeadline + "灏忔椂"
+              : item.inspectionDeadline + "澶�";
+        });
         total.value = res.data.total || 0;
       })
       .finally(() => {
@@ -345,7 +424,61 @@
       })
       .catch(() => {});
   };
-
+  const getFileStatus = record => {
+    console.log(record);
+    if (record.takePhone) {
+      if (record.commonFileListBefore && record.commonFileListBefore.length) {
+        return "宸插畬鎴�";
+      }
+      if (record.frequencyType == "DAILY") {
+        if (Number(record.inspectionDeadline) && record.createTime) {
+          // 璁$畻鏃堕棿宸紙灏忔椂锛�
+          const now = new Date().getTime();
+          const createTime = new Date(record.createTime).getTime();
+          const hoursDiff = (now - createTime) / (1000 * 60 * 60);
+          if (hoursDiff > Number(record.inspectionDeadline)) {
+            return "瓒呮湡";
+          }
+        }
+      } else {
+        if (Number(record.inspectionDeadline) && record.createTime) {
+          // 璁$畻鏃堕棿宸紙澶╋級
+          const now = new Date().getTime();
+          const createTime = new Date(record.createTime).getTime();
+          const daysDiff = (now - createTime) / (1000 * 60 * 60 * 24);
+          if (daysDiff > Number(record.inspectionDeadline)) {
+            return "瓒呮湡";
+          }
+        }
+      }
+      return "鏈贰妫�";
+    } else if (record.inspectionSubmitted) {
+      return "宸插畬鎴�";
+    } else {
+      if (record.frequencyType == "DAILY") {
+        if (Number(record.inspectionDeadline) && record.createTime) {
+          // 璁$畻鏃堕棿宸紙灏忔椂锛�
+          const now = new Date().getTime();
+          const createTime = new Date(record.createTime).getTime();
+          const hoursDiff = (now - createTime) / (1000 * 60 * 60);
+          if (hoursDiff > Number(record.inspectionDeadline)) {
+            return "瓒呮湡";
+          }
+        }
+      } else {
+        if (Number(record.inspectionDeadline) && record.createTime) {
+          // 璁$畻鏃堕棿宸紙澶╋級
+          const now = new Date().getTime();
+          const createTime = new Date(record.createTime).getTime();
+          const daysDiff = (now - createTime) / (1000 * 60 * 60 * 24);
+          if (daysDiff > Number(record.inspectionDeadline)) {
+            return "瓒呮湡";
+          }
+        }
+      }
+      return "鏈贰妫�";
+    }
+  };
   // 澶氶�夊彉鏇�
   const handleSelectionChange = selection => {
     selectedRows.value = selection;

--
Gitblit v1.9.3