24282 il y a 1 an
Parent
commit
39408bf827

+ 9 - 0
hx-flow/src/main/java/com/fjhx/flow/controller/flow/FlowProcessController.java

@@ -1,5 +1,6 @@
 package com.fjhx.flow.controller.flow;
 
+import com.alibaba.fastjson.JSONObject;
 import com.baomidou.dynamic.datasource.annotation.DS;
 import com.fjhx.flow.entity.flow.dto.FlowResult;
 import com.fjhx.flow.entity.flow.dto.InitiateDto;
@@ -37,4 +38,12 @@ public class FlowProcessController {
         return flowProcessService.jump(dto);
     }
 
+    /**
+     * 查看发起节点提交数据
+     */
+    @PostMapping("/getStartData")
+    public JSONObject getStartData(@RequestBody JumpDto dto) {
+        return flowProcessService.getStartData(dto.getFlowId());
+    }
+
 }

+ 3 - 0
hx-flow/src/main/java/com/fjhx/flow/service/flow/FlowProcessService.java

@@ -1,5 +1,6 @@
 package com.fjhx.flow.service.flow;
 
+import com.alibaba.fastjson.JSONObject;
 import com.fjhx.flow.entity.flow.dto.FlowResult;
 import com.fjhx.flow.entity.flow.dto.InitiateDto;
 import com.fjhx.flow.entity.flow.dto.JumpDto;
@@ -10,4 +11,6 @@ public interface FlowProcessService {
 
     FlowResult jump(JumpDto dto);
 
+    JSONObject getStartData(Long flowId);
+
 }

+ 32 - 0
hx-flow/src/main/java/com/fjhx/flow/service/flow/impl/FlowProcessServiceImpl.java

@@ -362,6 +362,18 @@ public class FlowProcessServiceImpl implements FlowProcessService {
         return flowResult;
     }
 
+    @Override
+    public JSONObject getStartData(Long flowId) {
+        if (flowId == null) {
+            throw new ServiceException("流程实例id不能为空");
+        }
+        FlowExample flowExample = flowExampleService.getById(flowId);
+        if (flowExample == null) {
+            throw new ServiceException("没有找到流程实例");
+        }
+        return JSONObject.parseObject(flowExample.getStartData());
+    }
+
     /**
      * 执行节点方法
      *
@@ -566,6 +578,26 @@ public class FlowProcessServiceImpl implements FlowProcessService {
         }
     }
 
+    // public static void main(String[] args) {
+    //     HashMap<String, Object> map = new HashMap<>();
+    //
+    //     HashMap<Object, Object> dd = new HashMap<>();
+    //     dd.put("A", "a1");
+    //     dd.put("B", "b1");
+    //     dd.put("C", "c1");
+    //
+    //
+    //     map.put("aa", "aa");
+    //     map.put("bb", "bb");
+    //     map.put("cc", Arrays.asList("A", "B", "C", "D"));
+    //     map.put("dd", dd);
+    //
+    //     System.out.println(expressionResult(map,
+    //             "aa == 'aa' && bb == 'bb' && cc[0] == 'A' && dd.A == 'a1' "
+    //     ));
+    //
+    // }
+
     /**
      * 模板替换
      *