瀏覽代碼

reactor:流程调整

zhangchong 1 年之前
父節點
當前提交
e8a9b8491a

+ 2 - 2
src/components/LogicFlow/PropertySetting/summary.vue

@@ -80,7 +80,7 @@
           <el-option v-for="item in countersignModeList" :key="item.value" :label="item.label" :value="item.value" />
         </el-select>
       </el-form-item>
-			<el-form-item label="节点过滤策略" prop="pathPolicy" :rules="[{ required: false, message: '请选择节点过滤策略', trigger: 'change' }]">
+			<el-form-item label="节点过滤策略" prop="pathPolicy" :rules="[{ required: true, message: '请选择节点过滤策略', trigger: 'change' }]">
 				<el-select v-model="form.pathPolicy" class="w100" placeholder="请选择节点过滤策略">
 					<el-option v-for="item in pathPolicyOptions" :key="item.key" :label="item.value" :value="item.key" />
 				</el-select>
@@ -119,7 +119,7 @@ const form = reactive<Record<string, any>>({
   countersignMode: '',  // 会签
   countersignStartStepCode: '', // 会签发起节点
   countersignEndStepCode: '',  // 会签结束节点
-  pathPolicy: '', // 节点过滤策略
+  pathPolicy: null, // 节点过滤策略
   componentsOrigin:[],
   components:[], //组件配置
 });

+ 2 - 2
src/components/LogicFlow/PropertySetting/task.vue

@@ -80,7 +80,7 @@
           <el-option v-for="item in countersignModeList" :key="item.value" :label="item.label" :value="item.value" />
         </el-select>
       </el-form-item>
-      <el-form-item label="节点过滤策略" prop="pathPolicy" :rules="[{ required: false, message: '请选择节点过滤策略', trigger: 'change' }]">
+      <el-form-item label="节点过滤策略" prop="pathPolicy" :rules="[{ required: true, message: '请选择节点过滤策略', trigger: 'change' }]">
         <el-select v-model="form.pathPolicy" class="w100" placeholder="请选择节点过滤策略">
           <el-option v-for="item in pathPolicyOptions" :key="item.key" :label="item.value" :value="item.key" />
         </el-select>
@@ -118,7 +118,7 @@ const form = reactive<Record<string, any>>({
   countersignMode: '',  // 会签
   countersignStartStepCode: '', // 会签开始节点
   countersignEndStepCode: '',  // 会签结束节点
-  pathPolicy: '', // 节点过滤策略
+  pathPolicy: null, // 节点过滤策略
   componentsOrigin: [], // 组件配置
   components:[], //组件配置
 });

+ 0 - 1
src/components/LogicFlow/snakerflow/index.ts

@@ -28,7 +28,6 @@ class SnakerFlowAdapter {
       if (typeof userData.externalData === 'string') {//格式转换
         userData = resDataToLogicFlow(userData)
       }
-      console.log('userData',userData)
       userData = userData.json ? userData.json : userData;
       // 将流程扩展属性绑定给lf图模型对象
       lf.graphModel.name = userData.name

+ 17 - 1
src/components/LogicFlow/snakerflow/tool.ts

@@ -143,6 +143,7 @@ export const logicFlowJsonToSubmit = (data: any): object => {
       name: (node.text instanceof String || node.text === undefined) ? node.text : node.text.value,
       ...node.properties,
       handlerClassifies: formatArrayHandlerClassifies(node),
+      components: formatArrayComponent(node),
       code: node.id,
       nextSteps: node.nextSteps
     }
@@ -161,6 +162,20 @@ export const logicFlowJsonToSubmit = (data: any): object => {
     }
     return data;
   }
+  /**
+   * 处理数组类型
+   * @param {} node
+   */
+  const formatArrayComponent = (node: any) => {
+    const nodeName = node.type.replace('hotline:', '')
+    let data: string[] = []
+    if (nodeName === 'task' || nodeName === 'summary') {
+      if (node.properties.components && Object.prototype.toString.call(node.properties.components) === '[object String]') {
+        data = JSON.parse(node.properties.components)
+      }
+    }
+    return data;
+  }
   // /**
   //  * 递归构建节点属性
   //  * @param {} node
@@ -183,12 +198,13 @@ export const logicFlowJsonToSubmit = (data: any): object => {
     // 开始节点不存在
     return { error: '开始节点不存在' }
   }
-  if (!endNode) {
+    if (!endNode) {
     // 结束节点不存在
     return { error: '结束节点不存在' }
   }
   // recursionBuildNode(startNode);
   for (let node of data.nodes) {
+    node.nextSteps = [];
     const edges = data.edges.filter((v: any) => v.sourceNodeId === node.id);// 找到当前节点的边
     for (let edge of edges) {
       if (edge.sourceNodeId === node.id) {