优化,去除answer的patient依赖

dev_2.0.0
liu 1 year ago
parent 8663175bb4
commit bc683dbfae

@ -95,7 +95,6 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService {
askPatientAnswer.setLibraryQuestionId(medicalRecQaVO.getLibraryQuestionId());
askPatientAnswer.setAnswer(medicalRecQaVO.getMedicalRecAnswer());
askPatientAnswer.setMedicalId(medicalRec.getId());
askPatientAnswer.setPatientId(patient.getId());
askPatientAnswer.insert();
}
}
@ -184,7 +183,6 @@ public class MedicalRecManageServiceImpl implements MedicalRecManageService {
askPatientAnswer.setLibraryQuestionId(medicalRecQaVO.getLibraryQuestionId());
askPatientAnswer.setAnswer(medicalRecQaVO.getMedicalRecAnswer());
askPatientAnswer.setMedicalId(medicalRec.getId());
askPatientAnswer.setPatientId(patient.getId());
askPatientAnswer.insert();
}
}

@ -26,11 +26,6 @@ public class AskPatientAnswer extends Model<AskPatientAnswer> implements Seriali
@TableId
private String id;
/**
* ID
*/
private String patientId;
@ApiModelProperty("病例id")
private String medicalId;

@ -6,7 +6,6 @@
<resultMap id="BaseResultMap" type="com.supervision.model.AskPatientAnswer">
<id property="id" column="id" jdbcType="VARCHAR"/>
<result property="patientId" column="patient_id" jdbcType="VARCHAR"/>
<result property="medicalId" column="medical_id" jdbcType="VARCHAR"/>
<result property="libraryQuestionId" column="library_question_id" jdbcType="VARCHAR"/>
<result property="answer" column="answer" jdbcType="VARCHAR"/>
@ -18,7 +17,7 @@
</resultMap>
<sql id="Base_Column_List">
id,patient_id,medical_id,library_question_id,
id,medical_id,library_question_id,
answer,answer_resources_id,create_user_id,
create_time,update_user_id,update_time
</sql>

@ -56,13 +56,12 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
DiagnosisResultResVO diagnosisResultResVO = new DiagnosisResultResVO();
diagnosisResultResVO.setId(processId);
Process process = processService.getById(processId);
Patient patient = patientService.getById(process.getPatientId());
MedicalRec medicalRec = medicalRecService.getById(process.getMedicalRecId());
List<Disease> diseasesList = diseaseService.listDiseaseWithType(medicalRec.getDiseaseId());
// 1.生成预期诊断结果
diagnosisResultResVO.setExpertDiagnosisResult(creatExpertDiagnosisResult(medicalRec, diseasesList, processId));
// 2.生成初步诊断依据
diagnosisResultResVO.setBasisPrimaryResultResVO(createBasisPrimaryResult(patient, medicalRec, process));
diagnosisResultResVO.setBasisPrimaryResultResVO(createBasisPrimaryResult(medicalRec, process));
// 3.生成证实诊断依据
diagnosisResultResVO.setBasisConfirmResultResVO(createBasisConfirmResult(medicalRec, processId));
// 4.生成鉴别诊断依据
@ -180,7 +179,7 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
return basisConfirmResultResVO;
}
private BasisPrimaryResultResVO createBasisPrimaryResult(Patient patient, MedicalRec medicalRec, Process process) {
private BasisPrimaryResultResVO createBasisPrimaryResult( MedicalRec medicalRec, Process process) {
BasisPrimaryResultResVO basisPrimaryResultResVO = new BasisPrimaryResultResVO();
// 初步诊断依据 vp_medical_rec的primarily_diagnosis_criteria
basisPrimaryResultResVO.setPreliminaryDiagnosis(medicalRec.getPrimarilyDiagnosisCriteria());
@ -190,7 +189,7 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
List<DiagnosisQaRecord> qaRecordList = diagnosisQaRecordService.lambdaQuery().eq(DiagnosisQaRecord::getProcessId, process.getId()).list();
if (CollectionUtil.isNotEmpty(qaRecordList)) {
List<AskPatientAnswer> list = askPatientAnswerService.lambdaQuery()
.eq(AskPatientAnswer::getPatientId, patient.getId()).list();
.eq(AskPatientAnswer::getMedicalId, medicalRec.getId()).list();
// 获取配置了答案的项目(配置了答案的,认为是正确,没有配置答案的,走默认回答的,不标记为以正确)
Set<String> requireCheckIdSet = list.stream().map(AskPatientAnswer::getId).collect(Collectors.toSet());
List<BasisDiagnosisNodeResVO> qaList = qaRecordList.stream().map(e -> {

Loading…
Cancel
Save