From 4b1f2e53335339a6e6ba85a5091045e29b68b1e0 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期四, 02 十二月 2021 18:24:45 +0800
Subject: [PATCH] 优化代码
---
service-oa/src/main/java/com/java110/oa/bmo/oaWorkflowForm/impl/GetOaWorkflowFormBMOImpl.java | 65 +++++++++++++++++++++++++++++++-
1 files changed, 62 insertions(+), 3 deletions(-)
diff --git a/service-oa/src/main/java/com/java110/oa/bmo/oaWorkflowForm/impl/GetOaWorkflowFormBMOImpl.java b/service-oa/src/main/java/com/java110/oa/bmo/oaWorkflowForm/impl/GetOaWorkflowFormBMOImpl.java
index a5a29e4..b1c651c 100644
--- a/service-oa/src/main/java/com/java110/oa/bmo/oaWorkflowForm/impl/GetOaWorkflowFormBMOImpl.java
+++ b/service-oa/src/main/java/com/java110/oa/bmo/oaWorkflowForm/impl/GetOaWorkflowFormBMOImpl.java
@@ -6,13 +6,17 @@
import com.java110.dto.oaWorkflowData.OaWorkflowDataDto;
import com.java110.dto.oaWorkflowForm.OaWorkflowFormDto;
import com.java110.dto.user.UserDto;
+import com.java110.dto.workflowDataFile.WorkflowDataFileDto;
import com.java110.entity.audit.AuditUser;
import com.java110.intf.common.IOaWorkflowUserInnerServiceSMO;
import com.java110.intf.oa.IOaWorkflowDataInnerServiceSMO;
import com.java110.intf.oa.IOaWorkflowFormInnerServiceSMO;
import com.java110.intf.oa.IOaWorkflowInnerServiceSMO;
+import com.java110.intf.oa.IWorkflowDataFileV1InnerServiceSMO;
import com.java110.intf.user.IUserInnerServiceSMO;
import com.java110.oa.bmo.oaWorkflowForm.IGetOaWorkflowFormBMO;
+import com.java110.po.workflowDataFile.WorkflowDataFilePo;
+import com.java110.utils.exception.CmdException;
import com.java110.utils.util.Assert;
import com.java110.utils.util.BeanConvertUtil;
import com.java110.utils.util.DateUtil;
@@ -45,6 +49,9 @@
@Autowired
private IOaWorkflowDataInnerServiceSMO oaWorkflowDataInnerServiceSMOImpl;
+
+ @Autowired
+ private IWorkflowDataFileV1InnerServiceSMO workflowDataFileV1InnerServiceSMOImpl;
/**
@@ -103,15 +110,36 @@
List<Map> datas = null;
if (count > 0) {
datas = oaWorkflowFormInnerServiceSMOImpl.queryOaWorkflowFormDatas(paramIn);
+
} else {
datas = new ArrayList<>();
}
+
+ //鏌ヨfile
+ queryFilesFromData(datas);
ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (int) paramIn.get("row")), count, datas);
ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
return responseEntity;
+ }
+
+ private void queryFilesFromData(List<Map> datas) {
+ if (datas.size() != 1) {
+ return;
+ }
+
+ WorkflowDataFileDto workflowDataFileDto = new WorkflowDataFileDto();
+ workflowDataFileDto.setId(datas.get(0).get("id").toString());
+ workflowDataFileDto.setStoreId(datas.get(0).get("store_id").toString());
+ List<WorkflowDataFileDto> workflowDataFileDtos = workflowDataFileV1InnerServiceSMOImpl.queryWorkflowDataFiles(workflowDataFileDto);
+
+ if (workflowDataFileDtos == null || workflowDataFileDtos.size() < 1) {
+ return;
+ }
+
+ datas.get(0).put("files",workflowDataFileDtos);
}
/**
@@ -164,10 +192,37 @@
throw new IllegalArgumentException("淇濆瓨澶辫触");
}
+ //鍒ゆ柇鏄惁鏈夐檮浠�
+ saveOaWorkflowFile(reqJson);
+
reqJson.put("processDefinitionKey", oaWorkflowDtos.get(0).getProcessDefinitionKey());
oaWorkflowUserInnerServiceSMOImpl.startProcess(reqJson);
return ResultVo.success();
+ }
+
+ private void saveOaWorkflowFile(JSONObject reqJson) {
+ if (!reqJson.containsKey("fileName")) {
+ return;
+ }
+
+ String fileName = reqJson.getString("fileName");
+ if (StringUtil.isEmpty(fileName)) {
+ return;
+ }
+
+ WorkflowDataFilePo workflowDataFilePo = new WorkflowDataFilePo();
+ workflowDataFilePo.setCreateUserId(reqJson.getString("userId"));
+ workflowDataFilePo.setCreateUserName(reqJson.getString("createUserName"));
+ workflowDataFilePo.setFileId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_file_id));
+ workflowDataFilePo.setFileName(reqJson.getString("fileName"));
+ workflowDataFilePo.setId(reqJson.getString("id"));
+ workflowDataFilePo.setRealFileName(reqJson.getString("realFileName"));
+ workflowDataFilePo.setStoreId(reqJson.getString("storeId"));
+ int flag = workflowDataFileV1InnerServiceSMOImpl.saveWorkflowDataFile(workflowDataFilePo);
+ if (flag < 1) {
+ throw new CmdException("淇濆瓨闄勪欢澶辫触");
+ }
}
/**
@@ -300,7 +355,8 @@
reqJson.put("startUserId", formDatas.get(0).get("create_user_id"));
//涓氬姟鍔炵悊
- if ("1100".equals(reqJson.getString("auditCode"))) { //鍔炵悊鎿嶄綔
+ if ("1100".equals(reqJson.getString("auditCode"))
+ || "1500".equals(reqJson.getString("auditCode"))) { //鍔炵悊鎿嶄綔
reqJson.put("nextUserId", reqJson.getString("staffId"));
boolean isLastTask = oaWorkflowUserInnerServiceSMOImpl.completeTask(reqJson);
if (isLastTask) {
@@ -329,6 +385,9 @@
}
+
+
+
return ResultVo.success();
}
@@ -346,12 +405,12 @@
Map paramMap = new HashMap();
paramMap.put("storeId", reqJson.getString("storeId"));
paramMap.put("id", reqJson.getString("id"));
- paramMap.put("tableName", oaWorkflowFormDto.getTableName());
+ paramMap.put("tableName", oaWorkflowFormDtos.get(0).getTableName());
paramMap.put("page", 1);
paramMap.put("row", 1);
List<Map> formDatas = oaWorkflowFormInnerServiceSMOImpl.queryOaWorkflowFormDatas(paramMap);
Assert.listOnlyOne(formDatas, "琛ㄥ崟鏁版嵁涓嶅瓨鍦�");
- reqJson.put("startUserId",formDatas.get(0).get("create_user_id"));
+ reqJson.put("startUserId", formDatas.get(0).get("create_user_id"));
List<JSONObject> tasks = oaWorkflowUserInnerServiceSMOImpl.nextAllNodeTaskList(reqJson);
return ResultVo.createResponseEntity(tasks);
}
--
Gitblit v1.8.0