浏览代码

!720 fix: 代码评审修改
Merge pull request !720 from Lesan/feature/bpm-子流程

芋道源码 5 月之前
父节点
当前提交
068ffc9d53

+ 6 - 6
src/components/SimpleProcessDesignerV2/src/consts.ts

@@ -838,7 +838,7 @@ export type TimeoutSetting = {
 export type MultiInstanceSetting = {
   enable: boolean
   sequential?: boolean
-  completeRatio?: number
+  approveRatio?: number
   sourceType?: ChildProcessMultiInstanceSourceTypeEnum
   source?: string
 }
@@ -883,14 +883,14 @@ export enum ChildProcessMultiInstanceSourceTypeEnum {
   /**
    * 数字表单
    */
-  DIGITAL_FORM = 2,
+  NUMBER_FORM = 2,
   /**
-   * 多表单
+   * 多表单
    */
-  MULTI_FORM = 3
+  MULTIPLE_FORM = 3
 }
 export const CHILD_PROCESS_MULTI_INSTANCE_SOURCE_TYPE = [
   { label: '固定数量', value: ChildProcessMultiInstanceSourceTypeEnum.FIXED_QUANTITY },
-  { label: '数字表单', value: ChildProcessMultiInstanceSourceTypeEnum.DIGITAL_FORM }, // TODO @lesan:DIGITAL 改成 NUMBER,和 Element plus 更接近?
-  { label: '多表单', value: ChildProcessMultiInstanceSourceTypeEnum.MULTI_FORM } // TODO @lesan:多选表单?multiple 是这个解释。另外 MULTI => MULTIPLE
+  { label: '数字表单', value: ChildProcessMultiInstanceSourceTypeEnum.NUMBER_FORM },
+  { label: '多表单', value: ChildProcessMultiInstanceSourceTypeEnum.MULTIPLE_FORM }
 ]

+ 12 - 13
src/components/SimpleProcessDesignerV2/src/nodes-config/ChildProcessNodeConfig.vue

@@ -270,11 +270,11 @@
                   inactive-text="并行"
                 />
               </el-form-item>
-              <el-form-item prop="completeRatio">
+              <el-form-item prop="approveRatio">
                 <el-text>完成比例(%)</el-text>
                 <el-input-number
                   class="ml-10px"
-                  v-model="configForm.completeRatio"
+                  v-model="configForm.approveRatio"
                   :min="10"
                   :max="100"
                   :step="10"
@@ -295,11 +295,10 @@
                   />
                 </el-select>
               </el-form-item>
-              <!-- TODO @lesan:枚举 -->
-              <el-form-item v-if="configForm.multiInstanceSourceType === 1">
+              <el-form-item v-if="configForm.multiInstanceSourceType === ChildProcessMultiInstanceSourceTypeEnum.FIXED_QUANTITY">
                 <el-input-number v-model="configForm.multiInstanceSource" :min="1" />
               </el-form-item>
-              <el-form-item v-if="configForm.multiInstanceSourceType === 2">
+              <el-form-item v-if="configForm.multiInstanceSourceType === ChildProcessMultiInstanceSourceTypeEnum.NUMBER_FORM">
                 <el-select class="w-200px!" v-model="configForm.multiInstanceSource">
                   <el-option
                     v-for="(field, fIdx) in digitalFormFieldOptions"
@@ -309,7 +308,7 @@
                   />
                 </el-select>
               </el-form-item>
-              <el-form-item v-if="configForm.multiInstanceSourceType === 3">
+              <el-form-item v-if="configForm.multiInstanceSourceType === ChildProcessMultiInstanceSourceTypeEnum.MULTIPLE_FORM">
                 <el-select class="w-200px!" v-model="configForm.multiInstanceSource">
                   <el-option
                     v-for="(field, fIdx) in multiFormFieldOptions"
@@ -407,7 +406,7 @@ type ChildProcessFormType = {
   dateTime: string
   multiInstanceEnable: boolean
   sequential: boolean
-  completeRatio: number
+  approveRatio: number
   multiInstanceSourceType: ChildProcessMultiInstanceSourceTypeEnum
   multiInstanceSource: string
 }
@@ -427,7 +426,7 @@ const configForm = ref<ChildProcessFormType>({
   dateTime: '',
   multiInstanceEnable: false,
   sequential: false,
-  completeRatio: 100,
+  approveRatio: 100,
   multiInstanceSourceType: ChildProcessMultiInstanceSourceTypeEnum.FIXED_QUANTITY,
   multiInstanceSource: ''
 })
@@ -490,8 +489,8 @@ const saveConfig = async () => {
     if (configForm.value.multiInstanceEnable) {
       currentNode.value.childProcessSetting.multiInstanceSetting.sequential =
         configForm.value.sequential
-      currentNode.value.childProcessSetting.multiInstanceSetting.completeRatio =
-        configForm.value.completeRatio
+      currentNode.value.childProcessSetting.multiInstanceSetting.approveRatio =
+        configForm.value.approveRatio
       currentNode.value.childProcessSetting.multiInstanceSetting.sourceType =
         configForm.value.multiInstanceSourceType
       currentNode.value.childProcessSetting.multiInstanceSetting.source =
@@ -520,7 +519,7 @@ const showChildProcessNodeConfig = (node: SimpleFlowNode) => {
     configForm.value.outVariables = node.childProcessSetting.outVariables
     // 6. 发起人设置
     configForm.value.startUserType = node.childProcessSetting.startUserSetting.type
-    configForm.value.startUserEmptyType = node.childProcessSetting.startUserSetting.emptyType ?? 1
+    configForm.value.startUserEmptyType = node.childProcessSetting.startUserSetting.emptyType ?? ChildProcessStartUserEmptyTypeEnum.MAIN_PROCESS_START_USER
     configForm.value.startUserFormField = node.childProcessSetting.startUserSetting.formField ?? ''
     // 7. 超时设置
     configForm.value.timeoutEnable = node.childProcessSetting.timeoutSetting.enable ?? false
@@ -546,8 +545,8 @@ const showChildProcessNodeConfig = (node: SimpleFlowNode) => {
     if (configForm.value.multiInstanceEnable) {
       configForm.value.sequential =
         node.childProcessSetting.multiInstanceSetting.sequential ?? false
-      configForm.value.completeRatio =
-        node.childProcessSetting.multiInstanceSetting.completeRatio ?? 100
+      configForm.value.approveRatio =
+        node.childProcessSetting.multiInstanceSetting.approveRatio ?? 100
       configForm.value.multiInstanceSourceType =
         node.childProcessSetting.multiInstanceSetting.sourceType ??
         ChildProcessMultiInstanceSourceTypeEnum.FIXED_QUANTITY

+ 0 - 1
src/components/SimpleProcessDesignerV2/src/nodes-config/CopyTaskNodeConfig.vue

@@ -375,7 +375,6 @@ const showCopyTaskNodeConfig = (node: SimpleFlowNode) => {
 }
 
 /** 批量更新权限 */
-// TODO @lesan:要不要 bpmn 也加下?
 const updatePermission = (type: string) => {
   fieldsPermissionConfig.value.forEach((field) => {
     field.permission =

+ 15 - 3
src/components/bpmnProcessDesigner/package/penal/custom-config/components/UserTaskCustomConfig.vue

@@ -127,9 +127,9 @@
       <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 cursor-pointer" @click="updatePermission('READ')">只读</span>
+          <span class="setting-title-label cursor-pointer" @click="updatePermission('WRITE')">可编辑</span>
+          <span class="setting-title-label cursor-pointer" @click="updatePermission('NONE')">隐藏</span>
         </div>
       </div>
       <div class="field-setting-item" v-for="(item, index) in fieldsPermissionEl" :key="index">
@@ -486,6 +486,18 @@ function useButtonsSetting() {
   }
 }
 
+/** 批量更新权限 */
+const updatePermission = (type: string) => {
+  fieldsPermissionEl.value.forEach((field) => {
+    field.permission =
+      type === 'READ'
+        ? FieldPermissionType.READ
+        : type === 'WRITE'
+          ? FieldPermissionType.WRITE
+          : FieldPermissionType.NONE
+  })
+}
+
 const userOptions = ref<UserApi.UserVO[]>([]) // 用户列表
 onMounted(async () => {
   // 获得用户列表