Browse Source

改正mapper中循环中的值
取消了流程创建用户的复杂查询,改为在表单数据中获取

buzhanyi 2 years atrás
parent
commit
90b42c8263

+ 1 - 8
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/controller/CostInfoController.java

@@ -570,20 +570,12 @@ public class CostInfoController {
         Date queryStartTime = new Date();
 
         String username = TokenData.takeFromRequest().getLoginName();
-        //MyPageData<Task> pageData = flowApiService.getTaskListByUserName(
-        //        username, listRuntimeTaskRequestVo);
-        //List<FlowTaskVo> flowTaskVoList = flowApiService.convertToFlowTaskList(pageData.getDataList());
         //---查询到所有的任务量
         final Integer pageNum = listRuntimeTaskRequestVo.getPageNum();
         listRuntimeTaskRequestVo.setPageNum(1);
         listRuntimeTaskRequestVo.setPageSize(flowWorkOrderService.getCountByCondition(""));
         MyPageData<Task> pageDataTwo = flowApiService.getTaskListByUserName(username, listRuntimeTaskRequestVo);
-        Date changeBe = new Date();
-        System.err.println("转换为流程对象前+++++:" + changeBe.getTime());
         List<FlowTaskVo> flowTaskVoList = flowApiService.convertToFlowTaskList(pageDataTwo.getDataList());
-        Date changeAf = new Date();
-        System.err.println("转换为流程对象前+++++:" + changeAf.getTime());
-        System.err.println("转换为流程对象耗时+++++:" + (changeAf.getTime() - changeBe.getTime()));
         String queryType = "新建项目";
         //---从所有的任务里取出一个分类的任务
         //先拿到任务所在的全部流程
@@ -670,6 +662,7 @@ public class CostInfoController {
             }
             for (FlowWorkOrder order : instanceIdIn) {
                 if (order.getProcessInstanceId().equals(taskVo.getProcessInstanceId())) {
+                    taskVo.setProcessInstanceInitiator(order.getSubmitUsername());
                     taskVo.setFlowTaskStatus(order.getFlowStatus() + "");
                     break;
                 }

+ 0 - 1
application-webadmin/src/main/java/com/ankaibei/workFlow/webadmin/ankaibei/controller/ManHourController.java

@@ -31,7 +31,6 @@ public class ManHourController {
      */
     @RequestMapping("/findManHourAll")
     public ResMsg findManHourAll(@RequestBody ManHourInfoVo manHourInfoVo) {
-
         return manHourInfoApi.findManHourAll(manHourInfoVo);
     }
 

+ 1 - 1
common/common-flow/src/main/java/com/ankaibei/workFlow/common/flow/dao/mapper/FlowWorkOrderMapper.xml

@@ -74,7 +74,7 @@
         <!-- for循环, item:循环后的值, index:循环下标列式for循环的 i ,collection:参数名-->
         <!-- open="(" close=")" separator="," 就是把循环的值组成 (item1,item2,item3)的格式-->
         <foreach item="item" index="index" collection="instanceIds" open="(" close=")" separator=",">
-            #{instanceIds}
+            #{item}
         </foreach>
     </select>
 </mapper>

+ 16 - 10
common/common-flow/src/main/java/com/ankaibei/workFlow/common/flow/service/impl/FlowApiServiceImpl.java

@@ -685,9 +685,15 @@ public class FlowApiServiceImpl implements FlowApiService {
             flowTaskVo.setProcessDefinitionVersion(processDefinition.getVersion());
             ProcessInstance processInstance = instanceMap.get(task.getProcessInstanceId());
             flowTaskVo.setProcessInstanceId(processInstance.getId());
-            Object initiator = this.getProcessInstanceVariable(
-                    processInstance.getId(), FlowConstant.PROC_INSTANCE_INITIATOR_VAR);
-            flowTaskVo.setProcessInstanceInitiator(initiator.toString());
+            ////此处查询创建用户过于耗时,取消此处查询
+            //Date changeBee = new Date();
+            //System.err.println("查询创建用户前+++++:" + changeBee.getTime());
+            //Object initiator = this.getProcessInstanceVariable(
+            //        processInstance.getId(), FlowConstant.PROC_INSTANCE_INITIATOR_VAR);
+            //Date changeAff = new Date();
+            //System.err.println("查询创建用户后+++++:" + changeAff.getTime());
+            //System.err.println("查询创建用户耗时+++++:" + (changeAff.getTime() - changeBee.getTime()));
+            //flowTaskVo.setProcessInstanceInitiator(initiator.toString());
             flowTaskVo.setProcessInstanceStartTime(processInstance.getStartTime());
             flowTaskVo.setBusinessKey(processInstance.getBusinessKey());
             FlowWorkOrder flowWorkOrder = workOrderMap.get(task.getProcessInstanceId());
@@ -697,13 +703,13 @@ public class FlowApiServiceImpl implements FlowApiService {
 
             flowTaskVoList.add(flowTaskVo);
         }
-        Set<String> loginNameSet = flowTaskVoList.stream()
-                .map(FlowTaskVo::getProcessInstanceInitiator).collect(Collectors.toSet());
-        Map<String, String> userInfoMap = flowCustomExtFactory
-                .getFlowIdentityExtHelper().mapUserShowNameByLoginName(loginNameSet);
-        for (FlowTaskVo flowTaskVo : flowTaskVoList) {
-            flowTaskVo.setShowName(userInfoMap.get(flowTaskVo.getProcessInstanceInitiator()));
-        }
+        //Set<String> loginNameSet = flowTaskVoList.stream()
+        //        .map(FlowTaskVo::getProcessInstanceInitiator).collect(Collectors.toSet());
+        //Map<String, String> userInfoMap = flowCustomExtFactory
+        //        .getFlowIdentityExtHelper().mapUserShowNameByLoginName(loginNameSet);
+        //for (FlowTaskVo flowTaskVo : flowTaskVoList) {
+        //    flowTaskVo.setShowName(userInfoMap.get(flowTaskVo.getProcessInstanceInitiator()));
+        //}
         return flowTaskVoList;
     }