From 91dec349aa88c58c587199d9601529d60824e1d0 Mon Sep 17 00:00:00 2001
From: zhangwencui <1064582902@qq.com>
Date: 星期四, 02 七月 2026 13:24:34 +0800
Subject: [PATCH] 生产订单对齐管理端新增两个字段展示

---
 src/pages/oa/ApproveManage/approve-template/index.vue |   36 +++++++++++++++++++++++++++---------
 1 files changed, 27 insertions(+), 9 deletions(-)

diff --git a/src/pages/oa/ApproveManage/approve-template/index.vue b/src/pages/oa/ApproveManage/approve-template/index.vue
index 96660bc..5215afa 100644
--- a/src/pages/oa/ApproveManage/approve-template/index.vue
+++ b/src/pages/oa/ApproveManage/approve-template/index.vue
@@ -48,8 +48,8 @@
           <up-divider />
           <view class="item-details">
             <view class="detail-row">
-              <text class="detail-label">妯℃澘绫诲瀷</text>
-              <text class="detail-value">{{ templateTypeText(item.templateType) }}</text>
+              <text class="detail-label">瀹℃壒绫诲瀷</text>
+              <text class="detail-value">{{ businessTypeText(item.businessType) }}</text>
             </view>
             <view class="detail-row">
               <text class="detail-label">瀹℃壒鑺傜偣</text>
@@ -80,7 +80,8 @@
                        @click.stop="goEdit(item)">
               缂栬緫
             </up-button>
-            <up-button class="action-btn"
+            <up-button v-if="!isSystemTemplate(item)"
+                       class="action-btn"
                        size="small"
                        type="error"
                        plain
@@ -115,8 +116,15 @@
     deleteApprovalTemplate,
     listApprovalTemplatePage,
   } from "@/api/oa/approvalTemplate.js";
+  import {
+    buildTypeLabelMap,
+    fetchApprovalTemplateTypes,
+    getTemplateTypeLabel,
+    isSystemApprovalTemplate,
+  } from "../../_utils/approvalTemplateType.js";
 
   const EDIT_STORAGE_KEY = "oa_approve_template_edit_row";
+  const typeLabelMap = ref({});
 
   const queryParams = reactive({
     templateName: "",
@@ -155,12 +163,17 @@
     return "info";
   };
 
-  const templateTypeText = type => {
-    const val = Number(type);
-    if (val === 0) return "绯荤粺鍐呯疆";
-    if (val === 1) return "鑷畾涔�";
-    return "-";
-  };
+  const businessTypeText = type =>
+    getTemplateTypeLabel(type, typeLabelMap.value);
+
+  const isSystemTemplate = isSystemApprovalTemplate;
+
+  const loadTemplateTypes = () =>
+    fetchApprovalTemplateTypes()
+      .then(opts => {
+        typeLabelMap.value = buildTypeLabelMap(opts);
+      })
+      .catch(() => {});
 
   const nodeCount = item => {
     const count = item?.nodes?.length;
@@ -241,6 +254,10 @@
 
   const handleDelete = item => {
     if (!item?.id) return;
+    if (isSystemTemplate(item)) {
+      uni.showToast({ title: "绯荤粺鍐呯疆妯℃澘涓嶅彲鍒犻櫎", icon: "none" });
+      return;
+    }
     const name = item.templateName || "璇ユā鏉�";
     uni.showModal({
       title: "鍒犻櫎纭",
@@ -266,6 +283,7 @@
   };
 
   onShow(() => {
+    loadTemplateTypes();
     handleSearch();
   });
 </script>

--
Gitblit v1.9.3