diff --git a/virtual-patient-model/src/main/java/com/supervision/model/DiagnosisQaRecord.java b/virtual-patient-model/src/main/java/com/supervision/model/DiagnosisQaRecord.java index 457b0ac1..d8449a79 100644 --- a/virtual-patient-model/src/main/java/com/supervision/model/DiagnosisQaRecord.java +++ b/virtual-patient-model/src/main/java/com/supervision/model/DiagnosisQaRecord.java @@ -34,7 +34,7 @@ public class DiagnosisQaRecord extends Model implements Seria @ApiModelProperty("诊断进程ID") private String processId; - @ApiModelProperty("问答类型:default,patient") + @ApiModelProperty("问答类型:default,patient,如果patient,说明是病历配置的回答,打勾") private String answerType; /** @@ -49,6 +49,12 @@ public class DiagnosisQaRecord extends Model implements Seria @ApiModelProperty("问题") private String question; + /** + * 问题ID + */ + @ApiModelProperty("问题ID") + private String questionLibraryId; + /** * 问题语音文件ID */ diff --git a/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisQaRecordService.java b/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisQaRecordService.java index 3302fd05..b4ec8fce 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisQaRecordService.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisQaRecordService.java @@ -2,6 +2,7 @@ package com.supervision.service; import com.supervision.model.DiagnosisQaRecord; import com.baomidou.mybatisplus.extension.service.IService; +import com.supervision.vo.ask.DiagnosisQaRecordHistoryResVO; import java.util.List; @@ -13,5 +14,5 @@ import java.util.List; public interface DiagnosisQaRecordService extends IService { - List queryByProcessId(String processId); + List queryByProcessId(String processId); } diff --git a/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisQaRecordServiceImpl.java b/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisQaRecordServiceImpl.java index cb05df07..c50536ee 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisQaRecordServiceImpl.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisQaRecordServiceImpl.java @@ -1,12 +1,26 @@ package com.supervision.service.impl; +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.ObjectUtil; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.supervision.model.AskTemplateQuestionLibrary; +import com.supervision.model.CommonDic; import com.supervision.model.DiagnosisQaRecord; +import com.supervision.service.AskTemplateQuestionLibraryService; +import com.supervision.service.CommonDicService; import com.supervision.service.DiagnosisQaRecordService; import com.supervision.mapper.DiagnosisQaRecordMapper; +import com.supervision.vo.ask.DiagnosisQaRecordHistoryResVO; +import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.function.Function; +import java.util.stream.Collectors; /** * @author flevance @@ -14,13 +28,33 @@ import java.util.List; * @createDate 2023-10-20 17:19:21 */ @Service +@RequiredArgsConstructor public class DiagnosisQaRecordServiceImpl extends ServiceImpl implements DiagnosisQaRecordService{ - @Override - public List queryByProcessId(String processId) { + private final CommonDicService commonDicService; - return super.lambdaQuery().eq(DiagnosisQaRecord::getProcessId,processId).list(); + private final AskTemplateQuestionLibraryService askTemplateQuestionLibraryService; + @Override + public List queryByProcessId(String processId) { + + List list = this.lambdaQuery().eq(DiagnosisQaRecord::getProcessId, processId).list(); + + // 根据questionLibraryId找到对应的字典 + Set questionIdList = list.stream().map(DiagnosisQaRecord::getQuestionLibraryId).filter(StrUtil::isNotBlank).collect(Collectors.toSet()); + List askTemplateQuestionLibraryList = askTemplateQuestionLibraryService.listByIds(questionIdList); + Map questionLibraryMap = askTemplateQuestionLibraryList.stream().collect(Collectors.toMap(AskTemplateQuestionLibrary::getId, AskTemplateQuestionLibrary::getDictId)); + List commonDicList = commonDicService.lambdaQuery().eq(CommonDic::getGroupCode, "AQT").list(); + Map dicMap = commonDicList.stream().collect(Collectors.toMap(CommonDic::getId, Function.identity())); + List resVOS = BeanUtil.copyToList(list, DiagnosisQaRecordHistoryResVO.class); + for (DiagnosisQaRecordHistoryResVO resVO : resVOS) { + Long dictId = questionLibraryMap.get(resVO.getQuestionLibraryId()); + if (ObjectUtil.isNotEmpty(dictId)){ + CommonDic commonDic = dicMap.get(dictId); + resVO.setCommonDic(commonDic); + } + } + return resVOS; } } diff --git a/virtual-patient-model/src/main/java/com/supervision/vo/ask/DiagnosisQaRecordHistoryResVO.java b/virtual-patient-model/src/main/java/com/supervision/vo/ask/DiagnosisQaRecordHistoryResVO.java new file mode 100644 index 00000000..95de65ad --- /dev/null +++ b/virtual-patient-model/src/main/java/com/supervision/vo/ask/DiagnosisQaRecordHistoryResVO.java @@ -0,0 +1,14 @@ +package com.supervision.vo.ask; + +import com.supervision.model.CommonDic; +import com.supervision.model.DiagnosisQaRecord; +import lombok.Data; +import lombok.EqualsAndHashCode; + +@EqualsAndHashCode(callSuper = true) +@Data +public class DiagnosisQaRecordHistoryResVO extends DiagnosisQaRecord { + + private CommonDic commonDic; + +} diff --git a/virtual-patient-model/src/main/java/com/supervision/vo/result/AncillaryRecordByResultDAO.java b/virtual-patient-model/src/main/java/com/supervision/vo/result/AncillaryRecordByResultDAO.java index fb020312..cec7c8cc 100644 --- a/virtual-patient-model/src/main/java/com/supervision/vo/result/AncillaryRecordByResultDAO.java +++ b/virtual-patient-model/src/main/java/com/supervision/vo/result/AncillaryRecordByResultDAO.java @@ -19,6 +19,16 @@ public class AncillaryRecordByResultDAO { */ private Integer basisConfirm; + /** + * 用户填写的证实诊断依据 + */ + private Integer recordBasisConfirmFlag; + + /** + * 用户填写的鉴别诊断依据 + */ + private Integer recordBasisIdentificationFlag; + /** * 鉴别依据 */ diff --git a/virtual-patient-model/src/main/java/com/supervision/vo/result/PhysicalRecordByResultDAO.java b/virtual-patient-model/src/main/java/com/supervision/vo/result/PhysicalRecordByResultDAO.java index 2a6ada2c..b47403d5 100644 --- a/virtual-patient-model/src/main/java/com/supervision/vo/result/PhysicalRecordByResultDAO.java +++ b/virtual-patient-model/src/main/java/com/supervision/vo/result/PhysicalRecordByResultDAO.java @@ -5,7 +5,7 @@ import lombok.Data; @Data public class PhysicalRecordByResultDAO { - private String toolLocationName; + private String toolLocationName; private String recordId; @@ -14,6 +14,16 @@ public class PhysicalRecordByResultDAO { */ private Integer requireCheck; + /** + * 用户填写的证实诊断依据 + */ + private Integer recordBasisConfirmFlag; + + /** + * 用户填写的鉴别诊断依据 + */ + private Integer recordBasisIdentificationFlag; + /** * 正式诊断依据 */ diff --git a/virtual-patient-model/src/main/resources/mapper/DiagnosisAncillaryRecordMapper.xml b/virtual-patient-model/src/main/resources/mapper/DiagnosisAncillaryRecordMapper.xml index 2fa1bd85..286d19d8 100644 --- a/virtual-patient-model/src/main/resources/mapper/DiagnosisAncillaryRecordMapper.xml +++ b/virtual-patient-model/src/main/resources/mapper/DiagnosisAncillaryRecordMapper.xml @@ -24,12 +24,14 @@