Browse Source

Merge remote-tracking branch 'origin/master'

master
PoffyZhang 1 year ago
parent
commit
6f41130166
2 changed files with 14 additions and 16 deletions
  1. +1
    -0
      pmapi/src/main/java/com/ningdatech/pmapi/projectlib/manage/AnnualPlanLibManage.java
  2. +13
    -16
      pmapi/src/main/java/com/ningdatech/pmapi/todocenter/manage/TodoCenterManage.java

+ 1
- 0
pmapi/src/main/java/com/ningdatech/pmapi/projectlib/manage/AnnualPlanLibManage.java View File

@@ -373,6 +373,7 @@ public class AnnualPlanLibManage {
fileName = "丽水市" + year + "年数字化项目年度计划增补库编辑表";
}
LambdaQueryWrapper<Project> query = ProjectHelper.projectQuery(param);
query.eq(Project::getNewest,Boolean.TRUE);
query.eq(Project::getIsTemporaryAugment, isTemporaryAugment);
query.orderByDesc(Project::getAnnualPlanAddTime);
query.in(Project::getStatus, CollUtils.fieldList(ANNUAL_PLAN_LIST_STATUS, ProjectStatusEnum::getCode));


+ 13
- 16
pmapi/src/main/java/com/ningdatech/pmapi/todocenter/manage/TodoCenterManage.java View File

@@ -10,6 +10,7 @@ import java.util.stream.Stream;

import javax.servlet.http.HttpServletResponse;

import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.ObjectUtil;
import com.ningdatech.basic.exception.BizException;
import com.ningdatech.pmapi.projectlib.enumeration.*;
@@ -262,6 +263,7 @@ public class TodoCenterManage {
* @since 2023/02/01
*/
public void exportTodoList(HttpServletResponse response, ToBeProcessedExportReq param) {

// 获取登录用户ID
Long userId = LoginUserUtil.getUserId();
// 获取用户全量用户信息
@@ -269,42 +271,37 @@ public class TodoCenterManage {
// 获取登录用户浙政钉code
String employeeCode = userFullInfo.getEmployeeCode();

List<ProcessTaskVo> userTodoList = Lists.newArrayList();
Map<String, Project> projectInfoMap = MapUtil.newHashMap();
// 查出项目库项目
ProjectListReq projectListReq = new ProjectListReq();
BeanUtils.copyProperties(param, projectListReq);
List<Project> projects = projectLibManage.projectList(projectListReq);
List<ProcessTaskVo> userTodoList = Lists.newArrayList();
Map<String, Project> projectInfoMap = Maps.newHashMap();
if (CollUtil.isNotEmpty(projects)) {
Map<Long, Project> projectsMap = projects.stream().collect(Collectors.toMap(Project::getId, v -> v));
// 再查出项目关联的流程实例ID
List<Long> projectIdList = projects.stream().map(Project::getId).collect(Collectors.toList());
List<ProjectInst> projectInstList = projectInstService.list(Wrappers.lambdaQuery(ProjectInst.class)
.in(ProjectInst::getProjectId, projectIdList)
.orderByDesc(ProjectInst::getProjectId));
projectInfoMap = projectInstList.stream().collect(Collectors.toMap(ProjectInst::getInstCode, p-> projectsMap.get(p.getProjectId())));
.in(ProjectInst::getProjectId, projectIdList).orderByDesc(ProjectInst::getProjectId));
projectInfoMap = projectInstList.stream()
.collect(Collectors.toMap(ProjectInst::getInstCode, p -> projectsMap.get(p.getProjectId())));
List<String> instCodes = projectInstList.stream().map(ProjectInst::getInstCode).collect(Collectors.toList());


// 查出用户工作流
TodoCenterListReqDTO req = new TodoCenterListReqDTO();
req.setInstCodes(instCodes);
req.setProcessDefId(param.getProcessDefId());
req.setUserId(String.valueOf(userId));
req.setEmployeeCode(employeeCode);
BeanUtils.copyProperties(param,req);

//有待办节点的(不包含退回)
// 有待办节点的(不包含退回)
List<ProcessTaskVo> todoList = processTaskService.getUserTodoList(req);
//有退回待办的
// 有退回待办的
List<ProcessTaskVo> backList = processTaskService.getBackTodoList(req);
//合并 并且排序
userTodoList = Stream.concat(todoList.stream(),backList.stream())
.filter(Objects::nonNull)
.sorted(Comparator.comparing(ProcessTaskVo::getTaskCreateTime)
.reversed())
.collect(Collectors.toList());
// 合并 并且排序
userTodoList = Stream.concat(todoList.stream(), backList.stream()).filter(Objects::nonNull)
.sorted(Comparator.comparing(ProcessTaskVo::getTaskCreateTime).reversed()).collect(Collectors.toList());
}

ExcelExportWriter excelExportWriter = new ExcelExportWriter();
String fileName = null;
if (IsAppendProjectEnum.APPEND_PROJECT.getCode().equals(param.getIsTemporaryAugment())) {


Loading…
Cancel
Save