fix 81039 工作中心-流程中心-草稿:按创建时间排序无效

This commit is contained in:
lijiarao
2024-01-26 15:12:01 +08:00
parent f3c7849ea1
commit df53fedd30
4 changed files with 36 additions and 77 deletions
@@ -1,17 +1,20 @@
package com.jero.modules.activiti.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jero.common.api.vo.Result;
import com.jero.common.api.vo.ResultCommon;
import com.jero.common.aspect.annotation.AutoLog;
import com.jero.common.system.query.QueryGenerator;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.MessageUtils;
import com.jero.modules.activiti.entity.ProcessAll;
import com.jero.modules.activiti.entity.ProcessApprovalRecord;
import com.jero.modules.activiti.enums.FinishFlagEnum;
import com.jero.modules.activiti.enums.ProcessStatusEnum;
import com.jero.modules.activiti.process.common.common.DraftCommon;
import com.jero.modules.activiti.process.common.entity.ProcessDraft;
import com.jero.modules.activiti.process.common.service.ProcessDraftService;
import com.jero.modules.activiti.process.fb.service.IProcessHandleService;
@@ -19,6 +22,7 @@ import com.jero.modules.activiti.service.ProcessAllService;
import com.jero.modules.activiti.service.ProcessApprovalRecordService;
import com.jero.modules.activiti.vo.DelegateTaskParam;
import com.jero.modules.activiti.vo.ResolveTaskParam;
import com.jero.modules.laws.common.util.CurrentUserUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
@@ -30,6 +34,7 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.util.Map;
import java.util.Objects;
/**
* @author liJiaRao
@@ -118,8 +123,10 @@ public class WorkCenterController {
@ApiOperation(value = "查询流程审批记录")
@GetMapping("/getApprovalRecordList")
public Result<?> getApprovalRecordList(ProcessApprovalRecord processApprovalRecord,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
HttpServletRequest req) {
Page<ProcessApprovalRecord> page = new Page<>(1, Integer.MAX_VALUE);
Page<ProcessApprovalRecord> page = new Page<>(pageNo, pageSize);
Page<ProcessApprovalRecord> pageList;
try {
pageList = processApprovalRecordService.pageList(page, processApprovalRecord, req);
@@ -135,15 +142,28 @@ public class WorkCenterController {
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
HttpServletRequest req) {
QueryWrapper<ProcessDraft> queryWrapper = new QueryWrapper<>();
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
String userId = loginUser.getId();
queryWrapper.eq("create_by",userId);
Integer prcType = processDraft.getPrcType();
queryWrapper.eq(prcType != null, "prc_type", prcType);
LambdaQueryWrapper<ProcessDraft> queryWrapper = QueryGenerator.initQueryWrapper(processDraft,req.getParameterMap()).lambda();
queryWrapper.eq(ProcessDraft::getUserId, CurrentUserUtil.getId());
queryWrapper.isNull(ProcessDraft::getTaskId);
queryWrapper.and(a -> {
a.ne(ProcessDraft::getSaveSource, DraftCommon.INITIAL_SOURCE)
.or()
.isNull(ProcessDraft::getSaveSource);
});
//queryWrapper.eq(!Objects.isNull(processDraft.getPrcType()), ProcessDraft::getPrcType, processDraft.getPrcType());
Page<ProcessDraft> page = new Page<>(pageNo, pageSize);
IPage<ProcessDraft> sentList = processDraftService.page(page, queryWrapper);
sentList.getRecords().forEach(item -> {
String taskId = item.getTaskId();
if (StringUtils.isBlank(taskId)){
return;
}
ProcessApprovalRecord record = processApprovalRecordService.getToDoByTaskId(taskId);
if (record != null) {
item.setNodeId(record.getNodeId());
item.setNodeName(record.getTaskName());
}
});
return Result.OK(sentList);
}