java110 hace 4 años
padre
commit
476e09fe0c

+ 1 - 1
service-common/src/main/java/com/java110/common/smo/impl/OaWorkflowUserInnerServiceSMOImpl.java

@@ -224,7 +224,7 @@ public class OaWorkflowUserInnerServiceSMOImpl extends BaseServiceSMO implements
         taskService.addComment(reqJson.getString("taskId"), processInstanceId, reqJson.getString("auditMessage"));
         Map<String, Object> variables = new HashMap<String, Object>();
         variables.put("auditCode", reqJson.getString("auditCode"));
-        variables.put("currentUserId", reqJson.getString("createUserId"));
+        variables.put("nextUserId", reqJson.getString("nextUserId"));
         variables.put("flag", "1200".equals(reqJson.getString("auditCode")) ? "false" : "true");
         variables.put("startUserId", reqJson.getString("startUserId"));
         taskService.complete(reqJson.getString("taskId"), variables);

+ 1 - 3
service-oa/src/main/java/com/java110/oa/api/OaWorkflowApi.java

@@ -431,7 +431,7 @@ public class OaWorkflowApi {
     }
 
     /**
-     * 保存流程数据
+     * 审核流程
      *
      * @param storeId 小区ID
      * @return
@@ -440,7 +440,6 @@ public class OaWorkflowApi {
      */
     @RequestMapping(value = "/auditOaWorkflow", method = RequestMethod.POST)
     public ResponseEntity<String> auditOaWorkflow(@RequestHeader(value = "store-id") String storeId,
-                                                  @RequestHeader(value = "user-id") String userId,
                                                   @RequestBody JSONObject reqJson) {
         Assert.hasKeyAndValue(reqJson, "flowId", "flowId不能为空");
         Assert.hasKeyAndValue(reqJson, "id", "id不能为空");
@@ -448,7 +447,6 @@ public class OaWorkflowApi {
         Assert.hasKeyAndValue(reqJson, "auditMessage", "审核意见不能为空");
         Assert.hasKeyAndValue(reqJson, "auditCode", "审核状态不能为空");
         reqJson.put("storeId", storeId);
-        reqJson.put("userId", userId);
         return getOaWorkflowFormBMOImpl.auditOaWorkflow(reqJson);
     }
 }

+ 21 - 4
service-oa/src/main/java/com/java110/oa/bmo/oaWorkflowForm/impl/GetOaWorkflowFormBMOImpl.java

@@ -177,6 +177,14 @@ public class GetOaWorkflowFormBMOImpl implements IGetOaWorkflowFormBMO {
         List<OaWorkflowDto> oaWorkflowDtos = oaWorkflowInnerServiceSMOImpl.queryOaWorkflows(oaWorkflowDto);
         Assert.listOnlyOne(oaWorkflowDtos, "流程不存在");
 
+        OaWorkflowFormDto oaWorkflowFormDto = new OaWorkflowFormDto();
+        oaWorkflowFormDto.setFlowId(paramIn.get("flowId").toString());
+        oaWorkflowFormDto.setStoreId(paramIn.get("storeId").toString());
+        oaWorkflowFormDto.setRow(1);
+        oaWorkflowFormDto.setPage(1);
+        List<OaWorkflowFormDto> oaWorkflowFormDtos = oaWorkflowFormInnerServiceSMOImpl.queryOaWorkflowForms(oaWorkflowFormDto);
+        Assert.listOnlyOne(oaWorkflowFormDtos, "未包含流程表单,请先设置表单");
+
         AuditUser auditUser = new AuditUser();
         auditUser.setProcessDefinitionKey(oaWorkflowDtos.get(0).getProcessDefinitionKey());
         auditUser.setFlowId(paramIn.getString("flowId"));
@@ -192,7 +200,7 @@ public class GetOaWorkflowFormBMOImpl implements IGetOaWorkflowFormBMO {
         if (count > 0) {
             datas = oaWorkflowUserInnerServiceSMOImpl.getUserTasks(auditUser);
             //刷新 表单数据
-            freshFormData(datas, paramIn);
+            freshFormData(datas, paramIn, oaWorkflowFormDtos.get(0));
         } else {
             datas = new ArrayList<>();
         }
@@ -218,6 +226,14 @@ public class GetOaWorkflowFormBMOImpl implements IGetOaWorkflowFormBMO {
         List<OaWorkflowDto> oaWorkflowDtos = oaWorkflowInnerServiceSMOImpl.queryOaWorkflows(oaWorkflowDto);
         Assert.listOnlyOne(oaWorkflowDtos, "流程不存在");
 
+        OaWorkflowFormDto oaWorkflowFormDto = new OaWorkflowFormDto();
+        oaWorkflowFormDto.setFlowId(paramIn.get("flowId").toString());
+        oaWorkflowFormDto.setStoreId(paramIn.get("storeId").toString());
+        oaWorkflowFormDto.setRow(1);
+        oaWorkflowFormDto.setPage(1);
+        List<OaWorkflowFormDto> oaWorkflowFormDtos = oaWorkflowFormInnerServiceSMOImpl.queryOaWorkflowForms(oaWorkflowFormDto);
+        Assert.listOnlyOne(oaWorkflowFormDtos, "未包含流程表单,请先设置表单");
+
         AuditUser auditUser = new AuditUser();
         auditUser.setProcessDefinitionKey(oaWorkflowDtos.get(0).getProcessDefinitionKey());
         auditUser.setFlowId(paramIn.getString("flowId"));
@@ -233,7 +249,7 @@ public class GetOaWorkflowFormBMOImpl implements IGetOaWorkflowFormBMO {
         if (count > 0) {
             datas = oaWorkflowUserInnerServiceSMOImpl.getUserHistoryTasks(auditUser);
             //刷新 表单数据
-            freshFormData(datas, paramIn);
+            freshFormData(datas, paramIn,oaWorkflowFormDtos.get(0));
         } else {
             datas = new ArrayList<>();
         }
@@ -261,7 +277,7 @@ public class GetOaWorkflowFormBMOImpl implements IGetOaWorkflowFormBMO {
         Assert.listOnlyOne(oaWorkflowFormDtos, "未包含流程表单,请先设置表单");
 
 
-        reqJson.put("createUserId", reqJson.getString("userId"));
+        reqJson.put("nextUserId", reqJson.getString("taskId"));
         boolean isLastTask = oaWorkflowUserInnerServiceSMOImpl.completeTask(reqJson);
         if (isLastTask) {
             reqJson.put("state", "1005");
@@ -276,7 +292,7 @@ public class GetOaWorkflowFormBMOImpl implements IGetOaWorkflowFormBMO {
      *
      * @param datas
      */
-    private void freshFormData(List<JSONObject> datas, JSONObject paramIn) {
+    private void freshFormData(List<JSONObject> datas, JSONObject paramIn, OaWorkflowFormDto oaWorkflowFormDto) {
         List<String> ids = new ArrayList<>();
         for (JSONObject data : datas) {
             ids.add(data.getString("id"));
@@ -288,6 +304,7 @@ public class GetOaWorkflowFormBMOImpl implements IGetOaWorkflowFormBMO {
         Map paramMap = new HashMap();
         paramMap.put("storeId", paramIn.getString("storeId"));
         paramMap.put("ids", ids.toArray(new String[ids.size()]));
+        paramMap.put("tableName", oaWorkflowFormDto.getTableName());
         paramMap.put("page", 1);
         paramMap.put("row", ids.size());
         List<Map> formDatas = oaWorkflowFormInnerServiceSMOImpl.queryOaWorkflowFormDatas(paramMap);