Bladeren bron

fix: 增加保存流程接口

liuc 6 maanden geleden
bovenliggende
commit
bf1ae85d2f

+ 8 - 8
bound-link-api/sa-flow-api/src/main/java/com/cloud/sa/api/AppEngineController.java

@@ -2,19 +2,19 @@ package com.cloud.sa.api;
 
 import com.alibaba.fastjson.JSONObject;
 import com.cloud.sa.flow.commom.aspect.EventProgram;
+import com.cloud.sa.flow.commom.domain.UserTaskQueryForm;
 import com.cloud.sa.flow.commom.common.model.StCodeMsg;
 import com.cloud.sa.flow.commom.common.model.StResult;
 import com.cloud.sa.flow.commom.common.utils.StString;
-import com.cloud.sa.flow.commom.domain.UserTaskQueryForm;
+import com.cloud.sa.flow.commom.domain.virentity.ViewFormTop;
+import com.cloud.sa.flow.commom.service.setting.StSettingService;
+import com.cloud.sa.flow.engine.service.StFlowService;
+import com.cloud.sa.flow.commom.service.flow.StTaskItemService;
 import com.cloud.sa.flow.commom.domain.entity.StFlowMenu;
 import com.cloud.sa.flow.commom.domain.entity.StFlowTemplate;
 import com.cloud.sa.flow.commom.domain.entity.StTaskitem;
 import com.cloud.sa.flow.commom.domain.virentity.FlowEnteredParam;
-import com.cloud.sa.flow.commom.domain.virentity.ViewFormTop;
 import com.cloud.sa.flow.commom.service.StMenuService;
-import com.cloud.sa.flow.commom.service.flow.StTaskItemService;
-import com.cloud.sa.flow.commom.service.setting.StSettingService;
-import com.cloud.sa.flow.engine.service.StFlowService;
 import com.wx.blink.base.common.annoation.NoNeedLogin;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpHeaders;
@@ -64,7 +64,7 @@ public class AppEngineController {
         StTaskitem taskitem = null;
         if (flowEnteredParam.getIsBatches() == false && flowEnteredParam.getTableData() != null && flowEnteredParam.getTableData().length() > 0) {
             //如果不是批量的审批通过,则先走一下保存
-            taskitem = flowService.Save(flowEnteredParam, false);
+            taskitem = flowService.Save(flowEnteredParam);
             flowEnteredParam.setTaskid(taskitem.getObjectid());
         }
         try {
@@ -84,7 +84,7 @@ public class AppEngineController {
         StTaskitem taskitem = null;
         if (flowEnteredParam.getIsBatches() == false && flowEnteredParam.getTableData() != null && flowEnteredParam.getTableData().length() > 0) {
             //如果不是批量的审批通过,则先走一下保存
-            taskitem = flowService.Save(flowEnteredParam, false);
+            taskitem = flowService.Save(flowEnteredParam);
             flowEnteredParam.setTaskid(taskitem.getObjectid());
         }
         try {
@@ -110,7 +110,7 @@ public class AppEngineController {
      */
     @PostMapping("/instance/save")
     public StResult SaveInstance(@Validated @RequestBody FlowEnteredParam flowEnteredParam) {
-        StTaskitem taskitem = flowService.Save(flowEnteredParam, true);
+        StTaskitem taskitem = flowService.Save(flowEnteredParam);
         return StResult.success(taskitem);
     }
 

+ 14 - 1
bound-link-api/sa-flow-api/src/main/java/com/cloud/sa/service/FlowUniversalService.java

@@ -8,9 +8,9 @@ import com.cloud.sa.flow.commom.domain.entity.StTaskitem;
 import com.cloud.sa.flow.commom.domain.virentity.ActivityNodeBase;
 import com.cloud.sa.flow.commom.domain.virentity.FlowEnteredParam;
 import com.cloud.sa.flow.commom.domain.virentity.ParamAdJustActivate;
+import com.cloud.sa.flow.engine.service.form.StFormService;
 import com.cloud.sa.flow.engine.service.StFlowService;
 import com.cloud.sa.flow.engine.service.StOperationService;
-import com.cloud.sa.flow.engine.service.form.StFormService;
 import com.cloud.sa.flow.commom.common.Request.StHttpRequest;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -29,6 +29,7 @@ public class FlowUniversalService {
     private final StFormService formService;
     @Value("${server.port}")
     private String port;
+
     @Autowired
     public FlowUniversalService(StFlowService flowService, StOperationService stOperationService, StFormService formService) {
         this.flowService = flowService;
@@ -49,6 +50,8 @@ public class FlowUniversalService {
     }
 
     /**
+     * 自动提交
+     *
      * @param flowCode
      * @param flowVersion
      * @param bizObjectid
@@ -151,6 +154,16 @@ public class FlowUniversalService {
         return true;
     }
 
+    /**
+     * 流程数据保存
+     * @param bizObjectId
+     * @param tableData
+     */
+    public void saveFlowData(String bizObjectId, JSONObject tableData) {
+        flowService.Save(FlowEnteredParam.buildSaveParam(bizObjectId, tableData));
+    }
+
+
     /**
      * 修改流程主表数据后,清空主表缓存
      *

BIN
bound-link-api/sa-flow-api/src/main/resources/lib/sa-flow-engine-3.0.0.jar


+ 1 - 1
bound-link-api/sa-flow-common/src/main/java/com/cloud/sa/flow/commom/aspect/EventProgram.java

@@ -6,5 +6,5 @@ import java.lang.annotation.*;
 @Retention(RetentionPolicy.RUNTIME)
 @Documented
 @Inherited
-public @interface EventProgram {
+public @interface EventProgram  {
 }

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

@@ -1,11 +1,23 @@
 package com.cloud.sa.flow.commom.domain.virentity;
 
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+
 /**
  * @author lc
  * @date 2024/6/5 13:26
  */
 public class FlowEnteredParam {
-    private Boolean isBatches = false;
+    public static FlowEnteredParam buildSaveParam(String bizObjectid, JSONObject jsonTableData) {
+        FlowEnteredParam param = new FlowEnteredParam();
+        param.setBizObjectid(bizObjectid);
+        param.setTableData(JSON.toJSONString(jsonTableData));
+        param.setCodeModify(true);
+        return param;
+    }
+
+    private Boolean isCodeModify = false;//代码修改保存
+    private Boolean isBatches = false;//批量
     private String flowCode;
     private Integer flowVersion;
     private String bizObjectid;
@@ -97,4 +109,12 @@ public class FlowEnteredParam {
     public void setTargetUserCode(String targetUserCode) {
         this.targetUserCode = targetUserCode;
     }
+
+    public Boolean getCodeModify() {
+        return isCodeModify;
+    }
+
+    public void setCodeModify(Boolean codeModify) {
+        isCodeModify = codeModify;
+    }
 }