画像内容新增

This commit is contained in:
zhangheng 2024-06-27 15:16:59 +08:00
parent bc519951f0
commit 92e21842c0
6 changed files with 21 additions and 4 deletions

View File

@ -79,7 +79,7 @@ public interface LabelFieldContentMapper {
* @param labelFieldIds 标签字段信息表
* @return LabelFieldContentVO
*/
List<LabelFieldContentVO> selectLabelFieldContent(@Param("labelFieldIds") List<Long> labelFieldIds);
List<LabelFieldContentVO> selectLabelFieldContent(@Param("labelFieldIds") List<Long> labelFieldIds, @Param("patientId") Long patientId);
/**
* 画像内容查询

View File

@ -100,7 +100,7 @@ public interface LabelFieldInfoMapper {
* 查询标签
*
* @param taskPartitionDictIds 标签
* @return GroupingValue
* @return LabelFieldVO
*/
List<LabelFieldVO> selectLabelFieldNameByTaskPartitionDictIds(@Param("taskPartitionDictIds") List<Long> taskPartitionDictIds);
}

View File

@ -252,7 +252,7 @@ public class LabelFieldContentServiceImpl implements ILabelFieldContentService {
//传入标签内容ids
List<Long> afferentLabelFieldContentIds = groupingValues.stream().filter(Objects::nonNull).map(GroupingValue::getLabelFieldContentId).filter(Objects::nonNull).collect(Collectors.toList());
//数据库标签内容ids
List<LabelFieldContentVO> databaseLabelFieldContents = labelFieldContentMapper.selectLabelFieldContent(afferentLabelFieldInfoIds);
List<LabelFieldContentVO> databaseLabelFieldContents = labelFieldContentMapper.selectLabelFieldContent(afferentLabelFieldInfoIds, groupingValues.get(0).getPatientId());
List<Long> databaseLabelFieldContentIds = databaseLabelFieldContents.stream().filter(Objects::nonNull).map(LabelFieldContentVO::getLabelFieldContentId).filter(Objects::nonNull).collect(Collectors.toList());
//做差集
List<Long> subtractLabelFieldContentIds = (List<Long>) CollectionUtils.subtract(databaseLabelFieldContentIds, afferentLabelFieldContentIds);

View File

@ -67,20 +67,24 @@ public class LabelFieldInfoServiceImpl implements ILabelFieldInfoService {
@Override
public List<LabelFieldTreeVO> labelFieldList(String fieldType) {
int i = 1;
//查询细分
List<LabelFieldVO> labelFieldList = labelFieldInfoMapper.selectLabelFieldList(fieldType);
List<Long> taskPartitionDictIds = labelFieldList.stream().filter(Objects::nonNull).map(LabelFieldVO::getTaskPartitionDictId).filter(Objects::nonNull).distinct().collect(Collectors.toList());
if (taskPartitionDictIds.size() == 0) {
return new ArrayList<>();
}
List<LabelFieldVO> collect = labelFieldList.stream().filter(Objects::nonNull).collect(Collectors.toList());
//根据细分查询画像
List<LabelFieldVO> labelFieldInfoList = labelFieldInfoMapper.selectLabelFieldNameByTaskPartitionDictIds(taskPartitionDictIds);
List<LabelFieldVO> labelFieldVOS = new ArrayList<>();
labelFieldVOS.addAll(collect);
labelFieldVOS.addAll(labelFieldInfoList);
//组装编号用于前端判断
for (LabelFieldVO labelFieldVO : labelFieldVOS) {
labelFieldVO.setCode(i);
i++;
}
//组装数据
for (LabelFieldVO labelField : collect) {
if (Objects.nonNull(labelField.getTaskPartitionDictId()) && StringUtils.isNotBlank(labelField.getTaskPartitionDictName()) && StringUtils.isNotBlank(labelField.getLabel())) {
List<LabelFieldVO> collectLabelFieldInfoList = labelFieldInfoList.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getTaskPartitionDictId()) && labelField.getTaskPartitionDictId().equals(item.getTaskPartitionDictId())).collect(Collectors.toList());
@ -89,6 +93,7 @@ public class LabelFieldInfoServiceImpl implements ILabelFieldInfoService {
}
}
}
//树图
return collect.stream().map(LabelFieldTreeVO::new).collect(Collectors.toList());
}

View File

@ -22,10 +22,19 @@ public class LabelFieldVO extends LabelFieldInfo {
*/
private Long LabelFieldId;
/**
* 树图名
*/
private String label;
/**
* 树图编号
*/
private Integer code;
/**
* 子集合
*/
private List<LabelFieldVO> labelFieldList = new ArrayList<LabelFieldVO>();
public List<LabelFieldVO> getChildren() {

View File

@ -224,11 +224,14 @@
from label_field_content
<where>
<if test="labelFieldIds != null and labelFieldIds.size() > 0">
field_id in
and field_id in
<foreach item="labelFieldIds" collection="labelFieldIds" open="(" separator="," close=")">
#{labelFieldIds}
</foreach>
</if>
<if test="patientId != null">
and patient_id = #{patientId}
</if>
</where>
</select>