From 225fa712204ccb8953998a0e4cc64ad828399dc3 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期二, 22 二月 2022 15:52:16 +0800
Subject: [PATCH] 加入微信通知功能

---
 service-oa/src/main/java/com/java110/oa/bmo/oaWorkflowForm/impl/GetOaWorkflowFormBMOImpl.java |   66 +++++++++++++++++++++++++++++++++
 1 files changed, 66 insertions(+), 0 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 ed5e4cb..3e83037 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
@@ -1,18 +1,24 @@
 package com.java110.oa.bmo.oaWorkflowForm.impl;
 
 import com.alibaba.fastjson.JSONObject;
+import com.java110.core.annotation.Java110Transactional;
 import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.dto.oaWorkflow.OaWorkflowDto;
 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.cache.MappingCache;
+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 +51,9 @@
 
     @Autowired
     private IOaWorkflowDataInnerServiceSMO oaWorkflowDataInnerServiceSMOImpl;
+
+    @Autowired
+    private IWorkflowDataFileV1InnerServiceSMO workflowDataFileV1InnerServiceSMOImpl;
 
 
     /**
@@ -103,15 +112,41 @@
         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;
+        }
+        String imgUrl = MappingCache.getValue("IMG_PATH");
+        imgUrl += (!StringUtil.isEmpty(imgUrl) && imgUrl.endsWith("/") ? "" : "/");
+        for(WorkflowDataFileDto tmpWorkflowDataFileDto: workflowDataFileDtos){
+            tmpWorkflowDataFileDto.setRealFileName(imgUrl + tmpWorkflowDataFileDto.getRealFileName());
+        }
+
+        datas.get(0).put("files",workflowDataFileDtos);
     }
 
     /**
@@ -164,10 +199,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("淇濆瓨闄勪欢澶辫触");
+        }
     }
 
     /**
@@ -269,6 +331,7 @@
     }
 
     @Override
+    @Java110Transactional
     public ResponseEntity<String> auditOaWorkflow(JSONObject reqJson) {
         //鏌ヨ娴佺▼鏄惁瀛樺湪
         OaWorkflowDto oaWorkflowDto = new OaWorkflowDto();
@@ -330,6 +393,9 @@
         }
 
 
+
+
+
         return ResultVo.success();
     }
 

--
Gitblit v1.8.0