diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/yzaiobs/impl/YZAIOBSServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/yzaiobs/impl/YZAIOBSServiceImpl.java index d7d955af..9620126f 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/yzaiobs/impl/YZAIOBSServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/yzaiobs/impl/YZAIOBSServiceImpl.java @@ -169,6 +169,7 @@ public class YZAIOBSServiceImpl implements IYZAIOBSService { log.info("外呼回调接口开始执行-------"); JSONArray JSONArr = callbackDto.getData(); if (!CollectionUtils.isEmpty(JSONArr)) { + log.info("回调接口共{}条数据:{}", JSONArr.size(), JSONArr.toJSONString()); for (int i = 0; i < JSONArr.size(); i++) { JSONObject jsonObject = JSONArr.getJSONObject(i); log.info("数据{}:{}", i, com.alibaba.fastjson.JSONObject.toJSONString(jsonObject, SerializerFeature.WriteMapNullValue)); @@ -511,7 +512,6 @@ public class YZAIOBSServiceImpl implements IYZAIOBSService { patientQuestionOptionResults.add(patientQuestionOptionResult); }); if(!CollectionUtils.isEmpty(patientQuestionOptionResults)) { - log.info("问卷选项结果:{}", patientQuestionOptionResults); patientQuestionOptionResultMapper.saveQuestionOptionList(patientQuestionOptionResults); } totalScore[0] = totalScore[0].add(BigDecimal.ZERO); @@ -570,8 +570,11 @@ public class YZAIOBSServiceImpl implements IYZAIOBSService { * @Date 2025-12-26 9:40 */ private String getReply(List callRecordList, String question) { + if (CollectionUtils.isEmpty(callRecordList)) { + return ""; + } for (int i = 0; i < callRecordList.size(); i++) { - if (StringUtils.equals(callRecordList.get(i).getContextText(), question) && i+1 <= callRecordList.size() && StringUtils.equals("voice", callRecordList.get(i+1).getRole())) { + if (StringUtils.isNotEmpty(callRecordList.get(i).getContextText()) && StringUtils.isNotEmpty(question) && callRecordList.get(i).getContextText().contains(question) && i+1 <= callRecordList.size() && StringUtils.equals("voice", callRecordList.get(i+1).getRole())) { // 问题可能出现多次补充的情况,用[p2000]标签来标识是补充的问题。 if (callRecordList.get(i).getContextText().contains("[p2000]")) { // 查找通话内容中包含[p2000]的用户回复 @@ -671,7 +674,6 @@ public class YZAIOBSServiceImpl implements IYZAIOBSService { if (!CollectionUtils.isEmpty(contentedFlag)) { patientQuestionSubmitResult.setContentedFlag(ContentedAndRemarkableFlagEnum.DISCONTENTED.getInfo()); } - log.info("问卷选项结果:{}", patientQuestionOptionResults); patientQuestionOptionResultMapper.saveQuestionOptionList(patientQuestionOptionResults); } questionSubmitResultMapper.updatePatientQuestionSubmitResult(patientQuestionSubmitResult);