Compare commits
2 Commits
cb568fb746
...
5457d15793
Author | SHA1 | Date | |
---|---|---|---|
![]() |
5457d15793 | ||
![]() |
d5892c92d7 |
@ -52,7 +52,7 @@ public class BpmOAImprestController {
|
||||
|
||||
BpmOAImprestDO imprest = imprestService.getImprest(id);
|
||||
BpmOAImprestRespVO respVO = BpmOAImprestConvert.INSTANCE.convert(imprest);
|
||||
if (respVO != null) {
|
||||
if (respVO != null && imprest.getBankId() != null) {
|
||||
// 获取收款账号信息
|
||||
BankRespDTO bankRespDTO = bankApi.getBank(imprest.getBankId()).getCheckedData();
|
||||
if (bankRespDTO != null) {
|
||||
|
@ -11,8 +11,6 @@ import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import jodd.util.StringUtil;
|
||||
import org.mapstruct.ap.internal.util.Strings;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@ -62,13 +60,20 @@ public class BpmOAReimbursementController {
|
||||
return success(respVO);
|
||||
}
|
||||
|
||||
// @GetMapping("/page")
|
||||
// @PreAuthorize("@ss.hasPermission('bpm:oa-reimbursement:query')")
|
||||
// @Operation(summary = "获得请假申请分页")
|
||||
// public CommonResult<PageResult<BpmOALeaveRespVO>> getLeavePage(@Valid BpmOALeavePageReqVO pageVO) {
|
||||
// PageResult<BpmOALeaveDO> pageResult = leaveService.getLeavePage(getLoginUserId(), pageVO);
|
||||
// return success(BpmOALeaveConvert.INSTANCE.convertPage(pageResult));
|
||||
// }
|
||||
@GetMapping("/getByImprest")
|
||||
@Operation(summary = "获得指定备用金得报销申请")
|
||||
@Parameter(name = "imprestId", description = "备用金编号", required = true, example = "1024")
|
||||
public CommonResult<BpmOAReimbursementRespVO> getReimbursementByImprest(@RequestParam("imprestId") Long imprestId) {
|
||||
|
||||
BpmOAReimbursementDO reimbursement = service.getReimbursementByImprest(imprestId);
|
||||
BpmOAReimbursementRespVO respVO = service.convert(reimbursement);
|
||||
if (respVO != null && StringUtil.isNotEmpty(respVO.getProjectNo())) {
|
||||
// 设置项目名称
|
||||
ProjectDTO projectDTO = projectApi.getProject(respVO.getProjectNo()).getCheckedData();
|
||||
respVO.setProjectName(projectDTO.getName());
|
||||
}
|
||||
return success(respVO);
|
||||
}
|
||||
|
||||
@GetMapping("/getByProcessInstanceId")
|
||||
@Operation(summary = "获得报销申请")
|
||||
|
@ -122,7 +122,7 @@ public class BpmTaskController {
|
||||
@GetMapping("done-page")
|
||||
@Operation(summary = "获取 Done 已办任务分页")
|
||||
@PreAuthorize("@ss.hasPermission('bpm:task:query')")
|
||||
public CommonResult<PageResult<BpmTaskDonePageItemRespVO>> getDoneTaskPage(@Valid BpmTaskDonePageReqVO pageVO) {
|
||||
public CommonResult<PageResult<BpmTaskDonePageRespVO>> getDoneTaskPage(@Valid BpmTaskDonePageReqVO pageVO) {
|
||||
return success(taskService.getDoneTaskPage(getLoginUserId(), pageVO));
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,47 @@
|
||||
package cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - 流程任务的 Done 已完成的分页项 Response VO")
|
||||
@Data
|
||||
public class BpmTaskDonePageRespVO {
|
||||
|
||||
@Schema(description = "任务编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
|
||||
private String id;
|
||||
|
||||
@Schema(description = "任务名字", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋道")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime createTime;
|
||||
|
||||
@Schema(description = "结束时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private LocalDateTime endTime;
|
||||
|
||||
@Schema(description = "任务结果-参见 bpm_process_instance_result", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
|
||||
private Integer result;
|
||||
|
||||
@Schema(description = "审批建议", requiredMode = Schema.RequiredMode.REQUIRED, example = "不请假了!")
|
||||
private String reason;
|
||||
|
||||
@Schema(description = "流程实例编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
|
||||
private String processInstanceId;
|
||||
|
||||
@Schema(description = "流程实例名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋道")
|
||||
private String processInstanceName;
|
||||
|
||||
@Schema(description = "发起人的用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1024")
|
||||
private Long startUserId;
|
||||
|
||||
@Schema(description = "发起人的用户昵称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿")
|
||||
private String startUserNickname;
|
||||
|
||||
@Schema(description = "流程定义的编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "2048")
|
||||
private String processDefinitionId;
|
||||
|
||||
@Schema(description = "被抄送人的用户编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "100,200")
|
||||
private String ccUserIds;
|
||||
}
|
@ -3,19 +3,21 @@ package cn.iocoder.yudao.module.bpm.dal.mysql.task;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmCrmTaskPageReqVO;
|
||||
import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmTaskTodoPageReqVO;
|
||||
import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.BpmTaskTodoPageRespVO;
|
||||
import cn.iocoder.yudao.framework.mybatis.core.query.MPJLambdaWrapperX;
|
||||
import cn.iocoder.yudao.module.bpm.controller.admin.task.vo.task.*;
|
||||
import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmProcessInstanceExtDO;
|
||||
import cn.iocoder.yudao.module.bpm.dal.dataobject.task.BpmTaskExtDO;
|
||||
import cn.iocoder.yudao.module.bpm.enums.task.BpmProcessInstanceResultEnum;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.mapstruct.ap.internal.util.Strings;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
@Mapper
|
||||
public interface BpmTaskExtMapper extends BaseMapperX<BpmTaskExtDO> {
|
||||
@ -75,4 +77,31 @@ public interface BpmTaskExtMapper extends BaseMapperX<BpmTaskExtDO> {
|
||||
.eq(pageReqVO.getIsTodo(), BpmTaskExtDO::getResult, BpmProcessInstanceResultEnum.PROCESS.getResult())
|
||||
.in(!pageReqVO.getIsTodo(), BpmTaskExtDO::getResult, approveOrReject));
|
||||
}
|
||||
|
||||
default PageResult<BpmTaskDonePageRespVO> selectDonePage(Long userId, BpmTaskDonePageReqVO pageVO, List<Long> userIds) {
|
||||
|
||||
MPJLambdaWrapperX<BpmTaskExtDO> queryWrapperX = new MPJLambdaWrapperX<BpmTaskExtDO>();
|
||||
queryWrapperX.selectAs(BpmTaskExtDO::getTaskId, BpmTaskDonePageRespVO::getId);
|
||||
queryWrapperX.selectAs(BpmTaskExtDO::getName, BpmTaskDonePageRespVO::getName);
|
||||
queryWrapperX.selectAs(BpmTaskExtDO::getEndTime, BpmTaskDonePageRespVO::getEndTime);
|
||||
queryWrapperX.selectAs(BpmTaskExtDO::getReason, BpmTaskDonePageRespVO::getReason);
|
||||
queryWrapperX.selectAs(BpmTaskExtDO::getResult, BpmTaskDonePageRespVO::getResult);
|
||||
queryWrapperX.selectAs(BpmTaskExtDO::getCreateTime, BpmTaskDonePageRespVO::getCreateTime);
|
||||
queryWrapperX.selectAs(BpmTaskExtDO::getProcessInstanceId, BpmTaskDonePageRespVO::getProcessInstanceId);
|
||||
queryWrapperX.selectAs(BpmProcessInstanceExtDO::getName, BpmTaskDonePageRespVO::getProcessInstanceName);
|
||||
queryWrapperX.selectAs(BpmProcessInstanceExtDO::getStartUserId, BpmTaskDonePageRespVO::getStartUserId);
|
||||
queryWrapperX.selectAs(BpmProcessInstanceExtDO::getProcessDefinitionId, BpmTaskDonePageRespVO::getProcessDefinitionId);
|
||||
queryWrapperX.selectAs(BpmProcessInstanceExtDO::getCcids, BpmTaskDonePageRespVO::getCcUserIds);
|
||||
|
||||
queryWrapperX.innerJoin(BpmProcessInstanceExtDO.class, on -> on
|
||||
.eq(BpmTaskExtDO::getProcessInstanceId, BpmProcessInstanceExtDO::getProcessInstanceId)
|
||||
.in(Objects.nonNull(userIds), BpmProcessInstanceExtDO::getStartUserId, userIds)
|
||||
.eq(Strings.isNotEmpty(pageVO.getName()), BpmProcessInstanceExtDO::getName, pageVO.getName()));
|
||||
queryWrapperX.likeRight(BpmProcessInstanceExtDO::getProcessDefinitionId, "oa_");
|
||||
queryWrapperX.eq(BpmTaskExtDO::getAssigneeUserId, userId);
|
||||
queryWrapperX.betweenIfPresent(BpmTaskExtDO::getCreateTime, pageVO.getCreateTime());
|
||||
queryWrapperX.orderByDesc(BpmTaskExtDO::getEndTime);
|
||||
|
||||
return selectJoinPage(pageVO, BpmTaskDonePageRespVO.class, queryWrapperX);
|
||||
}
|
||||
}
|
||||
|
@ -60,4 +60,10 @@ public interface BpmOAReimbursementService {
|
||||
*/
|
||||
BpmOAReimbursementDO getByProcessInstanceId(String processInstanceId);
|
||||
|
||||
/**
|
||||
* 获得指定备用金得报销申请
|
||||
* @param imprestId 备用金编号
|
||||
* @return 报销申请
|
||||
*/
|
||||
BpmOAReimbursementDO getReimbursementByImprest(Long imprestId);
|
||||
}
|
||||
|
@ -371,4 +371,12 @@ public class BpmOAReimbursementServiceImpl extends BpmOABaseService implements B
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public BpmOAReimbursementDO getReimbursementByImprest(Long imprestId) {
|
||||
|
||||
return reimbursementMapper.selectOne(new LambdaQueryWrapper<BpmOAReimbursementDO>()
|
||||
.eq(BpmOAReimbursementDO::getImprestId, imprestId)
|
||||
.eq(BpmOAReimbursementDO::getResult, BpmProcessInstanceResultEnum.APPROVE.getResult()));
|
||||
}
|
||||
}
|
||||
|
@ -53,7 +53,7 @@ public interface BpmTaskService {
|
||||
* @param pageReqVO 分页请求
|
||||
* @return 流程任务分页
|
||||
*/
|
||||
PageResult<BpmTaskDonePageItemRespVO> getDoneTaskPage(Long userId, BpmTaskDonePageReqVO pageReqVO);
|
||||
PageResult<BpmTaskDonePageRespVO> getDoneTaskPage(Long userId, BpmTaskDonePageReqVO pageReqVO);
|
||||
|
||||
/**
|
||||
* 获得流程任务 Map
|
||||
|
@ -47,7 +47,6 @@ import org.flowable.task.api.Task;
|
||||
import org.flowable.task.api.TaskInfo;
|
||||
import org.flowable.task.api.TaskQuery;
|
||||
import org.flowable.task.api.history.HistoricTaskInstance;
|
||||
import org.flowable.task.api.history.HistoricTaskInstanceQuery;
|
||||
import org.flowable.task.service.impl.persistence.entity.TaskEntity;
|
||||
import org.flowable.task.service.impl.persistence.entity.TaskEntityImpl;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
@ -199,106 +198,131 @@ public class BpmTaskServiceImpl implements BpmTaskService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<BpmTaskDonePageItemRespVO> getDoneTaskPage(Long userId, BpmTaskDonePageReqVO pageVO) {
|
||||
//查询bpm_task_ext扩展表, 接受人是自己,不是自动审批的任务, 按任务名称分组
|
||||
LambdaQueryWrapperX<BpmTaskExtDO> queryWrapperX = new LambdaQueryWrapperX<>();
|
||||
queryWrapperX.eq(BpmTaskExtDO::getAssigneeUserId, userId);
|
||||
queryWrapperX.ne(BpmTaskExtDO::getReason, BpmConstants.AUTO_APPRAVAL);
|
||||
queryWrapperX.eq(BpmTaskExtDO::getDeleted, false);
|
||||
queryWrapperX.groupBy(BpmTaskExtDO::getName);
|
||||
queryWrapperX.select(BpmTaskExtDO::getName);
|
||||
//只能查询流程标识定义为oa开头的流程
|
||||
queryWrapperX.likeIfPresent(BpmTaskExtDO::getProcessDefinitionId,"oa_");
|
||||
List<BpmTaskExtDO> list = taskExtMapper.selectList(queryWrapperX);
|
||||
List<String> taskNames = list.stream().map(BpmTaskExtDO::getName)
|
||||
.collect(Collectors.toList());
|
||||
|
||||
// 查询已办任务
|
||||
HistoricTaskInstanceQuery taskQuery = historyService.createHistoricTaskInstanceQuery().finished() // 已完成
|
||||
.taskAssignee(String.valueOf(userId)) // 分配给自己
|
||||
.processDefinitionKeyLike("oa_%")
|
||||
.orderByHistoricTaskInstanceEndTime().desc(); // 审批时间倒序
|
||||
if (taskNames != null && !taskNames.isEmpty()) {
|
||||
/**
|
||||
* 条件是: 已被分配的任务的名称分组数据,作为条件查询
|
||||
*/
|
||||
taskQuery.taskNameIn(taskNames);
|
||||
} else {
|
||||
/**
|
||||
* taskNames是空或者没有数据,表示没有任何分配给自己的任务,且分自动审批的任务。
|
||||
* 那么就输出一个不存在的任务名称,可以让数据查询不出来
|
||||
*/
|
||||
taskQuery.taskName("//////");
|
||||
}
|
||||
|
||||
if (StrUtil.isNotBlank(pageVO.getName())) {
|
||||
// taskQuery.taskNameLike("%" + pageVO.getName() + "%");
|
||||
//流程定义的名称
|
||||
taskQuery.processDefinitionName(pageVO.getName());
|
||||
}
|
||||
LocalDateTime[] localDateTimes = pageVO.getCreateTime();
|
||||
if (localDateTimes != null) {
|
||||
if (localDateTimes[0] != null) {
|
||||
taskQuery.taskCreatedAfter(DateUtils.of(localDateTimes[0]));
|
||||
}
|
||||
if (localDateTimes[1] != null) {
|
||||
taskQuery.taskCreatedBefore(DateUtils.of(localDateTimes[1]));
|
||||
}
|
||||
}
|
||||
|
||||
// 执行查询
|
||||
List<HistoricTaskInstance> tasks = taskQuery.listPage(PageUtils.getStart(pageVO), pageVO.getPageSize());
|
||||
if (CollUtil.isEmpty(tasks)) {
|
||||
return PageResult.empty(taskQuery.count());
|
||||
}
|
||||
|
||||
// 获得 TaskExtDO Map
|
||||
List<BpmTaskExtDO> bpmTaskExtDOs =
|
||||
taskExtMapper.selectListByTaskIds(convertSet(tasks, HistoricTaskInstance::getId));
|
||||
Map<String, BpmTaskExtDO> bpmTaskExtDOMap = convertMap(bpmTaskExtDOs, BpmTaskExtDO::getTaskId);
|
||||
// // 获得 ProcessInstance Map
|
||||
// Map<String, HistoricProcessInstance> historicProcessInstanceMap =
|
||||
// processInstanceService.getHistoricProcessInstanceMap(
|
||||
// convertSet(tasks, HistoricTaskInstance::getProcessInstanceId));
|
||||
|
||||
// 获得 ProcessInstance
|
||||
List<HistoricProcessInstance> historicProcessInstances = processInstanceService.getHistoricProcessInstances(
|
||||
convertSet(tasks, HistoricTaskInstance::getProcessInstanceId));
|
||||
public PageResult<BpmTaskDonePageRespVO> getDoneTaskPage(Long userId, BpmTaskDonePageReqVO pageVO) {
|
||||
|
||||
// 判断搜索条件是否选择用户
|
||||
if (pageVO.getUserId() != null) {
|
||||
// 筛选出 发起人是pageVO.getUserId() 的流程实例
|
||||
historicProcessInstances = historicProcessInstances.stream()
|
||||
.filter(instance -> instance.getStartUserId().equals(pageVO.getUserId().toString()))
|
||||
.collect(Collectors.toList());
|
||||
|
||||
// 同步筛选掉 task记录
|
||||
List<String> processInstanceIds = convertList(historicProcessInstances, HistoricProcessInstance::getId);
|
||||
tasks = tasks.stream().filter(task -> processInstanceIds.contains(task.getProcessInstanceId())).collect(Collectors.toList());
|
||||
}else if (pageVO.getDeptId() != null) {
|
||||
List<Long> userIds = null;
|
||||
if (pageVO.getDeptId() != null) {
|
||||
|
||||
List<AdminUserRespDTO> users = adminUserApi.getUserByDeptIdAll(pageVO.getDeptId()).getCheckedData();
|
||||
List<Long> userIds = users.stream().map(AdminUserRespDTO::getId).collect(Collectors.toList());
|
||||
|
||||
historicProcessInstances = historicProcessInstances.stream()
|
||||
.filter(instance -> userIds.contains(Long.valueOf(instance.getStartUserId())))
|
||||
.collect(Collectors.toList());
|
||||
|
||||
// 同步筛选掉 task记录
|
||||
List<String> processInstanceIds = convertList(historicProcessInstances, HistoricProcessInstance::getId);
|
||||
tasks = tasks.stream().filter(task -> processInstanceIds.contains(task.getProcessInstanceId())).collect(Collectors.toList());
|
||||
userIds = users.stream().map(AdminUserRespDTO::getId).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
// 获得 ProcessInstance Map
|
||||
Map<String, HistoricProcessInstance> historicProcessInstanceMap = convertMap(historicProcessInstances, HistoricProcessInstance::getId);
|
||||
// 获取待办任务
|
||||
PageResult<BpmTaskDonePageRespVO> pageResult = taskExtMapper.selectDonePage(userId, pageVO, userIds);
|
||||
if (CollUtil.isNotEmpty(pageResult.getList())) {
|
||||
|
||||
// 获得 User Map
|
||||
Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(
|
||||
convertSet(historicProcessInstanceMap.values(), instance -> Long.valueOf(instance.getStartUserId())));
|
||||
// 拼接结果
|
||||
return new PageResult<>(
|
||||
BpmTaskConvert.INSTANCE.convertList2(tasks, bpmTaskExtDOMap, historicProcessInstanceMap, userMap),
|
||||
taskQuery.count());
|
||||
// 获取用户编号集合
|
||||
Set<Long> startUserIds = convertSet(pageResult.getList(), BpmTaskDonePageRespVO::getStartUserId);
|
||||
// 获得 User Map
|
||||
Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(startUserIds);
|
||||
|
||||
pageResult.getList().forEach(item -> {
|
||||
item.setStartUserNickname(userMap.get(item.getStartUserId()).getNickname());
|
||||
});
|
||||
}
|
||||
|
||||
return pageResult;
|
||||
|
||||
// //查询bpm_task_ext扩展表, 接受人是自己,不是自动审批的任务, 按任务名称分组
|
||||
// LambdaQueryWrapperX<BpmTaskExtDO> queryWrapperX = new LambdaQueryWrapperX<>();
|
||||
// queryWrapperX.eq(BpmTaskExtDO::getAssigneeUserId, userId);
|
||||
// queryWrapperX.ne(BpmTaskExtDO::getReason, BpmConstants.AUTO_APPRAVAL);
|
||||
// queryWrapperX.eq(BpmTaskExtDO::getDeleted, false);
|
||||
// queryWrapperX.groupBy(BpmTaskExtDO::getName);
|
||||
// queryWrapperX.select(BpmTaskExtDO::getName);
|
||||
// //只能查询流程标识定义为oa开头的流程
|
||||
// queryWrapperX.likeIfPresent(BpmTaskExtDO::getProcessDefinitionId,"oa_");
|
||||
// List<BpmTaskExtDO> list = taskExtMapper.selectList(queryWrapperX);
|
||||
// List<String> taskNames = list.stream().map(BpmTaskExtDO::getName)
|
||||
// .collect(Collectors.toList());
|
||||
//
|
||||
// // 查询已办任务
|
||||
// HistoricTaskInstanceQuery taskQuery = historyService.createHistoricTaskInstanceQuery().finished() // 已完成
|
||||
// .taskAssignee(String.valueOf(userId)) // 分配给自己
|
||||
// .processDefinitionKeyLike("oa_%")
|
||||
// .orderByHistoricTaskInstanceEndTime().desc(); // 审批时间倒序
|
||||
// if (taskNames != null && !taskNames.isEmpty()) {
|
||||
// /**
|
||||
// * 条件是: 已被分配的任务的名称分组数据,作为条件查询
|
||||
// */
|
||||
// taskQuery.taskNameIn(taskNames);
|
||||
// } else {
|
||||
// /**
|
||||
// * taskNames是空或者没有数据,表示没有任何分配给自己的任务,且分自动审批的任务。
|
||||
// * 那么就输出一个不存在的任务名称,可以让数据查询不出来
|
||||
// */
|
||||
// taskQuery.taskName("//////");
|
||||
// }
|
||||
//
|
||||
// if (StrUtil.isNotBlank(pageVO.getName())) {
|
||||
//// taskQuery.taskNameLike("%" + pageVO.getName() + "%");
|
||||
// //流程定义的名称
|
||||
// taskQuery.processDefinitionName(pageVO.getName());
|
||||
// }
|
||||
// LocalDateTime[] localDateTimes = pageVO.getCreateTime();
|
||||
// if (localDateTimes != null) {
|
||||
// if (localDateTimes[0] != null) {
|
||||
// taskQuery.taskCreatedAfter(DateUtils.of(localDateTimes[0]));
|
||||
// }
|
||||
// if (localDateTimes[1] != null) {
|
||||
// taskQuery.taskCreatedBefore(DateUtils.of(localDateTimes[1]));
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// // 执行查询
|
||||
// List<HistoricTaskInstance> tasks = taskQuery.listPage(PageUtils.getStart(pageVO), pageVO.getPageSize());
|
||||
// if (CollUtil.isEmpty(tasks)) {
|
||||
// return PageResult.empty(taskQuery.count());
|
||||
// }
|
||||
//
|
||||
// // 获得 TaskExtDO Map
|
||||
// List<BpmTaskExtDO> bpmTaskExtDOs =
|
||||
// taskExtMapper.selectListByTaskIds(convertSet(tasks, HistoricTaskInstance::getId));
|
||||
// Map<String, BpmTaskExtDO> bpmTaskExtDOMap = convertMap(bpmTaskExtDOs, BpmTaskExtDO::getTaskId);
|
||||
//// // 获得 ProcessInstance Map
|
||||
//// Map<String, HistoricProcessInstance> historicProcessInstanceMap =
|
||||
//// processInstanceService.getHistoricProcessInstanceMap(
|
||||
//// convertSet(tasks, HistoricTaskInstance::getProcessInstanceId));
|
||||
//
|
||||
// // 获得 ProcessInstance,
|
||||
// List<HistoricProcessInstance> historicProcessInstances = processInstanceService.getHistoricProcessInstances(
|
||||
// convertSet(tasks, HistoricTaskInstance::getProcessInstanceId));
|
||||
//
|
||||
// // 判断搜索条件是否选择用户
|
||||
// if (pageVO.getUserId() != null) {
|
||||
// // 筛选出 发起人是pageVO.getUserId() 的流程实例
|
||||
// historicProcessInstances = historicProcessInstances.stream()
|
||||
// .filter(instance -> instance.getStartUserId().equals(pageVO.getUserId().toString()))
|
||||
// .collect(Collectors.toList());
|
||||
//
|
||||
// // 同步筛选掉 task记录
|
||||
// List<String> processInstanceIds = convertList(historicProcessInstances, HistoricProcessInstance::getId);
|
||||
// tasks = tasks.stream().filter(task -> processInstanceIds.contains(task.getProcessInstanceId())).collect(Collectors.toList());
|
||||
// }else if (pageVO.getDeptId() != null) {
|
||||
//
|
||||
// List<AdminUserRespDTO> users = adminUserApi.getUserByDeptIdAll(pageVO.getDeptId()).getCheckedData();
|
||||
// List<Long> userIds = users.stream().map(AdminUserRespDTO::getId).collect(Collectors.toList());
|
||||
//
|
||||
// historicProcessInstances = historicProcessInstances.stream()
|
||||
// .filter(instance -> userIds.contains(Long.valueOf(instance.getStartUserId())))
|
||||
// .collect(Collectors.toList());
|
||||
//
|
||||
// // 同步筛选掉 task记录
|
||||
// List<String> processInstanceIds = convertList(historicProcessInstances, HistoricProcessInstance::getId);
|
||||
// tasks = tasks.stream().filter(task -> processInstanceIds.contains(task.getProcessInstanceId())).collect(Collectors.toList());
|
||||
// }
|
||||
//
|
||||
// // 获得 ProcessInstance Map
|
||||
// Map<String, HistoricProcessInstance> historicProcessInstanceMap = convertMap(historicProcessInstances, HistoricProcessInstance::getId);
|
||||
//
|
||||
// // 获得 User Map
|
||||
// Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(
|
||||
// convertSet(historicProcessInstanceMap.values(), instance -> Long.valueOf(instance.getStartUserId())));
|
||||
// // 拼接结果
|
||||
// return new PageResult<>(
|
||||
// BpmTaskConvert.INSTANCE.convertList2(tasks, bpmTaskExtDOMap, historicProcessInstanceMap, userMap),
|
||||
// taskQuery.count());
|
||||
|
||||
// // 获得 TaskExtDO Map
|
||||
// List<BpmTaskExtDO> bpmTaskExtDOsTemp =
|
||||
|
Loading…
Reference in New Issue
Block a user