diff --git a/virtual-patient-model/src/main/java/com/supervision/mapper/DiagnosisResultMapper.java b/virtual-patient-model/src/main/java/com/supervision/mapper/DiagnosisResultMapper.java deleted file mode 100644 index 04215e53..00000000 --- a/virtual-patient-model/src/main/java/com/supervision/mapper/DiagnosisResultMapper.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.supervision.mapper; - -import com.supervision.model.DiagnosisResult; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; - -/** -* @author flevance -* @description 针对表【vp_diagnosis_result(诊断结果)】的数据库操作Mapper -* @createDate 2023-10-20 17:19:21 -* @Entity com.supervision.model.DiagnosisResult -*/ -public interface DiagnosisResultMapper extends BaseMapper { - -} - - - - diff --git a/virtual-patient-model/src/main/java/com/supervision/model/DiagnosisResult.java b/virtual-patient-model/src/main/java/com/supervision/model/DiagnosisResult.java deleted file mode 100644 index dafe12e3..00000000 --- a/virtual-patient-model/src/main/java/com/supervision/model/DiagnosisResult.java +++ /dev/null @@ -1,85 +0,0 @@ -package com.supervision.model; - -import com.baomidou.mybatisplus.annotation.IdType; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; -import com.baomidou.mybatisplus.annotation.TableName; -import java.io.Serializable; -import java.time.LocalDateTime; -import java.util.List; - -import com.supervision.handler.StringListTypeHandler; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -/** - * 诊断结果 - * @TableName vp_diagnosis_result - */ -@TableName(value ="vp_diagnosis_result",autoResultMap = true) -@Data -@ApiModel -public class DiagnosisResult implements Serializable { - /** - * 主键 - */ - @TableId - private String id; - - /** - * 诊断进程ID - */ - @ApiModelProperty("诊断进程ID") - private String processId; - - /** - * 最终诊断结果 - */ - @ApiModelProperty("最终诊断结果") - @TableField(typeHandler = StringListTypeHandler.class) - private List finalDiagnosis; - - /** - * 治疗计划 - */ - @ApiModelProperty("治疗计划") - private String treatmentPlan; - - /** - * 治疗计划类型(0门诊 1住院) - */ - @ApiModelProperty("治疗计划类型(0门诊 1住院)") - private Integer treatmentPlanType; - - /** - * 论证诊断 - */ - @ApiModelProperty("论证诊断") - private String proveDiagnosisDesc; - - /** - * 创建人ID - */ - private String createUserId; - - /** - * 创建时间 - */ - private LocalDateTime createTime; - - /** - * 更新人 - */ - private String updateUserId; - - /** - * 更新时间 - */ - private LocalDateTime updateTime; - - @TableField(exist = false) - private static final long serialVersionUID = 1L; - - -} \ No newline at end of file diff --git a/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisResultService.java b/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisResultService.java deleted file mode 100644 index fcd36aa4..00000000 --- a/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisResultService.java +++ /dev/null @@ -1,13 +0,0 @@ -package com.supervision.service; - -import com.supervision.model.DiagnosisResult; -import com.baomidou.mybatisplus.extension.service.IService; - -/** -* @author flevance -* @description 针对表【vp_diagnosis_result(诊断结果)】的数据库操作Service -* @createDate 2023-10-20 17:19:21 -*/ -public interface DiagnosisResultService extends IService { - -} diff --git a/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisResultServiceImpl.java b/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisResultServiceImpl.java deleted file mode 100644 index a70e1ccd..00000000 --- a/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisResultServiceImpl.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.supervision.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.supervision.model.DiagnosisResult; -import com.supervision.service.DiagnosisResultService; -import com.supervision.mapper.DiagnosisResultMapper; -import org.springframework.stereotype.Service; - -/** -* @author flevance -* @description 针对表【vp_diagnosis_result(诊断结果)】的数据库操作Service实现 -* @createDate 2023-10-20 17:19:21 -*/ -@Service -public class DiagnosisResultServiceImpl extends ServiceImpl - implements DiagnosisResultService{ - -} - - - - diff --git a/virtual-patient-model/src/main/resources/mapper/DiagnosisResultMapper.xml b/virtual-patient-model/src/main/resources/mapper/DiagnosisResultMapper.xml deleted file mode 100644 index e1543c96..00000000 --- a/virtual-patient-model/src/main/resources/mapper/DiagnosisResultMapper.xml +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - id - ,process_id,final_diagnosis, - treatment_plan,prove_diagnosis_desc,create_user_id, - create_time,update_user_id,update_time - - diff --git a/virtual-patient-web/src/main/java/com/supervision/controller/AskDiagnosisResultController.java b/virtual-patient-web/src/main/java/com/supervision/controller/AskDiagnosisResultController.java index 33ccdc41..313e5b9e 100644 --- a/virtual-patient-web/src/main/java/com/supervision/controller/AskDiagnosisResultController.java +++ b/virtual-patient-web/src/main/java/com/supervision/controller/AskDiagnosisResultController.java @@ -8,7 +8,7 @@ import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; -@Api(tags = "问诊结束") +@Api(tags = "评估详情") @RestController @RequestMapping("/askDiagnosisResult") @RequiredArgsConstructor @@ -16,12 +16,6 @@ public class AskDiagnosisResultController { private final AskDiagnosisResultService askDiagnosisResultService; - @ApiOperation("结束问诊") - @PostMapping("finishAsk") - public void finishAsk(@RequestBody FinishAskReqVO reqVO){ - askDiagnosisResultService.finishAsk(reqVO); - } - @ApiOperation("查询最终诊断结果") @GetMapping("queryDiagnosisResult") public DiagnosisResultResVO queryDiagnosisResult(String processId){ diff --git a/virtual-patient-web/src/main/java/com/supervision/pojo/vo/FinishAskReqVO.java b/virtual-patient-web/src/main/java/com/supervision/pojo/vo/FinishAskReqVO.java index 55e6b583..3e5f157f 100644 --- a/virtual-patient-web/src/main/java/com/supervision/pojo/vo/FinishAskReqVO.java +++ b/virtual-patient-web/src/main/java/com/supervision/pojo/vo/FinishAskReqVO.java @@ -9,10 +9,4 @@ import lombok.Data; public class FinishAskReqVO { private String processId; - - @ApiModelProperty("治疗计划类型(0门诊 1住院)") - private Integer treatmentPlanType; - - @ApiModelProperty("治疗计划") - private String treatmentPlan; } diff --git a/virtual-patient-web/src/main/java/com/supervision/service/AskDiagnosisResultService.java b/virtual-patient-web/src/main/java/com/supervision/service/AskDiagnosisResultService.java index c9771f84..b76ce9e6 100644 --- a/virtual-patient-web/src/main/java/com/supervision/service/AskDiagnosisResultService.java +++ b/virtual-patient-web/src/main/java/com/supervision/service/AskDiagnosisResultService.java @@ -6,7 +6,5 @@ import org.springframework.web.bind.annotation.RequestBody; public interface AskDiagnosisResultService { - void finishAsk(FinishAskReqVO reqVO); - DiagnosisResultResVO queryDiagnosisResult(String processId); } 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 3dc70412..098c5d81 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 @@ -28,8 +28,6 @@ import java.util.stream.Collectors; @RequiredArgsConstructor public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService { - private final DiagnosisResultService diagnosisResultService; - private final DiagnosisPrimaryService diagnosisPrimaryService; private final AskPatientAnswerService askPatientAnswerService; @@ -54,35 +52,9 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService private final DiseaseTreatmentPlanDrugService diseaseTreatmentPlanDrugService; - @Override - @Transactional(rollbackFor = Exception.class) - public void finishAsk(FinishAskReqVO reqVO) { - // 首先保存诊断结果 - DiagnosisResult diagnosisResult = new DiagnosisResult(); - diagnosisResult.setProcessId(reqVO.getProcessId()); - // 最终诊断结果,从初步诊断中获取 - List list = diagnosisPrimaryService.lambdaQuery() - .eq(DiagnosisPrimary::getProcessId, reqVO.getProcessId()) - .eq(DiagnosisPrimary::getExcludeFlag, 0) - .list(); - if (CollectionUtil.isEmpty(list)) { - throw new BusinessException("您还未进行有效的初步诊断!"); - } - diagnosisResult.setFinalDiagnosis(list.stream().map(DiagnosisPrimary::getPrimaryDiagnosisId).collect(Collectors.toList())); - diagnosisResult.setTreatmentPlanType(reqVO.getTreatmentPlanType()); - diagnosisResult.setTreatmentPlan(reqVO.getTreatmentPlan()); - diagnosisResultService.save(diagnosisResult); - - // 修改流程状态 - processService.lambdaUpdate().set(Process::getStatus, 2).set(Process::getFinishAskTime,LocalDateTime.now()) - .eq(Process::getId, reqVO.getProcessId()).update(); - } @Override public DiagnosisResultResVO queryDiagnosisResult(String processId) { - // 首先查询到结果 - DiagnosisResult diagnosisResult = diagnosisResultService.lambdaQuery() - .eq(DiagnosisResult::getProcessId, processId).last("limit 1").oneOpt().orElseThrow(() -> new BusinessException("未找到评估结果")); DiagnosisResultResVO diagnosisResultResVO = new DiagnosisResultResVO(); diagnosisResultResVO.setId(processId); Process process = processService.getById(processId); @@ -90,7 +62,7 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService MedicalRec medicalRec = medicalRecService.getById(process.getMedicalRecId()); List diseasesList = diseaseService.listDiseaseWithType(medicalRec.getDiseaseId()); // 1.生成预期诊断结果 - diagnosisResultResVO.setExpertDiagnosisResult(creatExpertDiagnosisResult(medicalRec, diagnosisResult, diseasesList)); + diagnosisResultResVO.setExpertDiagnosisResult(creatExpertDiagnosisResult(medicalRec, diseasesList, processId)); // 2.生成初步诊断依据 diagnosisResultResVO.setBasisPrimaryResultResVO(createBasisPrimaryResult(patient, medicalRec, process)); // 3.生成证实诊断依据 @@ -269,12 +241,18 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService /** * 预期诊断结果 */ - private ExpertDiagnosisResultResVO creatExpertDiagnosisResult(MedicalRec medicalRec, DiagnosisResult diagnosisResult, List diseasesList) { + private ExpertDiagnosisResultResVO creatExpertDiagnosisResult(MedicalRec medicalRec, List diseasesList, String processId) { ExpertDiagnosisResultResVO expertDiagnosisResultResVO = new ExpertDiagnosisResultResVO(); expertDiagnosisResultResVO.setDiagnosis(medicalRec.getSymptoms()); Set expertDiseaseIdSet = diseasesList.stream().map(Disease::getId).collect(Collectors.toSet()); - List userDiagnosisDiseaseList = CollUtil.isEmpty(diagnosisResult.getFinalDiagnosis()) ? CollUtil.newArrayList() - : diseaseService.listByIds(diagnosisResult.getFinalDiagnosis()); + // 从vp_diagnosis_primary中找到确认诊断时,确认的 + List userPrimaryDiseaseList = diagnosisPrimaryService.lambdaQuery() + .eq(DiagnosisPrimary::getProcessId, processId) + // 确认的 + .eq(DiagnosisPrimary::getExcludeFlag, 0).list(); + + List userDiagnosisDiseaseList = CollUtil.isEmpty(userPrimaryDiseaseList) ? CollUtil.newArrayList() + : diseaseService.listByIds(userPrimaryDiseaseList.stream().map(DiagnosisPrimary::getPrimaryDiagnosisId).collect(Collectors.toList())); // 用户的诊断 expertDiagnosisResultResVO.setUserDiagnosisResult(userDiagnosisDiseaseList.stream().map(e -> { DiagnosisDiseaseResultNodeVO userNode = new DiagnosisDiseaseResultNodeVO();