Merge remote-tracking branch 'origin/dev_2.0.0' into dev_2.0.0

dev_2.0.0
xueqingkun 1 year ago
commit 7f7bd78bb2

@ -34,7 +34,7 @@ public class DiagnosisQaRecord extends Model<DiagnosisQaRecord> implements Seria
@ApiModelProperty("诊断进程ID") @ApiModelProperty("诊断进程ID")
private String processId; private String processId;
@ApiModelProperty("问答类型:default,patient") @ApiModelProperty("问答类型:default,patient,如果patient,说明是病历配置的回答,打勾")
private String answerType; private String answerType;
/** /**
@ -49,6 +49,12 @@ public class DiagnosisQaRecord extends Model<DiagnosisQaRecord> implements Seria
@ApiModelProperty("问题") @ApiModelProperty("问题")
private String question; private String question;
/**
* ID
*/
@ApiModelProperty("问题ID")
private String questionLibraryId;
/** /**
* ID * ID
*/ */

@ -2,6 +2,7 @@ package com.supervision.service;
import com.supervision.model.DiagnosisQaRecord; import com.supervision.model.DiagnosisQaRecord;
import com.baomidou.mybatisplus.extension.service.IService; import com.baomidou.mybatisplus.extension.service.IService;
import com.supervision.vo.ask.DiagnosisQaRecordHistoryResVO;
import java.util.List; import java.util.List;
@ -13,5 +14,5 @@ import java.util.List;
public interface DiagnosisQaRecordService extends IService<DiagnosisQaRecord> { public interface DiagnosisQaRecordService extends IService<DiagnosisQaRecord> {
List<DiagnosisQaRecord> queryByProcessId(String processId); List<DiagnosisQaRecordHistoryResVO> queryByProcessId(String processId);
} }

@ -1,12 +1,26 @@
package com.supervision.service.impl; 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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.supervision.model.AskTemplateQuestionLibrary;
import com.supervision.model.CommonDic;
import com.supervision.model.DiagnosisQaRecord; import com.supervision.model.DiagnosisQaRecord;
import com.supervision.service.AskTemplateQuestionLibraryService;
import com.supervision.service.CommonDicService;
import com.supervision.service.DiagnosisQaRecordService; import com.supervision.service.DiagnosisQaRecordService;
import com.supervision.mapper.DiagnosisQaRecordMapper; import com.supervision.mapper.DiagnosisQaRecordMapper;
import com.supervision.vo.ask.DiagnosisQaRecordHistoryResVO;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.function.Function;
import java.util.stream.Collectors;
/** /**
* @author flevance * @author flevance
@ -14,13 +28,33 @@ import java.util.List;
* @createDate 2023-10-20 17:19:21 * @createDate 2023-10-20 17:19:21
*/ */
@Service @Service
@RequiredArgsConstructor
public class DiagnosisQaRecordServiceImpl extends ServiceImpl<DiagnosisQaRecordMapper, DiagnosisQaRecord> public class DiagnosisQaRecordServiceImpl extends ServiceImpl<DiagnosisQaRecordMapper, DiagnosisQaRecord>
implements DiagnosisQaRecordService{ implements DiagnosisQaRecordService{
@Override private final CommonDicService commonDicService;
public List<DiagnosisQaRecord> queryByProcessId(String processId) {
return super.lambdaQuery().eq(DiagnosisQaRecord::getProcessId,processId).list(); private final AskTemplateQuestionLibraryService askTemplateQuestionLibraryService;
@Override
public List<DiagnosisQaRecordHistoryResVO> queryByProcessId(String processId) {
List<DiagnosisQaRecord> list = this.lambdaQuery().eq(DiagnosisQaRecord::getProcessId, processId).list();
// 根据questionLibraryId找到对应的字典
Set<String> questionIdList = list.stream().map(DiagnosisQaRecord::getQuestionLibraryId).filter(StrUtil::isNotBlank).collect(Collectors.toSet());
List<AskTemplateQuestionLibrary> askTemplateQuestionLibraryList = askTemplateQuestionLibraryService.listByIds(questionIdList);
Map<String, Long> questionLibraryMap = askTemplateQuestionLibraryList.stream().collect(Collectors.toMap(AskTemplateQuestionLibrary::getId, AskTemplateQuestionLibrary::getDictId));
List<CommonDic> commonDicList = commonDicService.lambdaQuery().eq(CommonDic::getGroupCode, "AQT").list();
Map<Long, CommonDic> dicMap = commonDicList.stream().collect(Collectors.toMap(CommonDic::getId, Function.identity()));
List<DiagnosisQaRecordHistoryResVO> 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;
} }
} }

