manage:添加功能

dev_2.0.0
xueqingkun 1 year ago
parent 763f2e5aee
commit 4740bbafe1

@ -1,5 +1,6 @@
package com.supervision.config;
import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializationFeature;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
@ -43,6 +44,7 @@ public class WebConfig implements WebMvcConfigurer {
@Bean
public ObjectMapper objectMapper() {
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
JavaTimeModule javaTimeModule = new JavaTimeModule();
javaTimeModule.addSerializer(LocalDateTime.class, new LocalDateTimeSerializer(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));

@ -2,6 +2,8 @@ package com.supervision.manage.controller.diseasemanage;
import com.supervision.manage.service.DiseaseAncillaryManageService;
import com.supervision.model.DiseaseAncillary;
import com.supervision.vo.ask.AncillaryItemReqVo;
import com.supervision.vo.ask.ConfigAncillaryItemResVO;
import com.supervision.vo.manage.DiseaseAncillaryReqVo;
import com.supervision.vo.manage.DiseaseAncillaryResVo;
import io.swagger.annotations.Api;
@ -57,7 +59,10 @@ public class DiseaseAncillaryManageController {
}
// todo 根据疾病id 查询辅助检查项树
@ApiOperation("查询疾病辅助检查项目列表")
@GetMapping("queryAncillaryItemList")
public List<ConfigAncillaryItemResVO> queryAncillaryItemList(AncillaryItemReqVo ancillaryItemReqVo) {
return diseaseAncillaryManageService.queryAncillaryItemList(ancillaryItemReqVo);
}
}

@ -1,7 +1,10 @@
package com.supervision.manage.controller.diseasemanage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.manage.service.DiseaseQuestionManageService;
import com.supervision.model.DiseaseQuestion;
import com.supervision.vo.manage.AskQuestionLibraryReqVo;
import com.supervision.vo.manage.AskQuestionLibraryResVo;
import com.supervision.vo.manage.DiseaseQuestionResVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -46,7 +49,15 @@ public class DiseaseQuestionManageController {
}
// todo: 根据疾病id 打标问题库列表
@ApiOperation("分页查询问题库列表(排除已选择)")
@GetMapping("/queryQaLibPageList")
public Page<AskQuestionLibraryResVo> queryQaLibPageList(@RequestParam(defaultValue = "1") Integer pageNum,
@RequestParam(defaultValue = "10") Integer pageSize,
AskQuestionLibraryReqVo askQuestionLibraryReqVo) {
return diseaseQuestionManageService.queryQaLibPageList(pageNum, pageSize, askQuestionLibraryReqVo);
}
}

@ -1,12 +1,11 @@
package com.supervision.manage.controller.diseasemanage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.manage.service.DiseaseTreatmentPlanManageService;
import com.supervision.model.ConfigTreatmentPlan;
import com.supervision.model.DiseaseTreatmentPlan;
import com.supervision.vo.manage.DiseaseTreatmentPlanResVo;
import com.supervision.vo.manage.DiseaseTreatmentPlanTreeNode;
import com.supervision.vo.manage.TreatmentPlanTreeNode;
import com.supervision.vo.manage.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;

@ -1,6 +1,8 @@
package com.supervision.manage.service;
import com.supervision.model.DiseaseAncillary;
import com.supervision.vo.ask.AncillaryItemReqVo;
import com.supervision.vo.ask.ConfigAncillaryItemResVO;
import com.supervision.vo.manage.DiseaseAncillaryResVo;
import java.util.List;
@ -19,4 +21,7 @@ public interface DiseaseAncillaryManageService {
boolean deleteByDiseaseId(String diseaseId);
List<ConfigAncillaryItemResVO> queryAncillaryItemList(AncillaryItemReqVo ancillaryItemReqVo);
}

