岗位列表-添加岗位联系人
This commit is contained in:
@@ -281,22 +281,39 @@ public class JobServiceImpl extends ServiceImpl<JobMapper,Job> implements IJobSe
|
||||
List<Job> jobs = jobMapper.selectJobList(job);
|
||||
if (CollectionUtils.isNotEmpty(jobs)) {
|
||||
String baseFilePath = StringUtil.getFilePath(request);
|
||||
baseFilePath = baseFilePath == null ? "" : baseFilePath;
|
||||
|
||||
List<Long> jobIds = jobs.stream().filter(Objects::nonNull)
|
||||
.map(Job::getJobId).filter(Objects::nonNull)
|
||||
.distinct().collect(Collectors.toList());
|
||||
.collect(Collectors.toList());
|
||||
|
||||
//查询所有附件
|
||||
List<File> allFiles = CollectionUtils.isNotEmpty(jobIds)
|
||||
? Optional.ofNullable(fileMapper.selectFileListByBussinessIds(jobIds))
|
||||
.orElseGet(Collections::emptyList)
|
||||
: Collections.emptyList();
|
||||
//查询所有联系人
|
||||
List<JobContact> allJobContacts = CollectionUtils.isNotEmpty(jobIds)
|
||||
? Optional.ofNullable(jobContactMapper.selectByJobIds(jobIds)).orElse(Collections.emptyList())
|
||||
: Collections.emptyList();
|
||||
//岗位联系人
|
||||
Map<Long, List<JobContact>> jobContactGroupMap = allJobContacts.stream()
|
||||
.filter(Objects::nonNull)
|
||||
.filter(contact -> Objects.nonNull(contact.getJobId()))
|
||||
.collect(Collectors.groupingBy(
|
||||
JobContact::getJobId,
|
||||
Collectors.collectingAndThen(Collectors.toList(), Collections::unmodifiableList)
|
||||
));
|
||||
|
||||
//附件分组
|
||||
String finalBaseFilePath = baseFilePath;
|
||||
Map<Long, List<File>> fileGroupMap = allFiles.stream()
|
||||
.filter(Objects::nonNull)
|
||||
.filter(file -> Objects.nonNull(file.getBussinessid()))
|
||||
.filter(file -> StringUtils.isNotBlank(file.getFileUrl()))
|
||||
.peek(file -> {
|
||||
String fullFileUrl = StringUtils.join(baseFilePath, file.getFileUrl().trim());
|
||||
String fileUrl = file.getFileUrl().trim();
|
||||
String fullFileUrl = StringUtils.join(finalBaseFilePath, fileUrl);
|
||||
file.setFileUrl(fullFileUrl);
|
||||
})
|
||||
.collect(Collectors.groupingBy(
|
||||
@@ -308,7 +325,9 @@ public class JobServiceImpl extends ServiceImpl<JobMapper,Job> implements IJobSe
|
||||
if (Objects.nonNull(jobItem)) {
|
||||
Long jobItemId = jobItem.getJobId();
|
||||
List<File> jobFiles = fileGroupMap.getOrDefault(jobItemId, Collections.emptyList());
|
||||
List<JobContact> jobContent = jobContactGroupMap.getOrDefault(jobItemId, Collections.emptyList());
|
||||
jobItem.setFilesList(jobFiles);
|
||||
jobItem.setJobContactList(jobContent);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user