diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/controller/labelfieldinfo/LabelFieldInfoController.java b/postdischarge-manage/src/main/java/com/xinelu/manage/controller/labelfieldinfo/LabelFieldInfoController.java index 2effbdce..e5a6072e 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/controller/labelfieldinfo/LabelFieldInfoController.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/controller/labelfieldinfo/LabelFieldInfoController.java @@ -51,6 +51,14 @@ public class LabelFieldInfoController extends BaseController { return AjaxResult.success(labelFieldInfoService.selectLabelFieldInfoList(labelFieldInfo)); } + /** + * 查询标签字段信息列表树图 + */ + @GetMapping("/labelFieldList") + public AjaxResult labelFieldList(String fieldType) { + return AjaxResult.success(labelFieldInfoService.labelFieldList(fieldType)); + } + /** * 导出标签字段信息列表 */ diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/labelfieldcontent/LabelFieldContentMapper.java b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/labelfieldcontent/LabelFieldContentMapper.java index b32368b3..1024a50a 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/labelfieldcontent/LabelFieldContentMapper.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/labelfieldcontent/LabelFieldContentMapper.java @@ -1,6 +1,7 @@ package com.xinelu.manage.mapper.labelfieldcontent; import com.xinelu.manage.domain.labelfieldcontent.LabelFieldContent; +import com.xinelu.manage.vo.labelfieldcontent.LabelFieldContentVO; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -69,4 +70,12 @@ public interface LabelFieldContentMapper { * 检查除去当前记录外有没有重复内容名称 */ int existCountByContentNameExcludingId(@Param("id") Long id, @Param("fieldId") Long fieldId, @Param("contentName") String contentName); + + /** + * 查询标签信息根据标签字段信息表 + * + * @param labelFieldIds 标签字段信息表 + * @return LabelFieldContentVO + */ + List selectLabelFieldContent(@Param("labelFieldIds") List labelFieldIds); } diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/labelfieldinfo/LabelFieldInfoMapper.java b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/labelfieldinfo/LabelFieldInfoMapper.java index 43a9103e..641bd40b 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/labelfieldinfo/LabelFieldInfoMapper.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/mapper/labelfieldinfo/LabelFieldInfoMapper.java @@ -1,6 +1,7 @@ package com.xinelu.manage.mapper.labelfieldinfo; import com.xinelu.manage.domain.labelfieldinfo.LabelFieldInfo; +import com.xinelu.manage.vo.labelfieldinfo.LabelFieldVO; import org.apache.ibatis.annotations.Param; import java.util.List; @@ -28,6 +29,14 @@ public interface LabelFieldInfoMapper { */ public List selectLabelFieldInfoList(LabelFieldInfo labelFieldInfo); + /** + * 查询标签字段信息列表 + * + * @param fieldType 标签字段信息 + * @return 标签字段信息集合 + */ + List selectLabelFieldList(String fieldType); + /** * 新增标签字段信息 * diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/department/impl/DepartmentServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/department/impl/DepartmentServiceImpl.java index efb7fe44..da78de81 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/department/impl/DepartmentServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/department/impl/DepartmentServiceImpl.java @@ -153,8 +153,8 @@ public class DepartmentServiceImpl implements IDepartmentService { /** * 查询科室信息列表及包含话术数量 * - * @param departmentDto - * @return + * @param departmentDto 科室信息 + * @return 结果 */ @Override public List selectDepartmentListScriptNum(DepartmentDTO departmentDto) { @@ -164,8 +164,8 @@ public class DepartmentServiceImpl implements IDepartmentService { /** * 查询科室信息列表及包含手术数量 * - * @param departmentDto - * @return + * @param departmentDto 科室信息 + * @return 结果 */ @Override public List selectDepartmentListOperationNum(DepartmentDTO departmentDto) { @@ -175,8 +175,8 @@ public class DepartmentServiceImpl implements IDepartmentService { /** * 查询科室信息列表及包含微信库数量 * - * @param departmentDto - * @return + * @param departmentDto 科室信息 + * @return 结果 */ @Override public List selectDepartmentListWechatTemplateNum(DepartmentDTO departmentDto) { @@ -186,8 +186,8 @@ public class DepartmentServiceImpl implements IDepartmentService { /** * 查询科室信息列表及包含短信库数量 * - * @param departmentDto - * @return + * @param departmentDto 科室信息 + * @return 结果 */ @Override public List selectDepartmentListMessageNum(DepartmentDTO departmentDto) { @@ -198,7 +198,7 @@ public class DepartmentServiceImpl implements IDepartmentService { * 科室信息导入 * * @param departmentList 科室信息 - * @return + * @return 结果 */ @Transactional(rollbackFor = Exception.class) @@ -244,8 +244,8 @@ public class DepartmentServiceImpl implements IDepartmentService { /** * 查询科室信息列表及包含服务包数量 * - * @param departmentDto - * @return + * @param departmentDto 科室 + * @return 结果 */ @Override public List selectListServicePackageNum(DepartmentDTO departmentDto) { diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldinfo/ILabelFieldInfoService.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldinfo/ILabelFieldInfoService.java index b8f060c8..9d7d3aac 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldinfo/ILabelFieldInfoService.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldinfo/ILabelFieldInfoService.java @@ -1,5 +1,6 @@ package com.xinelu.manage.service.labelfieldinfo; +import com.xinelu.common.core.domain.AjaxResult; import com.xinelu.manage.domain.labelfieldinfo.LabelFieldInfo; import com.xinelu.manage.dto.labelfieldinfo.LabelFieldInfoAddDTO; @@ -28,6 +29,14 @@ public interface ILabelFieldInfoService { */ List selectLabelFieldInfoList(LabelFieldInfo labelFieldInfo); + /** + * 标签字段信息表 查询标签字段信息列表树图 + * + * @param fieldType 字段类型 + * @return AjaxResult + */ + AjaxResult labelFieldList(String fieldType); + /** * 新增标签字段信息 * diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldinfo/impl/LabelFieldInfoServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldinfo/impl/LabelFieldInfoServiceImpl.java index 89a7a503..4c8df070 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldinfo/impl/LabelFieldInfoServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/labelfieldinfo/impl/LabelFieldInfoServiceImpl.java @@ -1,13 +1,17 @@ package com.xinelu.manage.service.labelfieldinfo.impl; import com.xinelu.common.constant.Constants; +import com.xinelu.common.core.domain.AjaxResult; import com.xinelu.common.exception.ServiceException; import com.xinelu.common.utils.SecurityUtils; import com.xinelu.common.utils.codes.GenerateSystemCodeUtil; import com.xinelu.manage.domain.labelfieldinfo.LabelFieldInfo; import com.xinelu.manage.dto.labelfieldinfo.LabelFieldInfoAddDTO; +import com.xinelu.manage.mapper.labelfieldcontent.LabelFieldContentMapper; import com.xinelu.manage.mapper.labelfieldinfo.LabelFieldInfoMapper; import com.xinelu.manage.service.labelfieldinfo.ILabelFieldInfoService; +import com.xinelu.manage.vo.labelfieldcontent.LabelFieldContentVO; +import com.xinelu.manage.vo.labelfieldinfo.LabelFieldVO; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.ObjectUtils; import org.springframework.stereotype.Service; @@ -17,6 +21,7 @@ import javax.annotation.Resource; import java.time.LocalDateTime; import java.util.List; import java.util.Map; +import java.util.Objects; import java.util.stream.Collectors; /** @@ -33,6 +38,9 @@ public class LabelFieldInfoServiceImpl implements ILabelFieldInfoService { @Resource private GenerateSystemCodeUtil systemCodeUtil; + @Resource + private LabelFieldContentMapper labelFieldContentMapper; + /** * 查询标签字段信息 * @@ -55,6 +63,27 @@ public class LabelFieldInfoServiceImpl implements ILabelFieldInfoService { return labelFieldInfoMapper.selectLabelFieldInfoList(labelFieldInfo); } + /** + * 查询标签字段信息列表树图 + * + * @param fieldType 字段类型 + * @return AjaxResult + */ + @Override + public AjaxResult labelFieldList(String fieldType) { + List labelFieldList = labelFieldInfoMapper.selectLabelFieldList(fieldType); + List labelFieldIds = labelFieldList.stream().filter(Objects::nonNull).map(LabelFieldVO::getLabelFieldId).filter(Objects::nonNull).collect(Collectors.toList()); + if (labelFieldIds.size() == 0) { + return AjaxResult.success(labelFieldList); + } + List labelFieldContentList = labelFieldContentMapper.selectLabelFieldContent(labelFieldIds); + for (LabelFieldVO labelField : labelFieldList) { + List collect = labelFieldContentList.stream().filter(Objects::nonNull).filter(item -> Objects.nonNull(item.getFieldId()) && labelField.getLabelFieldId().equals(item.getFieldId())).collect(Collectors.toList()); + labelField.setLabelFieldContentList(collect); + } + return AjaxResult.success(labelFieldList); + } + /** * 新增标签字段信息 * diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/vo/labelfieldcontent/LabelFieldContentVO.java b/postdischarge-manage/src/main/java/com/xinelu/manage/vo/labelfieldcontent/LabelFieldContentVO.java new file mode 100644 index 00000000..e7c7e8b7 --- /dev/null +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/vo/labelfieldcontent/LabelFieldContentVO.java @@ -0,0 +1,21 @@ +package com.xinelu.manage.vo.labelfieldcontent; + +import com.xinelu.manage.domain.labelfieldcontent.LabelFieldContent; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 标签字段内容信息对象 label_field_content + * + * @author xinelu + * @date 2024-03-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class LabelFieldContentVO extends LabelFieldContent { + + /** + * 标签内容表 + */ + private Long LabelFieldContentId; +} \ No newline at end of file diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/vo/labelfieldinfo/LabelFieldVO.java b/postdischarge-manage/src/main/java/com/xinelu/manage/vo/labelfieldinfo/LabelFieldVO.java new file mode 100644 index 00000000..271d1b26 --- /dev/null +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/vo/labelfieldinfo/LabelFieldVO.java @@ -0,0 +1,29 @@ +package com.xinelu.manage.vo.labelfieldinfo; + +import com.xinelu.manage.domain.labelfieldinfo.LabelFieldInfo; +import com.xinelu.manage.vo.labelfieldcontent.LabelFieldContentVO; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.util.List; + +/** + * 标签字段信息对象 label_field_info + * + * @author xinelu + * @date 2024-03-11 + */ +@Data +@EqualsAndHashCode(callSuper = true) +public class LabelFieldVO extends LabelFieldInfo { + + /** + * 标签字段表 + */ + private Long LabelFieldId; + + /** + * 标签内容 + */ + private List labelFieldContentList; +} \ No newline at end of file diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/vo/specialdiseaseroute/SpecialDiseaseRouteVO.java b/postdischarge-manage/src/main/java/com/xinelu/manage/vo/specialdiseaseroute/SpecialDiseaseRouteVO.java index 64972be2..0d3dcc69 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/vo/specialdiseaseroute/SpecialDiseaseRouteVO.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/vo/specialdiseaseroute/SpecialDiseaseRouteVO.java @@ -30,7 +30,7 @@ public class SpecialDiseaseRouteVO extends SpecialDiseaseRoute { List specialDiseaseNodeList; /** - * 节点信息 + * 触发条件信息 */ List triggerConditionList; } \ No newline at end of file diff --git a/postdischarge-manage/src/main/resources/mapper/manage/labelfieldcontent/LabelFieldContentMapper.xml b/postdischarge-manage/src/main/resources/mapper/manage/labelfieldcontent/LabelFieldContentMapper.xml index 1ec4b231..22d2dff0 100644 --- a/postdischarge-manage/src/main/resources/mapper/manage/labelfieldcontent/LabelFieldContentMapper.xml +++ b/postdischarge-manage/src/main/resources/mapper/manage/labelfieldcontent/LabelFieldContentMapper.xml @@ -212,4 +212,26 @@ #{id} + + \ No newline at end of file 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 cd9ad500..11332dab 100644 --- a/postdischarge-manage/src/main/resources/mapper/manage/labelfieldinfo/LabelFieldInfoMapper.xml +++ b/postdischarge-manage/src/main/resources/mapper/manage/labelfieldinfo/LabelFieldInfoMapper.xml @@ -59,6 +59,18 @@ + + +