Просмотр исходного кода

查看流程详情分发接口

lizhenhao 2 лет назад
Родитель
Сommit
fa8b95ba99

+ 17 - 4
src/main/java/com/jeeplus/modules/centerservice/enums/TaskAliasEnum.java

@@ -1,5 +1,8 @@
 package com.jeeplus.modules.centerservice.enums;
 
+import java.util.Arrays;
+import java.util.List;
+
 /**
  * 流程枚举
  */
@@ -30,21 +33,31 @@ public enum TaskAliasEnum {
         return cpaTaskAlias;
     }
 
-    public static TaskAliasEnum getByCcpm(String value) {
+    /**
+     * 根据ccpm流程key查询枚举
+     * @param value
+     * @return
+     */
+    public static TaskAliasEnum getByCcpmContains(String value) {
         TaskAliasEnum result = null;
         for (TaskAliasEnum s : values()) {
-            if (s.getCcpmTaskAlias() == value) {
+            List<String> stringList = Arrays.asList(s.getCcpmTaskAlias().split(","));
+            if (stringList.contains(value)) {
                 result = s;
-                break;
             }
         }
         return result;
     }
 
+    /**
+     * 根据cpa流程key查询枚举
+     * @param value
+     * @return
+     */
     public static TaskAliasEnum getByCpa(String value) {
         TaskAliasEnum result = null;
         for (TaskAliasEnum s : values()) {
-            if (s.getCpaTaskAlias() == value) {
+            if (s.getCpaTaskAlias().equals(value)) {
                 result = s;
                 break;
             }

+ 14 - 6
src/main/java/com/jeeplus/modules/centerservice/utils/ConvertServiceUtil.java

@@ -34,12 +34,16 @@ public class ConvertServiceUtil {
                 resp.add(workProjectNotify);
             } else if ("cpa".equals(workProjectNotify.getBelongProject())) {
                 if (StringUtils.isNotBlank(workProjectNotify.getType())) {
-                    if (StringUtils.isNotBlank(cpa_task) && cpa_task.contains(workProjectNotify.getType())) {
-                        TaskAliasEnum byCpaEnum = TaskAliasEnum.getByCpa(workProjectNotify.getType());
-                        if (Objects.nonNull(byCpaEnum)) {
-                            String[] split = byCpaEnum.getCcpmTaskAlias().split(",");
-                            workProjectNotify.setType(Arrays.asList(split).get(0));
-                            resp.add(workProjectNotify);
+                    if (StringUtils.isNotBlank(cpa_task)) {
+                        String[] split = cpa_task.split(",");
+                        List<String> cpaTaskList = Arrays.asList(split);
+                        if (cpaTaskList.size()>0 && cpaTaskList.contains(workProjectNotify.getType())) {
+                            TaskAliasEnum byCpaEnum = TaskAliasEnum.getByCpa(workProjectNotify.getType());
+                            if (Objects.nonNull(byCpaEnum)) {
+                                String[] splits = byCpaEnum.getCcpmTaskAlias().split(",");
+                                workProjectNotify.setType(Arrays.asList(splits).get(0));
+                                resp.add(workProjectNotify);
+                            }
                         }
                     }
                 }
@@ -236,6 +240,10 @@ public class ConvertServiceUtil {
             // 将数据分页
             page.setCount(list.size());
             int startIndex = (int) ((page.getPageNo() - 1) * page.getPageSize());
+            if (startIndex > list.size()) {
+                startIndex = 0;
+                page.setPageNo(1);
+            }
             for (int i = 0; i < page.getPageSize() ; i ++) {
                 if (startIndex == list.size() || Objects.isNull(list.get(startIndex))) {
                     break;

+ 1 - 1
src/main/java/com/jeeplus/modules/centerservice/utils/RestTemplateService.java

@@ -60,7 +60,7 @@ public class RestTemplateService {
             }
             String url = getUrl(hostAddress, path, paramMap);
             HttpHeaders httpHeaders = new HttpHeaders();
-            httpHeaders.add("token", "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE2ODI2NjU3MjYsInVzZXJuYW1lIjoi5r2Y5LitIn0.A6ph05Hy6fjGwO4NKCgBIIpbvD0woc1xplW7H9aK0FM");
+            httpHeaders.add("token", "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJleHAiOjE2ODMyNTM4NTYsInVzZXJuYW1lIjoi5r2Y5LitIn0.fWlfAzHkyscE-_09kLWvJJLVKHPT1PW64r6wFkVXqcM");
             httpHeaders.add("Accept", MediaType.ALL_VALUE);
             //        httpHeaders.add("cookie", "jeeplus.session.id=0635611b0f5a4401836262c7d23ae98e");
             httpHeaders.setContentType(new MediaType("application", "json", Charset.forName("UTF-8")));

+ 17 - 4
src/main/java/com/jeeplus/modules/centerservice/web/TranspondController.java

@@ -4,8 +4,10 @@ import com.alibaba.fastjson.JSON;
 import com.jeeplus.common.web.BaseController;
 import com.jeeplus.modules.act.entity.Act;
 import com.jeeplus.modules.act.service.ActTaskService;
+import com.jeeplus.modules.centerservice.enums.TaskAliasEnum;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workreimbursement.entity.WorkReimbursement;
+import com.jeeplus.modules.workreimbursement.service.WorkReimbursementService;
 import com.jeeplus.modules.workreimbursement.web.WorkReimbursementController;
 import org.activiti.engine.HistoryService;
 import org.activiti.engine.history.HistoricProcessInstance;
@@ -15,10 +17,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.validation.support.BindingAwareModelMap;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestMethod;
-import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.*;
 import org.springframework.web.servlet.mvc.support.RedirectAttributes;
 import org.springframework.web.servlet.mvc.support.RedirectAttributesModelMap;
 
@@ -41,6 +40,20 @@ public class TranspondController extends BaseController {
     private ActTaskService actTaskService;
     @Autowired
     private WorkReimbursementController workReimbursementController;
+    @Autowired
+    private WorkReimbursementService workReimbursementService;
+
+    @RequestMapping(value = "getById", method = RequestMethod.GET)
+    @ResponseBody
+    public Object getById(@RequestParam String id, @RequestParam String processDefKey) {
+        TaskAliasEnum taskAliasEnum = TaskAliasEnum.getByCcpmContains(processDefKey);
+        // 报销
+        if (taskAliasEnum.getCcpmTaskAlias().equals(TaskAliasEnum.REIMBURSEMENT.getCcpmTaskAlias())) {
+            WorkReimbursement workReimbursement = workReimbursementService.get(id);
+            return workReimbursement;
+        }
+        return null;
+    }
 
     /**
      * 审核分发操作