病历管理代码提交

dev_2.0.0
liu 1 year ago
parent b638a661ef
commit 7bca2c63df

@ -7,6 +7,9 @@ import com.supervision.manage.pojo.vo.MedicalRecInfoVO;
import com.supervision.manage.pojo.vo.MedicalRecManageVO; import com.supervision.manage.pojo.vo.MedicalRecManageVO;
import com.supervision.manage.pojo.vo.MedicalRecQaVO; import com.supervision.manage.pojo.vo.MedicalRecQaVO;
import com.supervision.service.CommonDicService; import com.supervision.service.CommonDicService;
import com.supervision.vo.manage.DiseaseAncillaryResVo;
import com.supervision.vo.manage.DiseasePhysicalResVo;
import com.supervision.vo.manage.DiseaseTreatmentPlanResVo;
import com.supervision.vo.manage.MedicalRecPageResVO; import com.supervision.vo.manage.MedicalRecPageResVO;
import com.supervision.manage.service.MedicalRecManageService; import com.supervision.manage.service.MedicalRecManageService;
import com.supervision.model.Disease; import com.supervision.model.Disease;
@ -27,10 +30,10 @@ public class MedicalRecManageController {
private final MedicalRecManageService medicalRecManageService; private final MedicalRecManageService medicalRecManageService;
@ApiOperation("初步诊断下拉列表联想") @ApiOperation("初步诊断下拉列表联想(这里目前只查单一疾病)")
@GetMapping("queryDiseaseListByKeyWord") @GetMapping("queryDiseaseListByDropList")
public List<Disease> queryDiseaseListByKeyWord(@NotBlank(message = "关键字不能为空") String keyword) { public List<Disease> queryDiseaseListByDropList() {
return medicalRecManageService.queryDiseaseListByKeyWord(keyword); return medicalRecManageService.queryDiseaseListByDropList();
} }
@ApiOperation("病历管理分页查询") @ApiOperation("病历管理分页查询")
@ -48,6 +51,30 @@ public class MedicalRecManageController {
medicalRecManageService.createMedicalRec(reqVO); medicalRecManageService.createMedicalRec(reqVO);
} }
@ApiOperation("创建疾病时可选的的疾病列表")
@GetMapping("queryDiseaseListByCreat")
public List<Disease> queryDiseaseListByCreat() {
return medicalRecManageService.queryDiseaseListByCreat();
}
@ApiOperation("创建病历时查看配置的辅助检查项")
@GetMapping("queryDiseaseAncillaryByCreat")
public List<DiseaseAncillaryResVo> queryDiseaseAncillaryByCreat(String diseaseId){
return medicalRecManageService.queryDiseaseAncillaryByCreat(diseaseId);
}
@ApiOperation("创建病历时查看配置的体格检查项")
@GetMapping("queryDiseasePhysicalByCreat")
public List<DiseasePhysicalResVo> queryDiseasePhysicalByCreat(String diseaseId){
return medicalRecManageService.queryDiseasePhysicalByCreat(diseaseId);
}
@ApiOperation("创建病历时查看配置的处置计划")
@GetMapping("queryDiseaseTreatmentPlanByCreat")
public List<DiseaseTreatmentPlanResVo> queryDiseaseTreatmentPlanByCreat(String diseaseId){
return medicalRecManageService.queryDiseaseTreatmentPlanByCreat(diseaseId);
}
@ApiOperation("创建病历时,应答策略查询问题(目前只支持单一疾病)") @ApiOperation("创建病历时,应答策略查询问题(目前只支持单一疾病)")
@GetMapping("queryQuestionListByCreat") @GetMapping("queryQuestionListByCreat")
public List<MedicalRecQaVO> queryQuestionListByCreat(String diseaseId) { public List<MedicalRecQaVO> queryQuestionListByCreat(String diseaseId) {

@ -4,20 +4,33 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.supervision.manage.pojo.vo.MedicalRecInfoVO; import com.supervision.manage.pojo.vo.MedicalRecInfoVO;
import com.supervision.manage.pojo.vo.MedicalRecManageVO; import com.supervision.manage.pojo.vo.MedicalRecManageVO;
import com.supervision.manage.pojo.vo.MedicalRecQaVO; import com.supervision.manage.pojo.vo.MedicalRecQaVO;
import com.supervision.vo.manage.DiseaseAncillaryResVo;
import com.supervision.vo.manage.DiseasePhysicalResVo;
import com.supervision.vo.manage.DiseaseTreatmentPlanResVo;
import com.supervision.vo.manage.MedicalRecPageResVO; import com.supervision.vo.manage.MedicalRecPageResVO;
import com.supervision.model.Disease; import com.supervision.model.Disease;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import java.util.List; import java.util.List;
public interface MedicalRecManageService { public interface MedicalRecManageService {
List<Disease> queryDiseaseListByKeyWord(String keyword); List<Disease> queryDiseaseListByDropList();
List<Disease> queryDiseaseListByCreat();
IPage<MedicalRecPageResVO> queryMedicalRecManagePage(String selfDescKeyword, String gender, String diseaseId, Integer pageNum, Integer pageSize); IPage<MedicalRecPageResVO> queryMedicalRecManagePage(String selfDescKeyword, String gender, String diseaseId, Integer pageNum, Integer pageSize);
void createMedicalRec(MedicalRecManageVO reqVO); void createMedicalRec(MedicalRecManageVO reqVO);
List<DiseaseAncillaryResVo> queryDiseaseAncillaryByCreat(String diseaseId);
List<DiseasePhysicalResVo> queryDiseasePhysicalByCreat(String diseaseId);
List<DiseaseTreatmentPlanResVo> queryDiseaseTreatmentPlanByCreat(String diseaseId);
List<MedicalRecQaVO> queryQuestionListByCreat(String diseaseId); List<MedicalRecQaVO> queryQuestionListByCreat(String diseaseId);
void modifyMedicalRec(MedicalRecManageVO reqVO); void modifyMedicalRec(MedicalRecManageVO reqVO);

@ -15,6 +15,9 @@ import com.supervision.manage.service.DiseasePhysicalManageService;
import com.supervision.manage.service.DiseaseTreatmentPlanManageService; import com.supervision.manage.service.DiseaseTreatmentPlanManageService;
import com.supervision.model.*; import com.supervision.model.*;
import com.supervision.service.*; import com.supervision.service.*;
import com.supervision.vo.manage.DiseaseAncillaryResVo;
import com.supervision.vo.manage.DiseasePhysicalResVo;
import com.supervision.vo.manage.DiseaseTreatmentPlanResVo;
import com.supervision.vo.manage.MedicalRecPageResVO; import com.supervision.vo.manage.MedicalRecPageResVO;
import com.supervision.manage.service.MedicalRecManageService; import com.supervision.manage.service.MedicalRecManageService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
@ -51,9 +54,15 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService {
private final DiseaseTreatmentPlanManageService diseaseTreatmentPlanManageService; private final DiseaseTreatmentPlanManageService diseaseTreatmentPlanManageService;
public List<Disease> queryDiseaseListByKeyWord(String keyword) { public List<Disease> queryDiseaseListByDropList() {
// 注意,这里不支持查询复杂疾病,如果需要支持复杂疾病,这里需要单独进行改造 // 注意,这里不支持查询复杂疾病,如果需要支持复杂疾病,这里需要单独进行改造
return diseaseService.lambdaQuery().eq(Disease::getDiseaseType, 0).like(Disease::getDiseaseName, keyword).list(); return diseaseService.lambdaQuery().eq(Disease::getDiseaseType, 0).list();
}
@Override
public List<Disease> queryDiseaseListByCreat() {
// 注意,这里不支持查询复杂疾病,如果需要支持复杂疾病,这里需要单独进行改造
return diseaseService.lambdaQuery().eq(Disease::getDiseaseType, 0).list();
} }
@Override @Override
@ -91,6 +100,22 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService {
} }
} }
@Override
public List<DiseaseAncillaryResVo> queryDiseaseAncillaryByCreat(String diseaseId) {
// 辅助检查
return diseaseAncillaryManageService.queryListByDiseaseId(diseaseId);
}
@Override
public List<DiseasePhysicalResVo> queryDiseasePhysicalByCreat(String diseaseId) {
return diseasePhysicalManageService.queryListByDiseaseId(diseaseId);
}
@Override
public List<DiseaseTreatmentPlanResVo> queryDiseaseTreatmentPlanByCreat(String diseaseId) {
return diseaseTreatmentPlanManageService.queryListByDiseaseId(diseaseId);
}
@Override @Override
public List<MedicalRecQaVO> queryQuestionListByCreat(String diseaseId) { public List<MedicalRecQaVO> queryQuestionListByCreat(String diseaseId) {
// 去vp_disease_question获取 // 去vp_disease_question获取

@ -2,7 +2,6 @@ package com.supervision.vo.manage;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import sun.dc.pr.PRError;
import java.util.List; import java.util.List;

@ -40,6 +40,7 @@
dp.tool_id as toolId, dp.tool_id as toolId,
cpl.parent_id as toolParentId, cpl.parent_id as toolParentId,
dp.location_id as locationId, dp.location_id as locationId,
cpl.location_name as locationName,
cpt.tool_name as toolName, cpt.tool_name as toolName,
cpt.type as toolType, cpt.type as toolType,
dp.primarily_diagnosis_criteria_flag as primarilyDiagnosisCriteriaFlag, dp.primarily_diagnosis_criteria_flag as primarilyDiagnosisCriteriaFlag,

@ -52,7 +52,7 @@
<if test="gender != null and gender != ''"> <if test="gender != null and gender != ''">
AND t2.gender = #{gender} AND t2.gender = #{gender}
</if> </if>
<if test="gender != null and gender != ''"> <if test="diseaseId != null and diseaseId != ''">
AND t1.disease_id = #{diseaseId} AND t1.disease_id = #{diseaseId}
</if> </if>
</where> </where>

@ -96,8 +96,8 @@ public class AskServiceImpl implements AskService {
if (ObjectUtil.isEmpty(askPatientAnswer)) { if (ObjectUtil.isEmpty(askPatientAnswer)) {
log.info("{}:病历配置,未从AskPatientAnswer中找到回答结果,尝试回答默认答案", rasaResult); log.info("{}:病历配置,未从AskPatientAnswer中找到回答结果,尝试回答默认答案", rasaResult);
// 首先看看default里面是不是存在,如果存在,就从default里面去找 // 首先看看default里面是不是存在,如果存在,就从default里面去找
if (CollUtil.isNotEmpty(library.getDefaultAnswer())) { if (StrUtil.isNotEmpty(library.getDefaultAnswer())) {
String resText = library.getDefaultAnswer().get(RandomUtil.randomInt(0, library.getDefaultAnswer().size())); String resText = library.getDefaultAnswer();
HumanUtil.textDriven(resText, roomId); HumanUtil.textDriven(resText, roomId);
// 保存记录 // 保存记录
saveQaRecord(talkReqVO.getProcessId(), "default", library.getId(), talkReqVO.getText(), resText); saveQaRecord(talkReqVO.getProcessId(), "default", library.getId(), talkReqVO.getText(), resText);
@ -110,8 +110,8 @@ public class AskServiceImpl implements AskService {
} else { } else {
if (CollUtil.isEmpty(askPatientAnswer.getAnswer())) { if (CollUtil.isEmpty(askPatientAnswer.getAnswer())) {
log.info("{}:病历配置的回答:{}:为空不为空,但在获取的时候,答案为空,尝试回复默认语句", rasaResult, askPatientAnswer.getId()); log.info("{}:病历配置的回答:{}:为空不为空,但在获取的时候,答案为空,尝试回复默认语句", rasaResult, askPatientAnswer.getId());
if (CollUtil.isNotEmpty(library.getDefaultAnswer())) { if (StrUtil.isNotEmpty(library.getDefaultAnswer())) {
String resText = library.getDefaultAnswer().get(RandomUtil.randomInt(0, library.getDefaultAnswer().size())); String resText = library.getDefaultAnswer();
log.info("{}:病历配置的回答:{}:为空不为空不为空,但在获取的时候,答案为空,开始回复默认语句,默认语句内容:{}", rasaResult, askPatientAnswer.getId(), resText); log.info("{}:病历配置的回答:{}:为空不为空不为空,但在获取的时候,答案为空,开始回复默认语句,默认语句内容:{}", rasaResult, askPatientAnswer.getId(), resText);
HumanUtil.textDriven(resText, roomId); HumanUtil.textDriven(resText, roomId);
// 保存记录 // 保存记录

Loading…
Cancel
Save