From 9646ba4b026e4dbee0c0d5ac3d52b428bfef7b29 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期五, 28 八月 2026 10:49:44 +0800
Subject: [PATCH] 新疆-新聚 1.销售台账中的销售合同按框架合同处理 2.设备台账需按车间/区域汇总设备,车间/位置可自行新增,且支持子父级递归 3.计量器具台账支持通过 Excel 文件批量新增数据 4.设备保养定时任务新增“年度保养”任务频率

---
 src/views/equipmentManagement/upkeep/index.vue |   47 ++++++++++++++++++++++++++++-------------------
 1 files changed, 28 insertions(+), 19 deletions(-)

diff --git a/src/views/equipmentManagement/upkeep/index.vue b/src/views/equipmentManagement/upkeep/index.vue
index 245a162..560b70d 100644
--- a/src/views/equipmentManagement/upkeep/index.vue
+++ b/src/views/equipmentManagement/upkeep/index.vue
@@ -63,6 +63,9 @@
             }"
                     @selection-change="handleScheduledSelectionChange"
                     @pagination="changeScheduledPage">
+            <template #frequencyDetailRef="{ row }">
+              {{ formatFrequencyDetail(row) }}
+            </template>
             <template #statusRef="{ row }">
               <el-tag v-if="row.status === 1"
                       type="success">鍚敤</el-tag>
@@ -316,31 +319,15 @@
           WEEKLY: "姣忓懆",
           MONTHLY: "姣忔湀",
           QUARTERLY: "瀛e害",
+          YEARLY: "骞村害淇濆吇",
         }[cell] || ""),
     },
     {
       prop: "frequencyDetail",
       label: "寮�濮嬫棩鏈熶笌鏃堕棿",
       minWidth: 150,
-      // 鍚屾牱鏀圭敤 formatData锛孭IMTable 鍐呴儴浼氭妸鍗曞厓鏍煎�间紶杩涙潵
-      formatData: cell => {
-        if (typeof cell !== "string") return "";
-        let val = cell;
-        const replacements = {
-          MON: "鍛ㄤ竴",
-          TUE: "鍛ㄤ簩",
-          WED: "鍛ㄤ笁",
-          THU: "鍛ㄥ洓",
-          FRI: "鍛ㄤ簲",
-          SAT: "鍛ㄥ叚",
-          SUN: "鍛ㄦ棩",
-        };
-        // 浣跨敤姝e垯涓�娆℃�ф浛鎹㈡墍鏈夊尮閰嶉」
-        return val.replace(
-          /MON|TUE|WED|THU|FRI|SAT|SUN/g,
-          match => replacements[match]
-        );
-      },
+      dataType: "slot",
+      slot: "frequencyDetailRef",
     },
     { prop: "maintenancePerson", label: "淇濆吇浜�", minWidth: 100 },
     { prop: "registrant", label: "鐧昏浜�", minWidth: 100 },
@@ -362,6 +349,28 @@
   ]);
 
   // 淇濆吇璁板綍琛ㄦ牸鍒楅厤缃紙鍘熻澶囦繚鍏昏〃鏍煎垪锛�
+  const formatFrequencyDetail = (row) => {
+    if (!row) return "";
+    const val = String(row.frequencyDetail || "");
+    if (row.frequencyType === "YEARLY") {
+      const parts = val.split(",");
+      if (parts.length === 3) {
+        return `姣忓勾${parts[0]}鏈�${parts[1]}鏃� ${parts[2]}`;
+      }
+      return val;
+    }
+    const replacements = {
+      MON: "鍛ㄤ竴",
+      TUE: "鍛ㄤ簩",
+      WED: "鍛ㄤ笁",
+      THU: "鍛ㄥ洓",
+      FRI: "鍛ㄤ簲",
+      SAT: "鍛ㄥ叚",
+      SUN: "鍛ㄦ棩",
+    };
+    return val.replace(/MON|TUE|WED|THU|FRI|SAT|SUN/g, (m) => replacements[m]);
+  };
+
   const columns = ref([
     {
       label: "璁惧鍚嶇О",

--
Gitblit v1.9.3