@ -1,6 +1,9 @@
package com.supervision.manage.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.model.DiseaseQuestion;
import com.supervision.vo.manage.AskQuestionLibraryReqVo;
import com.supervision.vo.manage.AskQuestionLibraryResVo;
import com.supervision.vo.manage.DiseaseQuestionResVo;
import java.util.List;
@ -14,4 +17,6 @@ public interface DiseaseQuestionManageService {
boolean deleteDiseaseQuestion(String id);
boolean deleteByDiseaseId(String diseaseId);
Page<AskQuestionLibraryResVo> queryQaLibPageList(Integer pageNum, Integer pageSize, AskQuestionLibraryReqVo askQuestionLibraryReqVo);
}

@ -1,13 +1,21 @@
package com.supervision.manage.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.supervision.manage.service.AncillaryItemManageService;
import com.supervision.model.DiseaseAncillary;
import com.supervision.service.ConfigAncillaryItemService;
import com.supervision.service.DiseaseAncillaryService;
import com.supervision.vo.ask.AncillaryItemReqVo;
import com.supervision.vo.ask.ConfigAncillaryItemResVO;
import com.supervision.vo.manage.DiseaseAncillaryResVo;
import com.supervision.vo.result.ConfigAncillaryItemVo;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
@Service
@RequiredArgsConstructor

