diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldcontent/impl/LabelFieldContentServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldcontent/impl/LabelFieldContentServiceImpl.java index 3e195585..20980ed7 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldcontent/impl/LabelFieldContentServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldcontent/impl/LabelFieldContentServiceImpl.java @@ -204,6 +204,7 @@ public class LabelFieldContentServiceImpl implements ILabelFieldContentService { } PatientTaskDto patientTaskDto = new PatientTaskDto(); patientTaskDto.setPatientId(patientId); + //暂时不用 List nodeList = signPatientManageRouteNodeMapper.getNodeList(patientTaskDto); List nodeContentList = nodeList.stream().filter(Objects::nonNull).map(SignPatientManageRouteNode::getNodeContent).filter(Objects::nonNull).collect(Collectors.toList()); String nodeContentListJoin = String.join(",", nodeContentList); @@ -233,20 +234,26 @@ public class LabelFieldContentServiceImpl implements ILabelFieldContentService { for (int i = 0; i < declaredFields.length; i++) { strings[i] = declaredFields[i].getName().toUpperCase(); } - List PortraitSnVOS = new ArrayList<>(); List asListStrings = Arrays.asList(strings); for (GroupingValue groupingValue : labelFieldContentList) { - PortraitSnVO portraitSnVO = new PortraitSnVO(); groupingValue.setPatientId(patientId); String s = asListStrings.stream().filter(Objects::nonNull).filter(item -> item.equals(groupingValue.getFieldCode())).findFirst().orElse(new String()); groupingValue.setFieldValue(paramsValue.getOrDefault(s, "").toString()); - portraitSnVO.setPortraitSn(groupingValue.getPortraitSn()); - PortraitSnVOS.add(portraitSnVO); } + List collect = labelFieldContentList.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getTaskPartitionDictId())).map(LabelFieldInfo::getTaskPartitionDictId).distinct().collect(Collectors.toList()); List labelFieldAndPartitionDictList = new ArrayList<>(); - LabelFieldAndPartitionDict labelFieldAndPartitionDict = new LabelFieldAndPartitionDict(); - labelFieldAndPartitionDict.setPortraitSnVOList(PortraitSnVOS); - labelFieldAndPartitionDictList.add(labelFieldAndPartitionDict); + for (Long aLong : collect) { + List PortraitSnVOS = new ArrayList<>(); + LabelFieldAndPartitionDict labelFieldAndPartitionDict = new LabelFieldAndPartitionDict(); + PortraitSnVO portraitSnVO = new PortraitSnVO(); + List collect1 = labelFieldContentList.stream().filter(Objects::nonNull).filter(item -> aLong.equals(item.getTaskPartitionDictId())).collect(Collectors.toList()); + portraitSnVO.setGroupingValues(collect1); + PortraitSnVOS.add(portraitSnVO); + labelFieldAndPartitionDict.setTaskPartitionDictId(aLong); + labelFieldAndPartitionDict.setTaskPartitionDictName(collect1.get(0).getTaskPartitionDictName()); + labelFieldAndPartitionDict.setPortraitSnVOList(PortraitSnVOS); + labelFieldAndPartitionDictList.add(labelFieldAndPartitionDict); + } return labelFieldAndPartitionDictList; } diff --git a/postdischarge-manage/src/main/resources/mapper/manage/labelfieldinfo/LabelFieldInfoMapper.xml b/postdischarge-manage/src/main/resources/mapper/manage/labelfieldinfo/LabelFieldInfoMapper.xml index d3877b1e..d6a5ede6 100644 --- a/postdischarge-manage/src/main/resources/mapper/manage/labelfieldinfo/LabelFieldInfoMapper.xml +++ b/postdischarge-manage/src/main/resources/mapper/manage/labelfieldinfo/LabelFieldInfoMapper.xml @@ -232,17 +232,19 @@