画像内容新增

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 标签字段信息表 * @param labelFieldIds 标签字段信息表
* @return LabelFieldContentVO * @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 标签 * @param taskPartitionDictIds 标签
* @return GroupingValue * @return LabelFieldVO
*/ */
List<LabelFieldVO> selectLabelFieldNameByTaskPartitionDictIds(@Param("taskPartitionDictIds") List<Long> taskPartitionDictIds); List<LabelFieldVO> selectLabelFieldNameByTaskPartitionDictIds(@Param("taskPartitionDictIds") List<Long> taskPartitionDictIds);
} }

View File

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

View File

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

View File

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

View File

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