Browse Source

fix: 富文本

liuc 6 tháng trước cách đây
mục cha
commit
7f104b8243

+ 32 - 7
bound-link-api/sa-flow-api/src/main/java/com/cloud/sa/api/FormEngineController.java

@@ -2,9 +2,11 @@ package com.cloud.sa.api;
 
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.cloud.sa.flow.commom.common.model.StCodeMsg;
 import com.cloud.sa.flow.commom.common.model.StResult;
 import com.cloud.sa.flow.commom.domain.entity.*;
 import com.cloud.sa.flow.commom.domain.virentity.DynamicDataParam;
+import com.cloud.sa.flow.commom.domain.virentity.FormLoadDataParam;
 import com.cloud.sa.flow.commom.domain.virentity.StCommentVo;
 import com.cloud.sa.flow.engine.service.form.StFormService;
 import com.cloud.sa.flow.commom.domain.virentity.StFormModule;
@@ -12,6 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import java.util.List;
+import java.util.concurrent.CompletableFuture;
 
 /**
  * @author lc
@@ -37,15 +40,37 @@ public class FormEngineController {
     }
 
     /**
-     * @param flowCode
-     * @param taskid
      * @return
      */
-    @GetMapping("/getFormLoadTemplate")
-    public StResult getFormLoadTemplate(String flowCode, String bizObjectID, String taskid, String type, String tag) {
-        //说明是跟流程相关的
-        StFormModule stFormModule = service.getFormLoadTemplate(flowCode, bizObjectID, taskid, type, tag);
-        return StResult.success(stFormModule);
+    @PostMapping("/getFormLoadTemplate")
+    public StResult getFormLoadTemplate(@RequestBody FormLoadDataParam formLoadDataParam) {
+        CompletableFuture<StFormModule> formLoadTemplateFuture = CompletableFuture.supplyAsync(() -> {
+            return service.getFormLoadTemplate(formLoadDataParam.getFlowCode(),
+                    formLoadDataParam.getBizObjectID(),
+                    formLoadDataParam.getTaskid(),
+                    formLoadDataParam.getType(),
+                    formLoadDataParam.getTag());
+        });
+        CompletableFuture<JSONObject> dynamicDataFuture = CompletableFuture.supplyAsync(() -> {
+            DynamicDataParam dynamicDataParam = new DynamicDataParam();
+            dynamicDataParam.setStoredIds(formLoadDataParam.getStoredIds());
+            dynamicDataParam.setFlowCode(formLoadDataParam.getFlowCode());
+            dynamicDataParam.setIsMobile(formLoadDataParam.getType());
+            dynamicDataParam.setDicStoredFlag(formLoadDataParam.getDicStoredFlag());
+            return service.getDynamicData(dynamicDataParam);
+        });
+        CompletableFuture<StFormModule> combinedFuture = formLoadTemplateFuture.thenCombine(dynamicDataFuture, (stFormModule, dynamicData) -> {
+            stFormModule.setDynamicData(dynamicData);
+            return stFormModule;
+        });
+        try {
+            StFormModule result = combinedFuture.get();
+            return StResult.success(result);
+        } catch (Exception e) {
+            // 处理异常
+            e.printStackTrace();
+            return StResult.error(StCodeMsg.SERVER_EXCEPTION);
+        }
     }
 
     @PostMapping("/getDynamicData")

+ 21 - 0
bound-link-api/sa-flow-common/src/main/java/com/cloud/sa/flow/commom/domain/virentity/FormLoadDataParam.java

@@ -0,0 +1,21 @@
+package com.cloud.sa.flow.commom.domain.virentity;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author lc
+ * @date 2025/5/29 9:34
+ */
+@Data
+public class FormLoadDataParam {
+    private String flowCode;
+    private String bizObjectID;
+    private String taskid;
+    private String type;
+    private String tag;
+    private String mstsc;
+    private List<String> storedIds;
+    private String dicStoredFlag;
+}

+ 1 - 2
bound-link-api/sa-flow-common/src/main/java/com/cloud/sa/flow/commom/domain/virentity/StFormModule.java

@@ -25,6 +25,5 @@ public class StFormModule extends StFormTemplate {
     private JSONObject formTableData;
     private String flowName;
     private Integer flowVersion;
-
-
+    private JSONObject dynamicData;
 }