|
|
@@ -1,6 +1,7 @@ |
|
|
|
package com.ningdatech.pmapi.todocenter.manage; |
|
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil; |
|
|
|
import cn.hutool.core.date.StopWatch; |
|
|
|
import cn.hutool.core.util.StrUtil; |
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
|
|
|
import com.google.common.collect.Sets; |
|
|
@@ -95,22 +96,34 @@ public class TodoCenterManage { |
|
|
|
Long userId = LoginUserUtil.getUserId(); |
|
|
|
//因为要解耦 不能把项目和工作流一起查 |
|
|
|
//1.先查出用户工作流 |
|
|
|
StopWatch stopWatch = new StopWatch(); |
|
|
|
stopWatch.start(); |
|
|
|
List<ProcessTaskVo> userTodoList = processTaskService.getUserTodoList(param.getProcessDefId(),String.valueOf(userId)); |
|
|
|
if(CollUtil.isEmpty(userTodoList)){ |
|
|
|
return PageVo.empty(); |
|
|
|
} |
|
|
|
List<String> instCodes = userTodoList.stream().map(ProcessTaskVo::getInstanceId).collect(Collectors.toList()); |
|
|
|
|
|
|
|
stopWatch.stop(); |
|
|
|
log.info("查询 工作流个人列表 所消耗时间 :{}s" + stopWatch.getTotalTimeSeconds()); |
|
|
|
|
|
|
|
StopWatch stopWatch2 = new StopWatch(); |
|
|
|
stopWatch2.start(); |
|
|
|
Map<String, ProcessTaskVo> taskVoMap = userTodoList.stream().collect(Collectors.toMap(ProcessTaskVo::getInstanceId, v -> v)); |
|
|
|
//2.再分页查询项目信息 |
|
|
|
ProjectListReq projectListReq = new ProjectListReq(); |
|
|
|
projectListReq.setInstCodes(instCodes); |
|
|
|
BeanUtils.copyProperties(param,projectListReq); |
|
|
|
PageVo<ProjectLibListItemVO> projectPage = projectLibManage.projectLibList(projectListReq); |
|
|
|
stopWatch2.stop(); |
|
|
|
log.info("查询 项目库列表 所消耗时间 :{}s" + stopWatch2.getTotalTimeSeconds()); |
|
|
|
|
|
|
|
if(0L == projectPage.getTotal()){ |
|
|
|
return PageVo.empty(); |
|
|
|
} |
|
|
|
|
|
|
|
StopWatch stopWatch3 = new StopWatch(); |
|
|
|
stopWatch3.start(); |
|
|
|
List<ResToBeProcessedVO> resVos = projectPage.getRecords().stream().map(d -> { |
|
|
|
ResToBeProcessedVO res = new ResToBeProcessedVO(); |
|
|
|
BeanUtils.copyProperties(d, res); |
|
|
@@ -121,6 +134,8 @@ public class TodoCenterManage { |
|
|
|
res.setProcessLaunchTime(d.getCreateOn()); |
|
|
|
return res; |
|
|
|
}).collect(Collectors.toList()); |
|
|
|
stopWatch3.stop(); |
|
|
|
log.info("查询 转换实体 所消耗时间 :{}s" + stopWatch3.getTotalTimeSeconds()); |
|
|
|
return PageVo.of(resVos, projectPage.getTotal()); |
|
|
|
} |
|
|
|
|
|
|
|