From d7d88712e3dd774133c9ee1a729fba997e98302d Mon Sep 17 00:00:00 2001 From: xueqingkun Date: Wed, 19 Jun 2024 14:17:37 +0800 Subject: [PATCH] =?UTF-8?q?1:=20=E4=BF=AE=E6=94=B9=E8=A1=A8=20vp=5Fdisease?= =?UTF-8?q?=5Ftreatment=5Fplan=E7=9A=84relationType=E5=AD=97=E6=AE=B5?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E4=B8=BAInteger?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DiseaseTreatmentPlanManageController.java | 2 +- .../MedicalRecManageController.java | 26 ++++++++++++++++++ .../DiseaseTreatmentPlanManageService.java | 2 +- .../service/MedicalRecManageService.java | 4 +++ ...DiseaseTreatmentPlanManageServiceImpl.java | 7 ++--- .../impl/MedicalRecManageServiceImpl.java | 27 +++++++++++++++++-- .../mapper/DiseaseTreatmentPlanMapper.java | 2 +- .../service/DiseaseTreatmentPlanService.java | 2 +- .../impl/DiseaseTreatmentPlanServiceImpl.java | 4 +-- .../mapper/DiseaseTreatmentPlanMapper.xml | 3 +++ .../impl/AskDiagnosisResultServiceImpl.java | 4 +-- 11 files changed, 70 insertions(+), 13 deletions(-) diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/diseasemanage/DiseaseTreatmentPlanManageController.java b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/diseasemanage/DiseaseTreatmentPlanManageController.java index b1e68136..4eb4bc88 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/controller/diseasemanage/DiseaseTreatmentPlanManageController.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/controller/diseasemanage/DiseaseTreatmentPlanManageController.java @@ -46,7 +46,7 @@ public class DiseaseTreatmentPlanManageController { @GetMapping("/queryListByDiseaseId") public List queryListByDiseaseId(String diseaseId) { - List diseaseTreatmentPlanResVos = diseaseTreatmentPlanManageService.queryListByDiseaseId(diseaseId); + List diseaseTreatmentPlanResVos = diseaseTreatmentPlanManageService.queryListByDiseaseId(diseaseId,0); // 前端大哥强烈要求把treatmentPlanId 转换为 firstMeasuresId diseaseTreatmentPlanResVos.forEach(vo -> { if (CollUtil.isEmpty(vo.getDrugIds())) { 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 fc16e5d5..72f66df4 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 @@ -1,5 +1,6 @@ package com.supervision.manage.controller.medicalrec; +import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.supervision.manage.pojo.vo.*; import com.supervision.manage.service.MedicalRecManageService; @@ -207,4 +208,29 @@ public class MedicalRecManageController { return medicalRecManageService.updateDiagnosisCriteria(diseaseAncillaryReqVo); } + + @Operation(summary = "根据病历id查询疾病处置信息列表") + @GetMapping("/queryListByDiseaseId") + public List queryListByDiseaseId(@Parameter(name = "medicalRecId", description = "病例id") String medicalRecId) { + + List diseaseTreatmentPlanResVos = medicalRecManageService.queryListByDiseaseId(medicalRecId); + // 前端大哥强烈要求把treatmentPlanId 转换为 firstMeasuresId + diseaseTreatmentPlanResVos.forEach(vo -> { + if (CollUtil.isEmpty(vo.getDrugIds())) { + vo.setFirstMeasuresId(vo.getTreatmentPlanId()); + } + }); + + return diseaseTreatmentPlanResVos; + + } + + @Operation(summary = "修改处置计划") + @PutMapping("/updateDiseaseTreatmentPlan") + public boolean updateDiseaseTreatmentPlan(@RequestBody DiseaseTreatmentPlanReqVo diseaseTreatmentPlan) { + // 适配前端传入数据 + diseaseTreatmentPlan.setTreatmentPlanId(diseaseTreatmentPlan.getFirstMeasuresId()); + return medicalRecManageService.updateDiseaseTreatmentPlan(diseaseTreatmentPlan); + + } } diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/service/DiseaseTreatmentPlanManageService.java b/virtual-patient-manage/src/main/java/com/supervision/manage/service/DiseaseTreatmentPlanManageService.java index abcf5409..fcb21f05 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/service/DiseaseTreatmentPlanManageService.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/service/DiseaseTreatmentPlanManageService.java @@ -9,7 +9,7 @@ import java.util.List; public interface DiseaseTreatmentPlanManageService { - List queryListByDiseaseId(String diseaseId); + List queryListByDiseaseId(String diseaseId,Integer relationType); DiseaseTreatmentPlan saveTreatmentPlan(DiseaseTreatmentPlanReqVo diseaseTreatmentPlan); 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 d2bfc2d8..9951c877 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 @@ -66,4 +66,8 @@ public interface MedicalRecManageService { List queryDiseasePhysical(String medicalRecId); Boolean updateDiagnosisCriteria(DiagnosisCriteriaReqVo diseaseAncillaryReqVo); + + List queryListByDiseaseId(String medicalRecId); + + boolean updateDiseaseTreatmentPlan(DiseaseTreatmentPlanReqVo diseaseTreatmentPlan); } diff --git a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/DiseaseTreatmentPlanManageServiceImpl.java b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/DiseaseTreatmentPlanManageServiceImpl.java index 071880b4..f6b8ac16 100644 --- a/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/DiseaseTreatmentPlanManageServiceImpl.java +++ b/virtual-patient-manage/src/main/java/com/supervision/manage/service/impl/DiseaseTreatmentPlanManageServiceImpl.java @@ -44,10 +44,11 @@ public class DiseaseTreatmentPlanManageServiceImpl implements DiseaseTreatmentPl private final CommonDicService commonDicService; @Override - public List queryListByDiseaseId(String diseaseId) { + public List queryListByDiseaseId(String diseaseId,Integer relationType) { Assert.notEmpty(diseaseId,"疾病id不能为空"); - List diseaseTreatmentPlanResVos = diseaseTreatmentPlanService.queryListByDiseaseId(diseaseId); + relationType = Objects.isNull(relationType) ? 0 : relationType; + List diseaseTreatmentPlanResVos = diseaseTreatmentPlanService.queryListByDiseaseId(diseaseId,relationType); if (CollUtil.isEmpty(diseaseTreatmentPlanResVos)){ return diseaseTreatmentPlanResVos; @@ -181,7 +182,7 @@ public class DiseaseTreatmentPlanManageServiceImpl implements DiseaseTreatmentPl DiseaseTreatmentPlanTreeNode rootNode = new DiseaseTreatmentPlanTreeNode(treatmentPlanTreeNode); // 2.根据疾病id查询疾病处置计划信息 - List diseaseTreatmentPlanResVos = this.queryListByDiseaseId(diseaseId); + List diseaseTreatmentPlanResVos = this.queryListByDiseaseId(diseaseId,0); // 3. 初始化flag if (CollUtil.isNotEmpty(diseaseTreatmentPlanResVos)){ 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 67270545..07963057 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 @@ -155,7 +155,7 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService { @Override public List queryDiseaseTreatmentPlanByCreat(String diseaseId) { - return diseaseTreatmentPlanManageService.queryListByDiseaseId(diseaseId); + return diseaseTreatmentPlanManageService.queryListByDiseaseId(diseaseId,0); } @Override @@ -247,7 +247,7 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService { // 体格检查 medicalRecInfoVO.setPhysicalList(diseasePhysicalManageService.queryListByDiseaseId(medicalRec.getDiseaseId(),0)); // 处置计划 - medicalRecInfoVO.setTreatmentPlanList(diseaseTreatmentPlanManageService.queryListByDiseaseId(medicalRec.getDiseaseId())); + medicalRecInfoVO.setTreatmentPlanList(diseaseTreatmentPlanManageService.queryListByDiseaseId(medicalRec.getDiseaseId(),0)); // 问答策略 List medicalRecQaVOS = queryMedicalRecQaInfo(id); Map> qaListMap = medicalRecQaVOS.stream().collect(Collectors.groupingBy(MedicalRecQaVO::getAnswerType)); @@ -545,6 +545,29 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService { } + @Override + public List queryListByDiseaseId(String medicalRecId) { + // 在病历没有保存病历与处置计划的关联数据时,直接通过medicalId不能够查询到数据,这个时候使用对应疾病的数据 + List diseaseTreatmentPlanResVos = diseaseTreatmentPlanManageService.queryListByDiseaseId(medicalRecId, 1); + if (CollUtil.isNotEmpty(diseaseTreatmentPlanResVos)) { + return diseaseTreatmentPlanResVos; + } + log.info("queryDiseasePhysical:未找到该病历处置计划数据,使用对应疾病体格检查数据"); + MedicalRec medicalRec = medicalRecService.getById(medicalRecId); + Assert.notNull(medicalRec, "未找到该病历"); + Assert.notEmpty(medicalRec.getDiseaseId(), "未配置疾病信息"); + + return diseaseTreatmentPlanManageService.queryListByDiseaseId(medicalRec.getDiseaseId(),0); + } + + @Override + public boolean updateDiseaseTreatmentPlan(DiseaseTreatmentPlanReqVo diseaseTreatmentPlan) { + + Assert.notEmpty(diseaseTreatmentPlan.getId(), "id不能为空"); + + return false; + } + 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/DiseaseTreatmentPlanMapper.java b/virtual-patient-model/src/main/java/com/supervision/mapper/DiseaseTreatmentPlanMapper.java index 91b42894..5cf9d494 100644 --- a/virtual-patient-model/src/main/java/com/supervision/mapper/DiseaseTreatmentPlanMapper.java +++ b/virtual-patient-model/src/main/java/com/supervision/mapper/DiseaseTreatmentPlanMapper.java @@ -15,7 +15,7 @@ import java.util.List; */ public interface DiseaseTreatmentPlanMapper 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/DiseaseTreatmentPlanService.java b/virtual-patient-model/src/main/java/com/supervision/service/DiseaseTreatmentPlanService.java index 83050e6c..37adb86a 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/DiseaseTreatmentPlanService.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/DiseaseTreatmentPlanService.java @@ -14,5 +14,5 @@ import java.util.List; */ public interface DiseaseTreatmentPlanService 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/DiseaseTreatmentPlanServiceImpl.java b/virtual-patient-model/src/main/java/com/supervision/service/impl/DiseaseTreatmentPlanServiceImpl.java index 2feb40a9..bf27ab8d 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/impl/DiseaseTreatmentPlanServiceImpl.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/impl/DiseaseTreatmentPlanServiceImpl.java @@ -19,9 +19,9 @@ import java.util.List; public class DiseaseTreatmentPlanServiceImpl extends ServiceImpl implements DiseaseTreatmentPlanService { @Override - public List 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/DiseaseTreatmentPlanMapper.xml b/virtual-patient-model/src/main/resources/mapper/DiseaseTreatmentPlanMapper.xml index 15d7b8e8..ac203acd 100644 --- a/virtual-patient-model/src/main/resources/mapper/DiseaseTreatmentPlanMapper.xml +++ b/virtual-patient-model/src/main/resources/mapper/DiseaseTreatmentPlanMapper.xml @@ -37,5 +37,8 @@ from vp_disease_treatment_plan dtp left join vp_config_treatment_plan ctp on dtp.treatment_plan_id = ctp.id where dtp.disease_id = #{diseaseId} + + and dtp.relation_type = #{relationType} + 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 1463d1c6..5672c890 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 @@ -96,7 +96,7 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService } // 2. 查询出疾病处置计划(疾病配置的处置计划) - List diseaseTreatmentPlanResVos = diseaseTreatmentPlanService.queryListByDiseaseId(diseaseId); + List diseaseTreatmentPlanResVos = diseaseTreatmentPlanService.queryListByDiseaseId(diseaseId,0); List treatmentPlanId = diseaseTreatmentPlanResVos.stream().map(DiseaseTreatmentPlanResVo::getTreatmentPlanId).distinct().collect(Collectors.toList()); // 3. 查出疾病处置计划用药(疾病配置的用药计划) @@ -455,7 +455,7 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService int userTreatmentPlanCount = userTreatmentPlanRecordList.size(); // 2. 查询出疾病处置计划(疾病配置的处置计划) - List diseaseTreatmentPlanResVos = diseaseTreatmentPlanService.queryListByDiseaseId(process.getDiseaseId()); + List diseaseTreatmentPlanResVos = diseaseTreatmentPlanService.queryListByDiseaseId(process.getDiseaseId(),0); Set treatmentPlanIdSet = diseaseTreatmentPlanResVos.stream().map(DiseaseTreatmentPlanResVo::getTreatmentPlanId).collect(Collectors.toSet()); // 3. 查出疾病处置计划用药(疾病配置的用药计划)