| | |
| | | import com.ruoyi.system.bo.*; |
| | | import com.ruoyi.system.mapper.StateProcessTemplateMapper; |
| | | import com.ruoyi.system.mapper.TContractMapper; |
| | | import com.ruoyi.system.mapper.TContractRentTypeMapper; |
| | | import com.ruoyi.system.model.*; |
| | | import com.ruoyi.system.service.*; |
| | | import com.ruoyi.system.vo.ProcessDetailVO; |
| | |
| | | private ISysUserService sysUserService; |
| | | @Autowired |
| | | private TContractMapper contractMapper; |
| | | @Autowired |
| | | private TContractRentTypeMapper contractRentTypeMapper; |
| | | |
| | | /** |
| | | * 流程模版分页 |
| | |
| | | if (processTaskListBO.getSortBy() == 2) { |
| | | stateTaskQuery.orderByDesc(BaseModel::getCreateTime); |
| | | } |
| | | // 查询合同信息 |
| | | List<TContract> tContracts = contractMapper.selectList(Wrappers.<TContract>lambdaQuery() |
| | | .in(TContract::getStatus, 2,3,4,9)); |
| | | List<String> contractIds = tContracts.stream().map(TContract::getId).collect(Collectors.toList()); |
| | | if(CollectionUtils.isEmpty(contractIds)){ |
| | | return new PageInfo<>(); |
| | | } |
| | | stateTaskQuery.in(StateTaskCenter::getProjectId, contractIds); |
| | | stateTaskQuery.in(StateTaskCenter::getFlowId, instanceIds); |
| | | PageInfo pageInfo = new PageInfo(processTaskListBO.getPageNum(), processTaskListBO.getPageSize()); |
| | | PageInfo<StateTaskCenter> taskCenters = stateTaskCenterService.page(pageInfo,stateTaskQuery); |
| | |
| | | Map<Long, List<FlwHisTask>> flwHisTaskMap = flwHisTaskList.stream().collect(Collectors.groupingBy(FlwHisTask::getInstanceId)); |
| | | //查询原因 |
| | | List<String> taskIds = flwHisTaskList.stream().map(FlowEntity::getId).map(String::valueOf).collect(Collectors.toList()); |
| | | List<StateProcessInstanceAction> actions = stateProcessInstanceActionService.list( |
| | | Wrappers.<StateProcessInstanceAction>lambdaQuery().in(StateProcessInstanceAction::getNodeId, taskIds)); |
| | | Map<String, StateProcessInstanceAction> actionMap = actions.stream().collect(Collectors.toMap(StateProcessInstanceAction::getNodeId, Function.identity())); |
| | | Map<String, StateProcessInstanceAction> actionMap = new HashMap<>(); |
| | | if(!CollectionUtils.isEmpty(taskIds)){ |
| | | List<StateProcessInstanceAction> actions = stateProcessInstanceActionService.list( |
| | | Wrappers.<StateProcessInstanceAction>lambdaQuery().in(StateProcessInstanceAction::getNodeId, taskIds)); |
| | | actionMap = actions.stream().collect(Collectors.toMap(StateProcessInstanceAction::getNodeId, Function.identity())); |
| | | } |
| | | |
| | | List<String> updateUserId = processTaskListVOS.getRecords().stream().map(ProcessTaskListVO::getCreateBy).collect(Collectors.toList()); |
| | | Map<Long, SysUser> sysUserMap; |
| | |
| | | } |
| | | } |
| | | } |
| | | StateProcessInstanceAction action = actionMap.get(processTaskListVO.getTaskId()); |
| | | if (ObjectUtil.isNotEmpty(action)) { |
| | | processTaskListVO.setReason(action.getRemark()); |
| | | if(!CollectionUtils.isEmpty(actionMap)){ |
| | | StateProcessInstanceAction action = actionMap.get(processTaskListVO.getTaskId()); |
| | | if (ObjectUtil.isNotEmpty(action)) { |
| | | processTaskListVO.setReason(action.getRemark()); |
| | | } |
| | | } |
| | | SysUser sysUser = sysUserMap.get(processTaskListVO.getCreateBy()); |
| | | if (Objects.nonNull(sysUser)) { |
| | |
| | | if (processTaskListBO.getSortBy() == 2) { |
| | | stateTaskQuery.orderByDesc(BaseModel::getCreateTime); |
| | | } |
| | | // 查询合同信息 |
| | | List<TContract> tContracts = contractMapper.selectList(Wrappers.<TContract>lambdaQuery() |
| | | .in(TContract::getStatus, 2,3,4,9)); |
| | | List<String> contractIds = tContracts.stream().map(TContract::getId).collect(Collectors.toList()); |
| | | if(CollectionUtils.isEmpty(contractIds)){ |
| | | return new PageInfo<>(); |
| | | } |
| | | stateTaskQuery.in(StateTaskCenter::getProjectId, contractIds); |
| | | stateTaskQuery.in(StateTaskCenter::getFlowId, instanceId); |
| | | PageInfo pageInfo = new PageInfo<>(processTaskListBO.getPageNum(), processTaskListBO.getPageSize()); |
| | | PageInfo<StateTaskCenter> taskCenters = stateTaskCenterService.page(pageInfo,stateTaskQuery); |
| | |
| | | Long taskId = Long.valueOf(processRefuseBO.getTaskId()); |
| | | FlwTask flwTask = flwTaskMapper.selectById(taskId); |
| | | // 直接拒绝当前流程 |
| | | try{ |
| | | // flowLongEngine.runtimeService().reject(flwTask.getInstanceId(), currentFlowCreator()); |
| | | }catch (Exception e){ |
| | | System.out.println("拒绝流程"); |
| | | } |
| | | flowLongEngine.runtimeService().reject(flwTask.getInstanceId(), currentFlowCreator()); |
| | | flwTaskMapper.deleteById(taskId); |
| | | // 动作执行记录 |
| | | StateProcessInstanceAction record = new StateProcessInstanceAction(); |
| | | record.setId(IdUtils.simpleUUID()); |
| | |
| | | } |
| | | BeanUtil.copyProperties(contract, processDetailVO); |
| | | |
| | | // 查询递增递减 |
| | | TContractRentType tContractRentType = contractRentTypeMapper.selectOne(Wrappers.lambdaQuery(TContractRentType.class) |
| | | .eq(TContractRentType::getContractId, contract.getId()) |
| | | .last("LIMIT 1")); |
| | | processDetailVO.setContractRentType(tContractRentType); |
| | | |
| | | // 查询历史任务 |
| | | List<FlwHisTask> flwHisTasks = flwHisTaskMapper.selectList(Wrappers.<FlwHisTask>lambdaQuery().eq(FlwHisTask::getInstanceId, instanceId)); |
| | | processDetailVO.setInstanceId(String.valueOf(instanceId)); |
| | |
| | | if (processTaskListBO.getSortBy() == 2) { |
| | | stateTaskQuery.orderByDesc(FlwHisTask::getCreateTime); |
| | | } |
| | | List<TContract> tContracts = contractMapper.selectList(Wrappers.<TContract>lambdaQuery() |
| | | .in(TContract::getStatus, 2,3,4,9)); |
| | | List<String> contractIds = tContracts.stream().map(TContract::getId).collect(Collectors.toList()); |
| | | if(CollectionUtils.isEmpty(contractIds)){ |
| | | return new PageInfo<>(); |
| | | } |
| | | List<StateTaskCenter> list = stateTaskCenterService.list(Wrappers.<StateTaskCenter>lambdaQuery().in(StateTaskCenter::getProjectId, contractIds)); |
| | | if(!CollectionUtils.isEmpty(list)){ |
| | | List<String> flowIds = list.stream().map(StateTaskCenter::getFlowId).collect(Collectors.toList()); |
| | | stateTaskQuery.in(FlwHisTask::getInstanceId, flowIds); |
| | | } |
| | | stateTaskQuery.eq(FlwHisTask::getParentTaskId, 0L); |
| | | stateTaskQuery.like(FlwHisTask::getCreateId, userId); |
| | | PageInfo pageInfo = new PageInfo<>(processTaskListBO.getPageNum(), processTaskListBO.getPageSize()); |