@ -7,13 +7,18 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.supervision.manage.service.DiseaseAncillaryManageService;
import com.supervision.model.DiseaseAncillary;
import com.supervision.service.ConfigAncillaryItemService;
import com.supervision.service.DiseaseAncillaryService;
import com.supervision.vo.ask.AncillaryItemReqVo;
import com.supervision.vo.ask.ConfigAncillaryItemResVO;
import com.supervision.vo.manage.DiseaseAncillaryResVo;
import com.supervision.vo.result.ConfigAncillaryItemVo;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
@Service
@RequiredArgsConstructor
@ -21,6 +26,8 @@ public class DiseaseAncillaryManageServiceImpl implements DiseaseAncillaryManage
private final DiseaseAncillaryService diseaseAncillaryService;
private final ConfigAncillaryItemService configAncillaryItemService;
@Override
public List<DiseaseAncillaryResVo> queryListByDiseaseId(String diseaseId) {
@ -66,6 +73,30 @@ public class DiseaseAncillaryManageServiceImpl implements DiseaseAncillaryManage
return diseaseAncillaryService.lambdaUpdate().eq(DiseaseAncillary::getDiseaseId, diseaseId).remove();
}
@Override
public List<ConfigAncillaryItemResVO> queryAncillaryItemList(AncillaryItemReqVo ancillaryItemReqVo) {
List<ConfigAncillaryItemResVO> configAncillaryItemResVOS = configAncillaryItemService.queryAncillaryItemList(ancillaryItemReqVo);
if (CollUtil.isEmpty(configAncillaryItemResVOS) || StrUtil.isEmpty(ancillaryItemReqVo.getDiseaseId())){
return configAncillaryItemResVOS;
}
List<DiseaseAncillaryResVo> diseaseAncillaryResVos = diseaseAncillaryService.queryListByDiseaseId(ancillaryItemReqVo.getDiseaseId());
if (CollUtil.isEmpty(diseaseAncillaryResVos)){
return configAncillaryItemResVOS;
}
List<String> itemIds = diseaseAncillaryResVos.stream().map(DiseaseAncillary::getItemId).distinct().collect(Collectors.toList());
for (ConfigAncillaryItemResVO configAncillaryItemResVO : configAncillaryItemResVOS) {
if (CollUtil.isEmpty(configAncillaryItemResVO.getItemList())){
continue;
}
for (ConfigAncillaryItemVo itemVo : configAncillaryItemResVO.getItemList()) {
itemVo.setFlag(itemIds.contains(itemVo.getId()));
}
}
return configAncillaryItemResVOS;
}
private void assertDiseaseAncillary(DiseaseAncillary diseaseAncillary){

@ -104,7 +104,7 @@ public class DiseasePhysicalManageServiceImpl implements DiseasePhysicalManageSe
private void populateDiseasePhysicalLocationNodeFlag(DiseasePhysicalLocationNodeVo node,List<String> locationIds) {
if (StrUtil.isNotEmpty(node.getId())){
node.setFlag(locationIds.stream().anyMatch(locationId->node.getId().equals(locationId)));
node.setFlag(locationIds.contains(node.getId()));
}
if (CollectionUtil.isNotEmpty(node.getChild())){
for (DiseasePhysicalLocationNodeVo childNode : node.getChild()) {

@ -4,11 +4,15 @@ import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.manage.service.AskQuestionLibraryManageService;
import com.supervision.manage.service.DiseaseAncillaryManageService;
import com.supervision.manage.service.DiseaseQuestionManageService;
import com.supervision.model.DiseaseQuestion;
import com.supervision.service.AskTemplateQuestionLibraryService;
import com.supervision.service.DiseaseQuestionService;
import com.supervision.vo.manage.AskQuestionLibraryReqVo;
import com.supervision.vo.manage.AskQuestionLibraryResVo;
import com.supervision.vo.manage.DiseaseQuestionResVo;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@ -21,6 +25,8 @@ public class DiseaseQuestionManageServiceImpl implements DiseaseQuestionManageSe
private final DiseaseQuestionService diseaseQuestionService;
private final AskQuestionLibraryManageService askQuestionLibraryManageService;
@Override
public List<DiseaseQuestionResVo> queryPageByDiseaseId(String diseaseId) {
@ -55,6 +61,12 @@ public class DiseaseQuestionManageServiceImpl implements DiseaseQuestionManageSe
return diseaseQuestionService.lambdaUpdate().eq(DiseaseQuestion::getDiseaseId, diseaseId).remove();
}
@Override
public Page<AskQuestionLibraryResVo> queryQaLibPageList(Integer pageNum, Integer pageSize, AskQuestionLibraryReqVo askQuestionLibraryReqVo) {
return diseaseQuestionService.queryQaLibPageList(pageNum,pageSize,askQuestionLibraryReqVo);
}
private List<DiseaseQuestion> findListByDiseaseIdAndQuestionIdGroup(List<DiseaseQuestion> diseaseQuestionList){

@ -1,7 +1,11 @@
package com.supervision.mapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.model.DiseaseQuestion;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.supervision.vo.manage.AskQuestionLibraryReqVo;
import com.supervision.vo.manage.AskQuestionLibraryResVo;
import com.supervision.vo.manage.DiseaseQuestionResVo;
import org.apache.ibatis.annotations.Param;
@ -17,6 +21,8 @@ public interface DiseaseQuestionMapper extends BaseMapper<DiseaseQuestion> {
List<DiseaseQuestionResVo> queryPageByDiseaseId(@Param("diseaseId") String diseaseId);
Page<AskQuestionLibraryResVo> queryQaLibPageList(IPage<AskQuestionLibraryResVo> page,
@Param("askQuestionLibrary") AskQuestionLibraryReqVo askQuestionLibraryReqVo);
}

@ -3,6 +3,8 @@ package com.supervision.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.supervision.model.DiseaseQuestion;
import com.baomidou.mybatisplus.extension.service.IService;
import com.supervision.vo.manage.AskQuestionLibraryReqVo;
import com.supervision.vo.manage.AskQuestionLibraryResVo;
import com.supervision.vo.manage.DiseaseQuestionResVo;
import java.util.List;
@ -16,4 +18,5 @@ public interface DiseaseQuestionService extends IService<DiseaseQuestion> {
List<DiseaseQuestionResVo> queryPageByDiseaseId(String diseaseId);
Page<AskQuestionLibraryResVo> queryQaLibPageList(Integer pageNum, Integer pageSize, AskQuestionLibraryReqVo askQuestionLibraryReqVo);
}

@ -2,6 +2,7 @@ package com.supervision.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.crypto.digest.MD5;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.supervision.model.ConfigAncillaryItem;
import com.supervision.service.ConfigAncillaryItemService;
@ -61,6 +62,7 @@ public class ConfigAncillaryItemServiceImpl extends ServiceImpl<ConfigAncillaryI
return list.stream().collect(Collectors.groupingBy(ConfigAncillaryItem::getType)).entrySet().stream().map(e -> {
ConfigAncillaryItemResVO item = new ConfigAncillaryItemResVO();
item.setItemName(e.getKey());
item.setId(new MD5().digestHex16(e.getKey()));
item.setItemList(e.getValue());
return item;
}).collect(Collectors.toList());

@ -1,9 +1,13 @@
package com.supervision.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.supervision.model.DiseaseQuestion;
import com.supervision.service.DiseaseQuestionService;
import com.supervision.mapper.DiseaseQuestionMapper;
import com.supervision.vo.manage.AskQuestionLibraryReqVo;
import com.supervision.vo.manage.AskQuestionLibraryResVo;
import com.supervision.vo.manage.DiseaseQuestionResVo;
import org.springframework.stereotype.Service;
@ -23,6 +27,15 @@ public class DiseaseQuestionServiceImpl extends ServiceImpl<DiseaseQuestionMappe
return super.getBaseMapper().queryPageByDiseaseId(diseaseId);
}
@Override
public Page<AskQuestionLibraryResVo> queryQaLibPageList(Integer pageNum, Integer pageSize,
AskQuestionLibraryReqVo askQuestionLibraryReqVo) {
IPage<AskQuestionLibraryResVo>page = new Page<>(pageNum,pageSize);
return super.getBaseMapper().queryQaLibPageList(page,askQuestionLibraryReqVo);
}
}

@ -9,6 +9,9 @@ public class AncillaryItemReqVo {
@ApiModelProperty("流程id")
private String processId;
@ApiModelProperty("疾病id")
private String diseaseId;
@ApiModelProperty("搜索关键字")
private String keyWord;

@ -1,6 +1,7 @@
package com.supervision.vo.ask;
import com.supervision.vo.result.ConfigAncillaryItemVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@ -8,7 +9,16 @@ import java.util.List;
@Data
public class ConfigAncillaryItemResVO {
/**
* id使
*/
private String id;
private String itemName;
@ApiModelProperty("标识 true:已选择 false:未选择")
private boolean flag;
private List<ConfigAncillaryItemVo> itemList;
}

@ -9,4 +9,7 @@ public class AskQuestionLibraryReqVo {
@ApiModelProperty("编码")
private String code;
@ApiModelProperty("疾病id")
private String diseaseId;
}

@ -1,5 +1,6 @@
package com.supervision.vo.manage;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.supervision.model.DiseasePhysical;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

@ -53,7 +53,7 @@ public class DiseaseTreatmentPlanTreeNode {
return;
}
if (StrUtil.isNotEmpty(this.getId())){
this.setFlag(ids.stream().anyMatch(i -> i.equals(this.getId())));
this.setFlag(ids.contains(this.getId()));
}
if (CollUtil.isNotEmpty(this.getChild())){
for (DiseaseTreatmentPlanTreeNode treatmentPlanTreeNode : this.getChild()) {

@ -12,6 +12,9 @@ public class ConfigAncillaryItemVo extends ConfigAncillaryItem {
@ApiModelProperty("执行状态; 0: 未检查 1: 已检查")
private Integer execStatus;
@ApiModelProperty("标识 true:已选择 false:未选择")
private boolean flag;
public ConfigAncillaryItemVo() {
}

@ -34,6 +34,24 @@
from vp_disease_question dq
left join vp_ask_template_question_library atql on dq.question_id = atql.id
left join vp_common_dic cd on atql.dict_id = cd.id
where dq.disease_id = #{diseaseId} order by dq.create_time desc;
where dq.disease_id = #{diseaseId} order by dq.create_time desc
</select>
<select id="queryQaLibPageList" resultType="com.supervision.vo.manage.AskQuestionLibraryResVo">
select atql.id as id,
atql.default_answer,
atql.id as libraryQuestionId,
cd.code as code,
atql.dict_id as dictId,
atql.question as question,
cd.name_zh_path as nameZhPath
from vp_ask_template_question_library atql
left join vp_common_dic cd on atql.dict_id = cd.id
where not exists(select 1 from vp_disease_question dq where atql.id = dq.question_id and dq.disease_id = #{askQuestionLibrary.diseaseId})
<if test="askQuestionLibrary.code != null and askQuestionLibrary.code != ''">
AND cd.code = #{askQuestionLibrary.code}
</if>
</select>
</mapper>

Loading…
Cancel
Save