From b186f5b20c4f83773f51786da0cd3e85130540c2 Mon Sep 17 00:00:00 2001
From: yyb <995253665@qq.com>
Date: 星期五, 22 五月 2026 16:32:01 +0800
Subject: [PATCH] feat(审批模板): 增强审批流程编辑器功能,新增只读模式——为 TemplateFlowEditor 添加了只读属性,以在流程不可编辑时防止进行修改。——更新审批模板表单部分,使其能够根据 flowEditable 状态条件性地显示可编辑选项。——优化了用户反馈机制,通过动态消息显示审批流程是否可进行修改。

---
 src/views/officeProcessAutomation/ApproveManage/approve-shared/components/ApprovalTemplateFormSection.vue |   33 +++++++++++++++++++++++++++------
 1 files changed, 27 insertions(+), 6 deletions(-)

diff --git a/src/views/officeProcessAutomation/ApproveManage/approve-shared/components/ApprovalTemplateFormSection.vue b/src/views/officeProcessAutomation/ApproveManage/approve-shared/components/ApprovalTemplateFormSection.vue
index aff58fd..d6e7073 100644
--- a/src/views/officeProcessAutomation/ApproveManage/approve-shared/components/ApprovalTemplateFormSection.vue
+++ b/src/views/officeProcessAutomation/ApproveManage/approve-shared/components/ApprovalTemplateFormSection.vue
@@ -1,21 +1,38 @@
 <!-- 妯℃澘缁戝畾琛ㄥ崟鍖猴細濉姤椤� + 瀹℃壒娴佺▼ + 闄勪欢锛堥』鎸傚湪澶栧眰 el-form 涓嬶級 -->
 <template>
   <template v-if="activeTemplate">
-    <el-form-item v-if="showTemplateName && !hideTemplateName && !flowAttachmentsOnly" label="瀹℃壒妯℃澘">
+    <el-form-item
+      v-if="showTemplateName && !hideTemplateName && !flowAttachmentsOnly && !flowOnly"
+      label="瀹℃壒妯℃澘"
+    >
       <span class="template-name">{{ activeTemplate.label }}</span>
       <el-button v-if="allowChangeTemplate" type="primary" link class="ml12" @click="emit('change-template')">
         鏇存崲妯℃澘
       </el-button>
     </el-form-item>
 
-    <FormPayloadFields v-if="!hideFormFields && !flowAttachmentsOnly" :fields="fields" :form-payload="formPayload" />
+    <FormPayloadFields
+      v-if="!hideFormFields && !flowAttachmentsOnly && !flowOnly"
+      :fields="fields"
+      :form-payload="formPayload"
+    />
 
     <el-form-item label="瀹℃壒娴佺▼" required>
-      <TemplateFlowEditor v-model="flowNodesModel" :user-options="userOptions" />
-      <p class="section-tip">娴佺▼涓庡鎵逛汉鐢辨ā鏉块缃紝鍙寜闇�寰皟鑺傜偣瀹℃壒浜恒��</p>
+      <TemplateFlowEditor
+        v-model="flowNodesModel"
+        :user-options="userOptions"
+        :readonly="!flowEditable"
+      />
+      <p class="section-tip">
+        {{
+          flowEditable
+            ? "娴佺▼涓庡鎵逛汉鐢辨ā鏉块缃紝鍙寜闇�寰皟鑺傜偣瀹℃壒浜恒��"
+            : "娴佺▼涓庡鎵逛汉鐢辨墍閫夋ā鏉垮浐瀹氾紝涓嶅彲淇敼銆�"
+        }}
+      </p>
     </el-form-item>
 
-    <el-form-item v-if="templateAttachments.length" label="妯℃澘鍙傝��">
+    <el-form-item v-if="!flowOnly && templateAttachments.length" label="妯℃澘鍙傝��">
       <el-tag
         v-for="(f, i) in templateAttachments"
         :key="`tpl-${i}`"
@@ -28,7 +45,7 @@
       <p class="section-tip">浠ヤ笂涓烘ā鏉块檮甯︽枃浠讹紝浠呬緵鍙傝�冿紱鎻愪氦闄勪欢璇峰湪涓嬫柟涓婁紶銆�</p>
     </el-form-item>
 
-    <el-form-item label="闄勪欢">
+    <el-form-item v-if="!flowOnly" label="闄勪欢">
       <FileUpload
         v-model:file-list="attachmentsModel"
         :limit="uploadLimit"
@@ -65,7 +82,11 @@
   hideTemplateName: { type: Boolean, default: false },
   /** 涓� true 鏃朵粎灞曠ず瀹℃壒娴佺▼涓庨檮浠讹紙濉姤椤圭敱鐖剁骇鍗曠嫭娓叉煋锛� */
   flowAttachmentsOnly: { type: Boolean, default: false },
+  /** 涓� true 鏃朵粎灞曠ず瀹℃壒娴佺▼锛堜笉灞曠ず妯℃澘濉姤椤广�侀檮浠剁瓑锛� */
+  flowOnly: { type: Boolean, default: false },
   uploadLimit: { type: Number, default: 10 },
+  /** 涓� true 鏃跺彲缂栬緫妯℃澘棰勭疆鐨勫鎵逛汉锛堜粎瀹℃壒妯℃澘绠$悊椤典娇鐢級 */
+  flowEditable: { type: Boolean, default: false },
 });
 
 const emit = defineEmits(["update:flowNodes", "update:attachments", "change-template"]);

--
Gitblit v1.9.3