@ -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;
}

@ -19,6 +19,16 @@ public class AncillaryRecordByResultDAO {
*/ */
private Integer basisConfirm; private Integer basisConfirm;
/**
*
*/
private Integer recordBasisConfirmFlag;
/**
*
*/
private Integer recordBasisIdentificationFlag;
/** /**
* *
*/ */

@ -14,6 +14,16 @@ public class PhysicalRecordByResultDAO {
*/ */
private Integer requireCheck; private Integer requireCheck;
/**
*
*/
private Integer recordBasisConfirmFlag;
/**
*
*/
private Integer recordBasisIdentificationFlag;
/** /**
* *
*/ */

@ -28,6 +28,8 @@
t2.require_check_flag as requireCheck, t2.require_check_flag as requireCheck,
t2.basis_confirm_flag as basisConfirm, t2.basis_confirm_flag as basisConfirm,
t2.basis_identification_flag as basisIdentification, t2.basis_identification_flag as basisIdentification,
t1.basis_confirm_flag as recordBasisConfirmFlag,
t1.basis_identification_flag as recordBasisIdentificationFlag,
t1.id as recordId, t1.id as recordId,
t3.id as itemId t3.id as itemId
from vp_diagnosis_ancillary_record t1 from vp_diagnosis_ancillary_record t1

@ -31,7 +31,8 @@
select (IF(t4.location_name IS NULL, t3.tool_name, select (IF(t4.location_name IS NULL, t3.tool_name,
CONCAT_WS(' | ', t3.tool_name, t4.location_name))) AS toolLocationName, CONCAT_WS(' | ', t3.tool_name, t4.location_name))) AS toolLocationName,
t1.id as recordId, t1.id as recordId,
t2.require_check_flag as requireCheck, t1.basis_confirm_flag as recordBasisConfirmFlag,
t1.basis_identification_flag as recordBasisIdentificationFlag,
t2.basis_confirm_flag as basisConfirm, t2.basis_confirm_flag as basisConfirm,
t2.basis_identification_flag as basisIdentification, t2.basis_identification_flag as basisIdentification,
t3.id as toolId, t3.id as toolId,

@ -10,6 +10,7 @@
<result property="answerId" column="answer_id" jdbcType="VARCHAR"/> <result property="answerId" column="answer_id" jdbcType="VARCHAR"/>
<result property="answerType" column="answer_type" jdbcType="VARCHAR"/> <result property="answerType" column="answer_type" jdbcType="VARCHAR"/>
<result property="question" column="question" jdbcType="VARCHAR"/> <result property="question" column="question" jdbcType="VARCHAR"/>
<result property="questionLibraryId" column="question_library_id" jdbcType="VARCHAR"/>
<result property="questionWavId" column="question_wav_id" jdbcType="VARCHAR"/> <result property="questionWavId" column="question_wav_id" jdbcType="VARCHAR"/>
<result property="answer" column="answer" jdbcType="VARCHAR"/> <result property="answer" column="answer" jdbcType="VARCHAR"/>
<result property="answerWavId" column="answer_wav_id" jdbcType="VARCHAR"/> <result property="answerWavId" column="answer_wav_id" jdbcType="VARCHAR"/>
@ -22,7 +23,7 @@
<sql id="Base_Column_List"> <sql id="Base_Column_List">
id id
,question_answer_type ,question_answer_type
,process_id,question,question_answer_id ,process_id,question,question_answer_id,questionLibraryId,
question_wav_id,answer,answer_wav_id, question_wav_id,answer,answer_wav_id,
create_user_id,create_time,update_user_id, create_user_id,create_time,update_user_id,
update_time update_time

@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil;
import com.supervision.exception.BusinessException; import com.supervision.exception.BusinessException;
import com.supervision.model.DiagnosisQaRecord; import com.supervision.model.DiagnosisQaRecord;
import com.supervision.service.DiagnosisQaRecordService; import com.supervision.service.DiagnosisQaRecordService;
import com.supervision.vo.ask.DiagnosisQaRecordHistoryResVO;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
@ -23,7 +24,7 @@ public class DiagnosisQaRecordController {
private final DiagnosisQaRecordService diagnosisQaRecordService; private final DiagnosisQaRecordService diagnosisQaRecordService;
@ApiOperation("查询问诊历史记录") @ApiOperation("查询问诊历史记录")
@GetMapping("queryHistoryList") @GetMapping("queryHistoryList")
public List<DiagnosisQaRecord> queryDiagnosisHistoryQaList(String processId){ public List<DiagnosisQaRecordHistoryResVO> queryDiagnosisHistoryQaList(String processId){
if (StrUtil.isEmpty(processId)){ if (StrUtil.isEmpty(processId)){
throw new BusinessException("processId is empty"); throw new BusinessException("processId is empty");
} }

@ -92,9 +92,9 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
// 2.生成初步诊断依据 // 2.生成初步诊断依据
diagnosisResultResVO.setBasisPrimaryResultResVO(createBasisPrimaryResult(patient, medicalRec, process)); diagnosisResultResVO.setBasisPrimaryResultResVO(createBasisPrimaryResult(patient, medicalRec, process));
// 3.生成证实诊断依据 // 3.生成证实诊断依据
diagnosisResultResVO.setBasisConfirmResultResVO(createBasisConfirmResult(medicalRec, processId, diseasesList)); diagnosisResultResVO.setBasisConfirmResultResVO(createBasisConfirmResult(medicalRec, processId));
// 4.生成鉴别诊断依据 // 4.生成鉴别诊断依据
diagnosisResultResVO.setBasisIdentificationResult(createBasisIdentificationResult(medicalRec,processId)); diagnosisResultResVO.setBasisIdentificationResult(createBasisIdentificationResult(medicalRec, processId));
// 5.全面检查-(暂无相关数据) 后面再看 // 5.全面检查-(暂无相关数据) 后面再看
diagnosisResultResVO.setFullCheck(null); diagnosisResultResVO.setFullCheck(null);
// 6.处置方案 // 6.处置方案
@ -142,7 +142,7 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
} }
private BasisIdentificationResultResVO createBasisIdentificationResult(MedicalRec medicalRec,String processId) { private BasisIdentificationResultResVO createBasisIdentificationResult(MedicalRec medicalRec, String processId) {
BasisIdentificationResultResVO basisIdentificationResultResVO = new BasisIdentificationResultResVO(); BasisIdentificationResultResVO basisIdentificationResultResVO = new BasisIdentificationResultResVO();
// 鉴别诊断依据,来自于medicalRec的DifferentialDiagnosisCriteria // 鉴别诊断依据,来自于medicalRec的DifferentialDiagnosisCriteria
basisIdentificationResultResVO.setIdentificationDiagnosis(medicalRec.getDifferentialDiagnosisCriteria()); basisIdentificationResultResVO.setIdentificationDiagnosis(medicalRec.getDifferentialDiagnosisCriteria());
@ -155,7 +155,7 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
nodeResVO.setRecordName(e.getToolLocationName()); nodeResVO.setRecordName(e.getToolLocationName());
nodeResVO.setRecordId(e.getRecordId()); nodeResVO.setRecordId(e.getRecordId());
// 如果是必做的,则是正确 // 如果是必做的,则是正确
nodeResVO.setCorrect(null == e.getBasisIdentification() ? Integer.valueOf(0) : e.getBasisIdentification()); nodeResVO.setCorrect(Objects.equals(e.getBasisIdentification(), e.getRecordBasisIdentificationFlag()) ? 1 : 0);
return nodeResVO; return nodeResVO;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
// 2.3 获取辅助检查 // 2.3 获取辅助检查
@ -163,7 +163,7 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
List<BasisDiagnosisNodeResVO> collect = ancillaryRecordList.stream() List<BasisDiagnosisNodeResVO> collect = ancillaryRecordList.stream()
.filter(distinctPredicateNotNull(AncillaryRecordByResultDAO::getItemName)).map(e -> { .filter(distinctPredicateNotNull(AncillaryRecordByResultDAO::getItemName)).map(e -> {
BasisDiagnosisNodeResVO nodeResVO = new BasisDiagnosisNodeResVO(); BasisDiagnosisNodeResVO nodeResVO = new BasisDiagnosisNodeResVO();
nodeResVO.setCorrect(null == e.getBasisIdentification() ? Integer.valueOf(0) : e.getBasisIdentification()); nodeResVO.setCorrect(Objects.equals(e.getBasisIdentification(), e.getRecordBasisIdentificationFlag()) ? 1 : 0);
nodeResVO.setRecordId(e.getRecordId()); nodeResVO.setRecordId(e.getRecordId());
nodeResVO.setRecordName(e.getItemName()); nodeResVO.setRecordName(e.getItemName());
nodeResVO.setType(2); nodeResVO.setType(2);
@ -175,11 +175,11 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
return basisIdentificationResultResVO; return basisIdentificationResultResVO;
} }
private BasisConfirmResultResVO createBasisConfirmResult(MedicalRec medicalRec, String processId, List<Disease> diseasesList) { private BasisConfirmResultResVO createBasisConfirmResult(MedicalRec medicalRec, String processId) {
BasisConfirmResultResVO basisConfirmResultResVO = new BasisConfirmResultResVO(); BasisConfirmResultResVO basisConfirmResultResVO = new BasisConfirmResultResVO();
// 正式诊断依据,来自于medicalRec的ConfirmDiagnosisCriteria // 证实诊断依据,来自于medicalRec的ConfirmDiagnosisCriteria
basisConfirmResultResVO.setConfirmingDiagnosis(medicalRec.getConfirmDiagnosisCriteria()); basisConfirmResultResVO.setConfirmingDiagnosis(medicalRec.getConfirmDiagnosisCriteria());
// 2.2 获取体格检查 // 2.2 获取体格检查的证实诊断依据
List<PhysicalRecordByResultDAO> physicalRecordList = diagnosisPhysicalRecordService.queryPhysicalResultByProcessId(processId); List<PhysicalRecordByResultDAO> physicalRecordList = diagnosisPhysicalRecordService.queryPhysicalResultByProcessId(processId);
List<BasisDiagnosisNodeResVO> nodeList = physicalRecordList.stream() List<BasisDiagnosisNodeResVO> nodeList = physicalRecordList.stream()
.filter(distinctPredicateNotNull(PhysicalRecordByResultDAO::getToolLocationName)).map(e -> { .filter(distinctPredicateNotNull(PhysicalRecordByResultDAO::getToolLocationName)).map(e -> {
@ -187,16 +187,16 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
nodeResVO.setType(1); nodeResVO.setType(1);
nodeResVO.setRecordName(e.getToolLocationName()); nodeResVO.setRecordName(e.getToolLocationName());
nodeResVO.setRecordId(e.getRecordId()); nodeResVO.setRecordId(e.getRecordId());
// 如果是必做的,则是正确 nodeResVO.setCorrect(Objects.equals(e.getBasisConfirm(), e.getRecordBasisConfirmFlag()) ? 1 : 0);
nodeResVO.setCorrect(null == e.getBasisConfirm() ? Integer.valueOf(0) : e.getBasisConfirm());
return nodeResVO; return nodeResVO;
}).collect(Collectors.toList()); }).collect(Collectors.toList());
// 2.3 获取辅助检查 // 2.3 获取辅助检查
List<AncillaryRecordByResultDAO> ancillaryRecordList = diagnosisAncillaryRecordService.queryAncillaryResultByProcessId(processId); List<AncillaryRecordByResultDAO> ancillaryRecordList = diagnosisAncillaryRecordService.queryAncillaryResultByProcessId(processId);
List<BasisDiagnosisNodeResVO> collect = ancillaryRecordList.stream() List<BasisDiagnosisNodeResVO> collect = ancillaryRecordList.stream()
.filter(distinctPredicateNotNull(AncillaryRecordByResultDAO::getItemName)).map(e -> { .filter(distinctPredicateNotNull(AncillaryRecordByResultDAO::getItemName)).map(e -> {
BasisDiagnosisNodeResVO nodeResVO = new BasisDiagnosisNodeResVO(); BasisDiagnosisNodeResVO nodeResVO = new BasisDiagnosisNodeResVO();
nodeResVO.setCorrect(null == e.getBasisConfirm() ? Integer.valueOf(0) : e.getBasisConfirm()); nodeResVO.setCorrect(Objects.equals(e.getBasisConfirm(), e.getRecordBasisConfirmFlag()) ? 1 : 0);
nodeResVO.setRecordId(e.getRecordId()); nodeResVO.setRecordId(e.getRecordId());
nodeResVO.setRecordName(e.getItemName()); nodeResVO.setRecordName(e.getItemName());
nodeResVO.setType(2); nodeResVO.setType(2);

@ -66,7 +66,7 @@ public class AskServiceImpl implements AskService {
// 这里调用京东数字人接口首先根据token获取房间号 // 这里调用京东数字人接口首先根据token获取房间号
String roomId = HumanUtil.queryRoomId(talkReqVO.getRoomKey(), talkReqVO.getRoomToken()); String roomId = HumanUtil.queryRoomId(talkReqVO.getRoomKey(), talkReqVO.getRoomToken());
HumanUtil.textDriven("您好,我没有听懂您说什么", roomId); HumanUtil.textDriven("您好,我没有听懂您说什么", roomId);
saveQaRecord(talkReqVO.getProcessId(), "default", null, talkReqVO.getText(), "您好,我没有听懂您说什么"); saveQaRecord(talkReqVO.getProcessId(), "default", null, talkReqVO.getText(), null, "您好,我没有听懂您说什么");
} }
TalkResultResVO talkResultResVO = new TalkResultResVO(); TalkResultResVO talkResultResVO = new TalkResultResVO();
// 这里校验,rasa回复的结果是不是action // 这里校验,rasa回复的结果是不是action
@ -88,7 +88,7 @@ public class AskServiceImpl implements AskService {
if (ObjectUtil.isEmpty(library)) { if (ObjectUtil.isEmpty(library)) {
log.info("{}:未从问题库中找到,回答未识别语句", rasaResult); log.info("{}:未从问题库中找到,回答未识别语句", rasaResult);
HumanUtil.textDriven("您好,我没有听懂您说什么", roomId); HumanUtil.textDriven("您好,我没有听懂您说什么", roomId);
saveQaRecord(talkReqVO.getProcessId(), "default", null, talkReqVO.getText(), "您好,我没有听懂您说什么"); saveQaRecord(talkReqVO.getProcessId(), "default", null, talkReqVO.getText(), null, "您好,我没有听懂您说什么");
} else { } else {
AskPatientAnswer askPatientAnswer = askPatientAnswerService.lambdaQuery().eq(AskPatientAnswer::getPatientId, process.getPatientId()) AskPatientAnswer askPatientAnswer = askPatientAnswerService.lambdaQuery().eq(AskPatientAnswer::getPatientId, process.getPatientId())
.eq(AskPatientAnswer::getLibraryQuestionId, library.getId()).last("limit 1").one(); .eq(AskPatientAnswer::getLibraryQuestionId, library.getId()).last("limit 1").one();
@ -100,12 +100,12 @@ public class AskServiceImpl implements AskService {
String resText = library.getDefaultAnswer(); String resText = library.getDefaultAnswer();
HumanUtil.textDriven(resText, roomId); HumanUtil.textDriven(resText, roomId);
// 保存记录 // 保存记录
saveQaRecord(talkReqVO.getProcessId(), "default", library.getId(), talkReqVO.getText(), resText); saveQaRecord(talkReqVO.getProcessId(), "default", library.getId(), talkReqVO.getText(), library, resText);
log.info("{}:找到了默认答案:{}", rasaResult, talkReqVO.getText()); log.info("{}:找到了默认答案:{}", rasaResult, talkReqVO.getText());
} else { } else {
log.info("{}:没有从默认答案中找到找到默认内容,回复未识别语句", rasaResult); log.info("{}:没有从默认答案中找到找到默认内容,回复未识别语句", rasaResult);
HumanUtil.textDriven("您好,我没有听懂您说什么", roomId); HumanUtil.textDriven("您好,我没有听懂您说什么", roomId);
saveQaRecord(talkReqVO.getProcessId(), "default", null, talkReqVO.getText(), "您好,我没有听懂您说什么"); saveQaRecord(talkReqVO.getProcessId(), "default", null, talkReqVO.getText(), library, "您好,我没有听懂您说什么");
} }
} else { } else {
if (CollUtil.isEmpty(askPatientAnswer.getAnswer())) { if (CollUtil.isEmpty(askPatientAnswer.getAnswer())) {
@ -115,7 +115,7 @@ public class AskServiceImpl implements AskService {
log.info("{}:病历配置的回答:{}:为空不为空不为空,但在获取的时候,答案为空,开始回复默认语句,默认语句内容:{}", rasaResult, askPatientAnswer.getId(), resText); log.info("{}:病历配置的回答:{}:为空不为空不为空,但在获取的时候,答案为空,开始回复默认语句,默认语句内容:{}", rasaResult, askPatientAnswer.getId(), resText);
HumanUtil.textDriven(resText, roomId); HumanUtil.textDriven(resText, roomId);
// 保存记录 // 保存记录
saveQaRecord(talkReqVO.getProcessId(), "default", library.getId(), talkReqVO.getText(), resText); saveQaRecord(talkReqVO.getProcessId(), "default", library.getId(), talkReqVO.getText(), library, resText);
} else { } else {
log.info("{}:病历配置的回答:{}:为空不为空,但在获取的时候,答案为空,但是获取默认语句也为空,那么回复未识别语句", rasaResult, askPatientAnswer.getId()); log.info("{}:病历配置的回答:{}:为空不为空,但在获取的时候,答案为空,但是获取默认语句也为空,那么回复未识别语句", rasaResult, askPatientAnswer.getId());
HumanUtil.textDriven("您好,我没有听懂您说什么", roomId); HumanUtil.textDriven("您好,我没有听懂您说什么", roomId);
@ -126,7 +126,7 @@ public class AskServiceImpl implements AskService {
log.info("{}:找到了病历配置的回答语句:{},回答内容:{}", rasaResult, askPatientAnswer.getId(), resText); log.info("{}:找到了病历配置的回答语句:{},回答内容:{}", rasaResult, askPatientAnswer.getId(), resText);
HumanUtil.textDriven(resText, roomId); HumanUtil.textDriven(resText, roomId);
// 保存记录 // 保存记录
saveQaRecord(talkReqVO.getProcessId(), "patient", askPatientAnswer.getId(), talkReqVO.getText(), resText); saveQaRecord(talkReqVO.getProcessId(), "patient", askPatientAnswer.getId(), talkReqVO.getText(), library, resText);
} }
} }
@ -136,11 +136,14 @@ public class AskServiceImpl implements AskService {
return talkResultResVO; return talkResultResVO;
} }
private void saveQaRecord(String processId, String answerType, String answerId, String question, String resText) { private void saveQaRecord(String processId, String answerType, String answerId, String question, AskTemplateQuestionLibrary library, String resText) {
DiagnosisQaRecord record = new DiagnosisQaRecord(); DiagnosisQaRecord record = new DiagnosisQaRecord();
record.setProcessId(processId); record.setProcessId(processId);
record.setAnswerType(answerType); record.setAnswerType(answerType);
record.setAnswerId(answerId); record.setAnswerId(answerId);
if (ObjectUtil.isNotEmpty(library)) {
record.setQuestionLibraryId(library.getId());
}
record.setQuestion(question); record.setQuestion(question);
record.setAnswer(resText); record.setAnswer(resText);
record.setCreateUserId(UserUtil.getUser().getId()); record.setCreateUserId(UserUtil.getUser().getId());

Loading…
Cancel
Save