Quellcode durchsuchen

增加绘制流程图 审批人, 办理人,抄送 的表单字段权限的一键设置的功能

Lemon vor 6 Monaten
Ursprung
Commit
91e2e32ace

+ 22 - 2
src/components/SimpleProcessDesignerV2/src/nodes-config/CopyTaskNodeConfig.vue

@@ -195,9 +195,13 @@
           <div class="field-permit-title">
             <div class="setting-title-label first-title"> 字段名称 </div>
             <div class="other-titles">
-              <span class="setting-title-label">只读</span>
+              <span class="setting-title-label">只读
+                              <el-switch v-model="readSwitch" @change="updatePermission('READ')" />
+              </span>
               <span class="setting-title-label">可编辑</span>
-              <span class="setting-title-label">隐藏</span>
+              <span class="setting-title-label">隐藏
+                                <el-switch v-model="noneSwitch" @change="updatePermission('NONE')" />
+              </span>
             </div>
           </div>
           <div
@@ -367,7 +371,23 @@ const showCopyTaskNodeConfig = (node: SimpleFlowNode) => {
   // 表单字段权限
   getNodeConfigFormFields(node.fieldsPermission)
 }
+const readSwitch = ref(false);
+const noneSwitch = ref(false);
+const updatePermission = (type: string) => {
+  if (type === 'READ') {
+    readSwitch.value = true;
 
+    noneSwitch.value = false;
+  }  else if (type === 'NONE') {
+    readSwitch.value = false;
+
+    noneSwitch.value = true;
+  }
+
+  fieldsPermissionConfig.value.forEach(field => {
+    field.permission = type === 'READ' ? FieldPermissionType.READ : FieldPermissionType.NONE;
+  });
+};
 defineExpose({ openDrawer, showCopyTaskNodeConfig }) // 暴露方法给父组件
 </script>
 

+ 33 - 3
src/components/SimpleProcessDesignerV2/src/nodes-config/StartUserNodeConfig.vue

@@ -46,9 +46,15 @@
           <div class="field-permit-title">
             <div class="setting-title-label first-title"> 字段名称 </div>
             <div class="other-titles">
-              <span class="setting-title-label">只读</span>
-              <span class="setting-title-label">可编辑</span>
-              <span class="setting-title-label">隐藏</span>
+              <span class="setting-title-label">只读
+                <el-switch v-model="readSwitch" @change="updatePermission('READ')" />
+              </span>
+              <span class="setting-title-label">可编辑
+                <el-switch v-model="writeSwitch" @change="updatePermission('WRITE')" />
+              </span>
+              <span class="setting-title-label">隐藏
+                <el-switch v-model="noneSwitch" @change="updatePermission('NONE')" />
+              </span>
             </div>
           </div>
           <div
@@ -156,8 +162,32 @@ const showStartUserNodeConfig = (node: SimpleFlowNode) => {
   // 表单字段权限
   getNodeConfigFormFields(node.fieldsPermission)
 }
+const readSwitch = ref(false)
+const writeSwitch = ref(false)
+const noneSwitch = ref(false)
+const updatePermission = (type) => {
+  if (type === 'READ') {
+    readSwitch.value = true;
+    writeSwitch.value = false;
+    noneSwitch.value = false;
+  } else if (type === 'WRITE') {
+    readSwitch.value = false;
+    writeSwitch.value = true;
+    noneSwitch.value = false;
+  } else if (type === 'NONE') {
+    readSwitch.value = false;
+    writeSwitch.value = false;
+    noneSwitch.value = true;
+  }
 
+  fieldsPermissionConfig.value.forEach(item => {
+    item.permission = type === 'READ' ? FieldPermissionType.READ :
+      type === 'WRITE' ? FieldPermissionType.WRITE :
+        FieldPermissionType.NONE;
+  });
+}
 defineExpose({ openDrawer, showStartUserNodeConfig }) // 暴露方法给父组件
+
 </script>
 
 <style lang="scss" scoped></style>

+ 34 - 3
src/components/SimpleProcessDesignerV2/src/nodes-config/UserTaskNodeConfig.vue

@@ -454,9 +454,15 @@
           <div class="field-permit-title">
             <div class="setting-title-label first-title"> 字段名称 </div>
             <div class="other-titles">
-              <span class="setting-title-label">只读</span>
-              <span class="setting-title-label">可编辑</span>
-              <span class="setting-title-label">隐藏</span>
+              <span class="setting-title-label">只读
+                <el-switch v-model="readSwitch" @change="updatePermission('READ')" />
+                </span>
+              <span class="setting-title-label">可编辑
+                <el-switch v-model="writeSwitch" @change="updatePermission('WRITE')" />
+              </span>
+              <span class="setting-title-label">隐藏
+                <el-switch v-model="noneSwitch" @change="updatePermission('NONE')" />
+              </span>
             </div>
           </div>
           <div
@@ -953,6 +959,31 @@ function useTimeoutHandler() {
     cTimeoutMaxRemindCount
   }
 }
+const readSwitch = ref(false);
+const writeSwitch = ref(false);
+const noneSwitch = ref(false);
+
+const updatePermission = (type: string) => {
+  if (type === 'READ') {
+    readSwitch.value = true;
+    writeSwitch.value = false;
+    noneSwitch.value = false;
+  } else if (type === 'WRITE') {
+    readSwitch.value = false;
+    writeSwitch.value = true;
+    noneSwitch.value = false;
+  } else if (type === 'NONE') {
+    readSwitch.value = false;
+    writeSwitch.value = false;
+    noneSwitch.value = true;
+  }
+
+  fieldsPermissionConfig.value.forEach(field => {
+    field.permission = type === 'READ' ? FieldPermissionType.READ :
+      type === 'WRITE' ? FieldPermissionType.WRITE :
+        FieldPermissionType.NONE;
+  });
+};
 </script>
 
 <style lang="scss" scoped>