manage: 修复bug

dev_2.1.0
xueqingkun 1 year ago
parent 43f550a214
commit 02cfbf4e64

@ -19,6 +19,7 @@ import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
@ -115,15 +116,18 @@ public class DiseaseManageServiceImpl implements DiseaseManageService {
List<String> containDiseaseIds = page.getRecords().stream()
.filter(disease -> CollUtil.isNotEmpty(disease.getContainDiseaseIds()))
.flatMap(disease -> disease.getContainDiseaseIds().stream()).distinct().collect(Collectors.toList());
Map<String, Disease> diseaseMap = diseaseService.listByIds(containDiseaseIds)
Map<String, Disease> diseaseMap = new HashMap<>();
if (CollUtil.isNotEmpty(containDiseaseIds)){
diseaseMap = diseaseService.listByIds(containDiseaseIds)
.stream().collect(Collectors.toMap(Disease::getId, disease -> disease, (v1, v2) -> v1));
}
final Map<String, Disease> diseaseMapCopy = new HashMap<>(diseaseMap);
// 把疾病名映射到DiseaseResVo中
return page.convert(record -> {
DiseaseResVo bean = BeanUtil.toBean(record, DiseaseResVo.class);
if (CollUtil.isNotEmpty(bean.getContainDiseaseIds())){
bean.setContainDiseaseNames(bean.getContainDiseaseIds().stream()
.map(diseaseMap::get).filter(Objects::nonNull).map(Disease::getDiseaseName).collect(Collectors.toList()));
.map(diseaseMapCopy::get).filter(Objects::nonNull).map(Disease::getDiseaseName).collect(Collectors.toList()));
}
bean.setUsedMedicalRec(medicalDiseaseIds.contains(bean.getId()));
return bean;

Loading…
Cancel
Save