fix(sj_map_reduce): 修复获取任务项列表接口
This commit is contained in:
		
							parent
							
								
									08639aeb4b
								
							
						
					
					
						commit
						d09009f342
					
				@ -1,5 +1,6 @@
 | 
				
			|||||||
package com.aizuda.snailjob.server.web.model.response;
 | 
					package com.aizuda.snailjob.server.web.model.response;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import com.fasterxml.jackson.annotation.JsonProperty;
 | 
				
			||||||
import lombok.Data;
 | 
					import lombok.Data;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import java.time.LocalDateTime;
 | 
					import java.time.LocalDateTime;
 | 
				
			||||||
@ -84,6 +85,7 @@ public class JobTaskResponseVO {
 | 
				
			|||||||
    /**
 | 
					    /**
 | 
				
			||||||
     * 是否有子节点
 | 
					     * 是否有子节点
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
 | 
					    @JsonProperty("isLeaf")
 | 
				
			||||||
    private boolean isChildNode;
 | 
					    private boolean isChildNode;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
				
			|||||||
@ -19,11 +19,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO;
 | 
				
			|||||||
import org.springframework.beans.factory.annotation.Autowired;
 | 
					import org.springframework.beans.factory.annotation.Autowired;
 | 
				
			||||||
import org.springframework.stereotype.Service;
 | 
					import org.springframework.stereotype.Service;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import java.util.ArrayList;
 | 
					import java.util.*;
 | 
				
			||||||
import java.util.List;
 | 
					 | 
				
			||||||
import java.util.Map;
 | 
					 | 
				
			||||||
import java.util.Objects;
 | 
					 | 
				
			||||||
import java.util.Set;
 | 
					 | 
				
			||||||
import java.util.stream.Collectors;
 | 
					import java.util.stream.Collectors;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/**
 | 
					/**
 | 
				
			||||||
@ -50,20 +46,20 @@ public class JobTaskServiceImpl implements JobTaskService {
 | 
				
			|||||||
                        // SQLServer 分页必须 ORDER BY
 | 
					                        // SQLServer 分页必须 ORDER BY
 | 
				
			||||||
                        .orderByAsc(JobTask::getId));
 | 
					                        .orderByAsc(JobTask::getId));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        List<JobTaskResponseVO> jobTaskResponseVOs = JobTaskResponseVOConverter.INSTANCE.convertList(
 | 
					        List<JobTask> records = selectPage.getRecords();
 | 
				
			||||||
                selectPage.getRecords());
 | 
					
 | 
				
			||||||
        if (CollUtil.isEmpty(jobTaskResponseVOs)) {
 | 
					        if (CollUtil.isEmpty(records)) {
 | 
				
			||||||
            return new PageResult<>(pageDTO, jobTaskResponseVOs);
 | 
					            return new PageResult<>(pageDTO, new ArrayList<>());
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        List<JobTaskResponseVO> jobTaskResponseVOs = JobTaskResponseVOConverter.INSTANCE.convertList(
 | 
				
			||||||
 | 
					                records);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        Set<Long> parentIds = StreamUtils.toSet(jobTaskResponseVOs, JobTaskResponseVO::getId);
 | 
					        Set<Long> parentIds = StreamUtils.toSet(jobTaskResponseVOs, JobTaskResponseVO::getId);
 | 
				
			||||||
        List<JobTask> jobTasks = jobTaskMapper.selectList(new LambdaQueryWrapper<JobTask>()
 | 
					        List<JobTask> jobTasks = jobTaskMapper.selectList(new LambdaQueryWrapper<JobTask>()
 | 
				
			||||||
            .select(JobTask::getId).in(JobTask::getId, parentIds));
 | 
					                .select(JobTask::getParentId).in(JobTask::getParentId, parentIds));
 | 
				
			||||||
        Set<Long> jobTaskIds = StreamUtils.toSet(jobTasks, JobTask::getId);
 | 
					        Set<Long> jobTaskParentIds = StreamUtils.toSet(jobTasks, JobTask::getParentId);
 | 
				
			||||||
        for (JobTaskResponseVO jobTaskResponseVO : jobTaskResponseVOs) {
 | 
					        jobTaskResponseVOs.forEach(jobTask -> jobTask.setChildNode(!jobTaskParentIds.contains(jobTask.getId())));
 | 
				
			||||||
            jobTaskResponseVO.setKey(jobTaskResponseVO.getId());
 | 
					 | 
				
			||||||
            jobTaskResponseVO.setChildNode(jobTaskIds.contains(jobTaskResponseVO.getId()));
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
        return new PageResult<>(pageDTO, jobTaskResponseVOs);
 | 
					        return new PageResult<>(pageDTO, jobTaskResponseVOs);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
		Reference in New Issue
	
	Block a user