|
|
|
@ -151,7 +151,6 @@ public class AskPrimaryServiceImpl implements AskPrimaryService {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override
|
|
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
|
|
public void confirmPrimaryByAskEnd(List<PrimaryConfirmReqVO> reqVOList) {
|
|
|
|
@ -219,18 +218,17 @@ public class AskPrimaryServiceImpl implements AskPrimaryService {
|
|
|
|
|
// 找到process对应的所有的初步诊断
|
|
|
|
|
List<DiagnosisPrimaryVO> diagnosisPrimaryVOS = diagnosisPrimaryService.queryAskPrimaryList(processId);
|
|
|
|
|
Map<String, String> diseaseNameMap = diagnosisPrimaryVOS.stream().collect(Collectors.toMap(DiagnosisPrimaryVO::getId, DiagnosisPrimaryVO::getPrimaryDiseaseName));
|
|
|
|
|
// 首先根据诊断记录,找到对应的关联关系
|
|
|
|
|
Set<String> relationIdSet = resList.stream().map(DiagnosticBasisForPrimaryResVO::getId).collect(Collectors.toSet());
|
|
|
|
|
// 查询诊疗记录对应的初步诊断关系
|
|
|
|
|
List<DiagnosisPrimaryRelation> relationList = diagnosisPrimaryRelationService.lambdaQuery()
|
|
|
|
|
.in(DiagnosisPrimaryRelation::getRelationId, relationIdSet)
|
|
|
|
|
.list();
|
|
|
|
|
// 查询诊疗记录对应的所有检查记录
|
|
|
|
|
List<DiagnosisPrimaryRelation> relationList = diagnosisPrimaryRelationService.lambdaQuery().eq(DiagnosisPrimaryRelation::getProcessId, processId).list();
|
|
|
|
|
// 根据relationId进行分组
|
|
|
|
|
Map<String, List<DiagnosisPrimaryRelation>> relationMap = relationList.stream().collect(Collectors.groupingBy(DiagnosisPrimaryRelation::getRelationId));
|
|
|
|
|
|
|
|
|
|
List<DiagnosticBasisForPrimaryResVO> result = new ArrayList<>();
|
|
|
|
|
for (DiagnosticBasisForPrimaryResVO node : resList) {
|
|
|
|
|
List<DiagnosisPrimaryRelation> relationPrimaryList = relationMap.get(node.getId());
|
|
|
|
|
if (CollUtil.isEmpty(relationPrimaryList)){
|
|
|
|
|
continue;
|
|
|
|
|
}
|
|
|
|
|
Set<String> primarySet = relationPrimaryList.stream().map(DiagnosisPrimaryRelation::getPrimaryId).collect(Collectors.toSet());
|
|
|
|
|
|
|
|
|
|
if (CollUtil.isNotEmpty(primarySet)) {
|
|
|
|
|