diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/diseasemanage/DiseasePhysicalManageController.java b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/diseasemanage/DiseasePhysicalManageController.java index a0723a4d..c800ed52 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/diseasemanage/DiseasePhysicalManageController.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/diseasemanage/DiseasePhysicalManageController.java @@ -52,7 +52,7 @@ public class DiseasePhysicalManageController { @GetMapping("/queryListByDiseaseId") public List queryListByDiseaseId(@RequestParam("diseaseId") String diseaseId) { - return diseasePhysicalManageService.queryListByDiseaseId(diseaseId); + return diseasePhysicalManageService.queryListByDiseaseId(diseaseId,0); } diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/medicalrec/MedicalRecManageController.java b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/medicalrec/MedicalRecManageController.java index 7806f9c4..ea05fc60 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/medicalrec/MedicalRecManageController.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/medicalrec/MedicalRecManageController.java @@ -81,6 +81,12 @@ public class MedicalRecManageController { return medicalRecManageService.queryDiseasePhysicalByCreat(diseaseId); } + @Operation(summary = "查看配置的体格检查项") + @GetMapping("queryDiseasePhysical") + public List queryDiseasePhysical(@Parameter(name = "medicalRecId", description = "病例id") String medicalRecId){ + return medicalRecManageService.queryDiseasePhysical(medicalRecId); + } + @Operation(summary = "创建病历时查看配置的处置计划") @GetMapping("queryDiseaseTreatmentPlanByCreat") public List queryDiseaseTreatmentPlanByCreat(String diseaseId){ diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/service/DiseasePhysicalManageService.java b/virtual-patient-manage/src/main/java/com/supervision/manage/service/DiseasePhysicalManageService.java index ac4b402e..e44f0b72 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/service/DiseasePhysicalManageService.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/service/DiseasePhysicalManageService.java @@ -9,7 +9,7 @@ import java.util.List; public interface DiseasePhysicalManageService { - List queryListByDiseaseId(String diseaseId); + List queryListByDiseaseId(String diseaseId,Integer relationType); DiseasePhysical savePhysical(DiseasePhysical diseasePhysical); diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/service/MedicalRecManageService.java b/virtual-patient-manage/src/main/java/com/supervision/manage/service/MedicalRecManageService.java index 97e46323..8b067869 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/service/MedicalRecManageService.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/service/MedicalRecManageService.java @@ -62,4 +62,6 @@ public interface MedicalRecManageService { Boolean updateMedicalRecAncillary(DiseaseAncillaryReqVo diseaseAncillaryReqVo); List queryDiseaseAncillary(String medicalId); + + List queryDiseasePhysical(String medicalRecId); } diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/DiseasePhysicalManageServiceImpl.java b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/DiseasePhysicalManageServiceImpl.java index decb97be..81b1e3be 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/DiseasePhysicalManageServiceImpl.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/DiseasePhysicalManageServiceImpl.java @@ -37,10 +37,11 @@ public class DiseasePhysicalManageServiceImpl implements DiseasePhysicalManageSe @Override - public List queryListByDiseaseId(String diseaseId) { + public List queryListByDiseaseId(String diseaseId,Integer relationType) { Assert.isTrue(StrUtil.isNotEmpty(diseaseId),"id不能为空"); - List diseasePhysicalResVos = diseasePhysicalService.queryListByDiseaseId(diseaseId); + relationType = Objects.isNull(relationType) ? 0 : relationType; + List diseasePhysicalResVos = diseasePhysicalService.queryListByDiseaseId(diseaseId,relationType); diseasePhysicalResVos.forEach(DiseasePhysicalResVo::populateOther); return diseasePhysicalResVos; @@ -107,7 +108,7 @@ public class DiseasePhysicalManageServiceImpl implements DiseasePhysicalManageSe } // 2. 根据疾病id查询疾病体格检查项 - List diseasePhysicalResVos = diseasePhysicalService.queryListByDiseaseId(diseaseId); + List diseasePhysicalResVos = diseasePhysicalService.queryListByDiseaseId(diseaseId,0); List locationIds = diseasePhysicalResVos.stream().filter(vo->toolId.equals(vo.getToolId())) .map(DiseasePhysical::getLocationId).filter(Objects::nonNull).distinct().collect(Collectors.toList()); diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/MedicalRecManageServiceImpl.java b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/MedicalRecManageServiceImpl.java index 038c14e2..2827b077 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/MedicalRecManageServiceImpl.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/MedicalRecManageServiceImpl.java @@ -150,7 +150,7 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService { @Override public List queryDiseasePhysicalByCreat(String diseaseId) { - return diseasePhysicalManageService.queryListByDiseaseId(diseaseId); + return diseasePhysicalManageService.queryListByDiseaseId(diseaseId,0); } @Override @@ -245,7 +245,7 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService { // 辅助检查 medicalRecInfoVO.setAncillaryList(diseaseAncillaryManageService.queryListByDiseaseId(medicalRec.getDiseaseId(),0)); // 体格检查 - medicalRecInfoVO.setPhysicalList(diseasePhysicalManageService.queryListByDiseaseId(medicalRec.getDiseaseId())); + medicalRecInfoVO.setPhysicalList(diseasePhysicalManageService.queryListByDiseaseId(medicalRec.getDiseaseId(),0)); // 处置计划 medicalRecInfoVO.setTreatmentPlanList(diseaseTreatmentPlanManageService.queryListByDiseaseId(medicalRec.getDiseaseId())); // 问答策略 @@ -502,20 +502,35 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService { } @Override - public List queryDiseaseAncillary(String medicalId) { - // 在病历没有保存病历与辅助检查的关联数据时,直接通过medicalId不能够查询到数据,这个时候用对应疾病的数据 - List diseaseAncillaryResVos = diseaseAncillaryManageService.queryListByDiseaseId(medicalId,1); + public List queryDiseaseAncillary(String medicalRecId) { + // 在病历没有保存病历与辅助检查的关联数据时,直接通过medicalId不能够查询到数据,这个时候使用对应疾病的数据 + List diseaseAncillaryResVos = diseaseAncillaryManageService.queryListByDiseaseId(medicalRecId,1); if (CollUtil.isNotEmpty(diseaseAncillaryResVos)) { return diseaseAncillaryResVos; } log.info("queryDiseaseAncillary:未找到该病历辅助检查数据,使用对应疾病辅助检查数据"); - MedicalRec medicalRec = medicalRecService.getById(medicalId); + MedicalRec medicalRec = medicalRecService.getById(medicalRecId); Assert.notNull(medicalRec, "未找到该病历"); Assert.notEmpty(medicalRec.getDiseaseId(), "未配置疾病信息"); return diseaseAncillaryManageService.queryListByDiseaseId(medicalRec.getDiseaseId(),0); } + @Override + public List queryDiseasePhysical(String medicalRecId) { + // 在病历没有保存病历与体格检查的关联数据时,直接通过medicalId不能够查询到数据,这个时候使用对应疾病的数据 + List diseasePhysicalResVos = diseasePhysicalManageService.queryListByDiseaseId(medicalRecId,1); + if (CollUtil.isNotEmpty(diseasePhysicalResVos)) { + return diseasePhysicalResVos; + } + log.info("queryDiseasePhysical:未找到该病历体格检查数据,使用对应疾病体格检查数据"); + MedicalRec medicalRec = medicalRecService.getById(medicalRecId); + Assert.notNull(medicalRec, "未找到该病历"); + Assert.notEmpty(medicalRec.getDiseaseId(), "未配置疾病信息"); + + return diseasePhysicalManageService.queryListByDiseaseId(medicalRec.getDiseaseId(),0); + } + private void saveMedicalRecAssert(MedicalRecInfoReVo reqVO){ Assert.notEmpty(reqVO.getId(), "id不能为空"); Assert.notEmpty(reqVO.getPatientId(),"病人id不能为空"); diff --git a/virtual-patient-model/src/main/java/com/supervision/mapper/DiseasePhysicalMapper.java b/virtual-patient-model/src/main/java/com/supervision/mapper/DiseasePhysicalMapper.java index a8162b1f..a1104b31 100644 --- a/virtual-patient-model/src/main/java/com/supervision/mapper/DiseasePhysicalMapper.java +++ b/virtual-patient-model/src/main/java/com/supervision/mapper/DiseasePhysicalMapper.java @@ -15,7 +15,7 @@ import java.util.List; */ public interface DiseasePhysicalMapper extends BaseMapper { - List queryListByDiseaseId(@Param("diseaseId") String diseaseId); + List queryListByDiseaseId(@Param("diseaseId") String diseaseId,@Param("relationType")Integer relationType); } diff --git a/virtual-patient-model/src/main/java/com/supervision/service/DiseasePhysicalService.java b/virtual-patient-model/src/main/java/com/supervision/service/DiseasePhysicalService.java index 9b180b22..eb977820 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/DiseasePhysicalService.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/DiseasePhysicalService.java @@ -13,5 +13,5 @@ import java.util.List; */ public interface DiseasePhysicalService extends IService { - List queryListByDiseaseId(String diseaseId); + List queryListByDiseaseId(String diseaseId,Integer relationType); } diff --git a/virtual-patient-model/src/main/java/com/supervision/service/impl/DiseasePhysicalServiceImpl.java b/virtual-patient-model/src/main/java/com/supervision/service/impl/DiseasePhysicalServiceImpl.java index 2e34e979..5e99997c 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/impl/DiseasePhysicalServiceImpl.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/impl/DiseasePhysicalServiceImpl.java @@ -19,9 +19,9 @@ public class DiseasePhysicalServiceImpl extends ServiceImpl queryListByDiseaseId(String diseaseId) { + public List queryListByDiseaseId(String diseaseId,Integer relationType) { - return super.getBaseMapper().queryListByDiseaseId(diseaseId); + return super.getBaseMapper().queryListByDiseaseId(diseaseId,relationType); } } diff --git a/virtual-patient-model/src/main/resources/mapper/DiseasePhysicalMapper.xml b/virtual-patient-model/src/main/resources/mapper/DiseasePhysicalMapper.xml index 6376f967..e0eff8cc 100644 --- a/virtual-patient-model/src/main/resources/mapper/DiseasePhysicalMapper.xml +++ b/virtual-patient-model/src/main/resources/mapper/DiseasePhysicalMapper.xml @@ -59,6 +59,10 @@ from vp_disease_physical dp left join vp_config_physical_tool cpt on dp.tool_id = cpt.id left join vp_config_physical_location cpl on dp.location_id = cpl.id - where dp.disease_id = #{diseaseId} order by dp.create_time desc + where dp.disease_id = #{diseaseId} + + AND dp.relation_type = #{relationType} + + order by dp.create_time desc diff --git a/virtual-patient-web/src/main/java/com/supervision/service/impl/AskDiagnosisResultServiceImpl.java b/virtual-patient-web/src/main/java/com/supervision/service/impl/AskDiagnosisResultServiceImpl.java index 158bfd6f..1463d1c6 100644 --- a/virtual-patient-web/src/main/java/com/supervision/service/impl/AskDiagnosisResultServiceImpl.java +++ b/virtual-patient-web/src/main/java/com/supervision/service/impl/AskDiagnosisResultServiceImpl.java @@ -132,7 +132,7 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService basisIdentificationResultResVO.setIdentificationDiagnosis(medicalRec.getDifferentialDiagnosisCriteria()); // 2.2 获取体格检查 List physicalRecordList = diagnosisPhysicalRecordService.queryPhysicalResultByProcessId(processId); - List diseasePhysicalResVos = diseasePhysicalService.queryListByDiseaseId(medicalRec.getDiseaseId()); + List diseasePhysicalResVos = diseasePhysicalService.queryListByDiseaseId(medicalRec.getDiseaseId(),0); List nodeList = physicalRecordMergeListsIdentification(physicalRecordList, diseasePhysicalResVos); @@ -152,7 +152,7 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService basisConfirmResultResVO.setConfirmingDiagnosis(medicalRec.getConfirmDiagnosisCriteria()); // 2.2 获取体格检查的证实诊断依据 List physicalRecordList = diagnosisPhysicalRecordService.queryPhysicalResultByProcessId(processId); - List diseasePhysicalResVos = diseasePhysicalService.queryListByDiseaseId(medicalRec.getDiseaseId()); + List diseasePhysicalResVos = diseasePhysicalService.queryListByDiseaseId(medicalRec.getDiseaseId(),0); List nodeList = physicalRecordMergeListsConfirm(physicalRecordList, diseasePhysicalResVos); @@ -179,7 +179,7 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService // 2.2 获取体格检查 List physicalRecordList = diagnosisPhysicalRecordService.queryPhysicalResultByProcessId(process.getId()); - List diseasePhysicalResVos = diseasePhysicalService.queryListByDiseaseId(medicalRec.getDiseaseId()); + List diseasePhysicalResVos = diseasePhysicalService.queryListByDiseaseId(medicalRec.getDiseaseId(),0); basisDiagnosisNodeResVOS.addAll(physicalRecordMergeListsBasisPrimary(physicalRecordList, diseasePhysicalResVos));