diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/aibo/IAIOBService.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/aibo/IAIOBService.java index eac8f944..587350bf 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/aibo/IAIOBService.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/aibo/IAIOBService.java @@ -73,4 +73,6 @@ public interface IAIOBService { JSONObject taskCallBack(Integer callbackType, TaskCallbackDataDto data) throws ClientException; String record(String ccUUID); + + String getPhoneDialRecord(String ccUuid); } diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/aibo/impl/AIOBServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/aibo/impl/AIOBServiceImpl.java index ad981840..761e1b4f 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/aibo/impl/AIOBServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/aibo/impl/AIOBServiceImpl.java @@ -463,7 +463,7 @@ public class AIOBServiceImpl implements IAIOBService { phoneDialRecord.setCreateTime(LocalDateTime.now()); phoneDialRecord.setCtUuid(data.getContactUUID()); - phoneDialRecord.setPhoneDialRecordVideo(getPhoneDialRecord(data.getContactUUID())); + //phoneDialRecord.setPhoneDialRecordVideo(getPhoneDialRecord(data.getContactUUID())); phoneDialRecordMapper.insertPhoneDialRecord(phoneDialRecord); @@ -744,7 +744,8 @@ public class AIOBServiceImpl implements IAIOBService { scriptInfoTaskInfoMapper.insertScriptInfoTaskInfo(scriptInfoTaskInfo); } - private String getPhoneDialRecord(String ccUuid) { + @Override + public String getPhoneDialRecord(String ccUuid) { String url = ""; String downLoadUrl = record(ccUuid); if (StringUtils.isNotBlank(downLoadUrl)) { @@ -770,11 +771,9 @@ public class AIOBServiceImpl implements IAIOBService { } outputStream.close(); inputStream.close(); - System.out.println("下载完成,目录:" + outputPath); - return Constants.RESOURCE_PREFIX + "/" + systemBusinessConfig.getPhoneDialRecordVideo() + "/" + ccUuid + ".wav"; + return Constants.RESOURCE_PREFIX + systemBusinessConfig.getPhoneDialRecordVideo() + "/" + ccUuid + ".wav"; } else { - System.out.println("下载失败" + connection.getResponseCode()); - return null; + throw new ServiceException("下载录音失败"); } } catch (IOException e) { e.printStackTrace(); diff --git a/postdischarge-manage/src/main/java/com/xinelu/manage/service/signpatientmanageroutenode/impl/SignPatientManageRouteNodeServiceImpl.java b/postdischarge-manage/src/main/java/com/xinelu/manage/service/signpatientmanageroutenode/impl/SignPatientManageRouteNodeServiceImpl.java index d9de5ba1..e8538c8c 100644 --- a/postdischarge-manage/src/main/java/com/xinelu/manage/service/signpatientmanageroutenode/impl/SignPatientManageRouteNodeServiceImpl.java +++ b/postdischarge-manage/src/main/java/com/xinelu/manage/service/signpatientmanageroutenode/impl/SignPatientManageRouteNodeServiceImpl.java @@ -62,6 +62,7 @@ import com.xinelu.manage.mapper.specialdiseaseroute.SpecialDiseaseRouteMapper; import com.xinelu.manage.mapper.specialdiseasetriggercondition.SpecialDiseaseTriggerConditionMapper; import com.xinelu.manage.mapper.textmessage.TextMessageMapper; import com.xinelu.manage.mapper.wechattemplate.WechatTemplateMapper; +import com.xinelu.manage.service.aibo.IAIOBService; import com.xinelu.manage.service.patienttaskstatistics.IPatientTaskStatisticsService; import com.xinelu.manage.service.propagandainfo.IPropagandaInfoService; import com.xinelu.manage.service.questioninfo.IQuestionInfoService; @@ -158,6 +159,8 @@ public class SignPatientManageRouteNodeServiceImpl implements ISignPatientManage private IPatientTaskStatisticsService patientTaskStatisticsService; @Resource private PhoneDialRecordMapper phoneDialRecordMapper; + @Resource + private IAIOBService aiobService; /** * 查询签约患者管理任务路径节点 @@ -585,7 +588,17 @@ public class SignPatientManageRouteNodeServiceImpl implements ISignPatientManage @Override public String getPhoneDialVideo(Long id) { PhoneDialRecord phoneDialRecord = phoneDialRecordMapper.getLastRecord(id); - return ObjectUtils.isEmpty(phoneDialRecord) ? null : phoneDialRecord.getPhoneDialRecordVideo(); + if(ObjectUtils.isEmpty(phoneDialRecord) || StringUtils.isBlank(phoneDialRecord.getCtUuid())) { + throw new ServiceException("获取录音失败"); + } + if (StringUtils.isBlank(phoneDialRecord.getPhoneDialRecordVideo())) { + String videoUrl = aiobService.getPhoneDialRecord(phoneDialRecord.getCtUuid()); + phoneDialRecord.setPhoneDialRecordVideo(videoUrl); + phoneDialRecordMapper.updatePhoneDialRecord(phoneDialRecord); + return videoUrl; + } else { + return phoneDialRecord.getPhoneDialRecordVideo(); + } } /** diff --git a/postdischarge-manage/src/main/resources/mapper/manage/phonedialrecord/PhoneDialRecordMapper.xml b/postdischarge-manage/src/main/resources/mapper/manage/phonedialrecord/PhoneDialRecordMapper.xml index c282cf39..7c379e75 100644 --- a/postdischarge-manage/src/main/resources/mapper/manage/phonedialrecord/PhoneDialRecordMapper.xml +++ b/postdischarge-manage/src/main/resources/mapper/manage/phonedialrecord/PhoneDialRecordMapper.xml @@ -206,6 +206,12 @@ update_time = #{updateTime}, + ct_uuid = + #{ctUuid}, + + phone_dial_record_video = + #{phoneDialRecordVideo}, + where id = #{id}