From cf570ad4f55cd40a626e9eff7b0a925ac120a6f6 Mon Sep 17 00:00:00 2001 From: xueqingkun Date: Wed, 8 Nov 2023 14:08:50 +0800 Subject: [PATCH] =?UTF-8?q?web=20:=201.=20talk=20=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=89=A9=E5=B1=95=E5=AD=97=E6=AE=B5(?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E6=88=96=E9=A1=B9=E7=9B=AE=E5=90=8D=EF=BC=8C?= =?UTF-8?q?=E5=B7=A5=E5=85=B7=E5=9B=BE=E7=89=87=20...)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../supervision/pojo/vo/TalkResultResVO.java | 14 ++++++ .../service/impl/AskServiceImpl.java | 45 ++++++++++++++----- 2 files changed, 49 insertions(+), 10 deletions(-) diff --git a/virtual-patient-web/src/main/java/com/supervision/pojo/vo/TalkResultResVO.java b/virtual-patient-web/src/main/java/com/supervision/pojo/vo/TalkResultResVO.java index 6cfb84ef..bb195df1 100644 --- a/virtual-patient-web/src/main/java/com/supervision/pojo/vo/TalkResultResVO.java +++ b/virtual-patient-web/src/main/java/com/supervision/pojo/vo/TalkResultResVO.java @@ -12,6 +12,20 @@ public class TalkResultResVO { @ApiModelProperty("后端返回给前端时使用,表示该是语音回复还是action动作,1语音回复,2体格检查 3辅助检查") private Integer type; + @ApiModelProperty("表示体格检查工具或辅助检查项id") private String actionId; + + @ApiModelProperty("type='2' itemName:工具名,type='3' itemName:检查项目名") + private String itemName; + + + @ApiModelProperty("type='2' 工具图片") + private String itemImage; + + @ApiModelProperty("type='2' 是否需要检查部位 0:否 1:是") + private Integer requireLocation; + + + } diff --git a/virtual-patient-web/src/main/java/com/supervision/service/impl/AskServiceImpl.java b/virtual-patient-web/src/main/java/com/supervision/service/impl/AskServiceImpl.java index 5f5bd20d..42f26287 100644 --- a/virtual-patient-web/src/main/java/com/supervision/service/impl/AskServiceImpl.java +++ b/virtual-patient-web/src/main/java/com/supervision/service/impl/AskServiceImpl.java @@ -5,28 +5,20 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.RandomUtil; import cn.hutool.core.util.StrUtil; import com.supervision.exception.BusinessException; -import com.supervision.model.AskPatientAnswer; -import com.supervision.model.AskTemplateQuestionLibrary; -import com.supervision.model.DiagnosisQaRecord; +import com.supervision.model.*; import com.supervision.model.Process; import com.supervision.pojo.vo.TalkReqVO; import com.supervision.pojo.vo.TalkResultResVO; -import com.supervision.service.AskPatientAnswerService; -import com.supervision.service.AskTemplateQuestionLibraryService; -import com.supervision.service.ProcessService; +import com.supervision.service.*; import com.supervision.util.*; -import com.supervision.service.AskService; -import com.supervision.pojo.vo.ActionDTO; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; -import java.io.IOException; import java.util.List; import java.util.Optional; -import java.util.Random; @Slf4j @Service @@ -39,6 +31,10 @@ public class AskServiceImpl implements AskService { private final AskPatientAnswerService askPatientAnswerService; + private final ConfigPhysicalToolService configPhysicalToolService; + + private final ConfigAncillaryItemService configAncillaryItemService; + @Override public String receiveVoiceFile(MultipartFile file) { @@ -82,6 +78,7 @@ public class AskServiceImpl implements AskService { // 在这里给socket回复,设置为动作 talkResultResVO.setActionId(actionList.get(1)); talkResultResVO.setType("ancillary".equals(actionList.get(0)) ? 3 : 2); + setActionRelation(talkResultResVO); return talkResultResVO; } } else { @@ -167,4 +164,32 @@ public class AskServiceImpl implements AskService { } + + private void setActionRelation(TalkResultResVO talkResultResVO){ + Integer type = talkResultResVO.getType(); + String actionId = talkResultResVO.getActionId(); + if (StrUtil.isEmpty(actionId) || null == type){ + return; + } + + // 体格检查 + if (type.equals(2)){ + ConfigPhysicalTool configPhysicalTool = configPhysicalToolService.getById(actionId); + if (null != configPhysicalTool){ + talkResultResVO.setItemName(configPhysicalTool.getToolName()); + talkResultResVO.setItemImage(configPhysicalTool.getIconBase64()); + talkResultResVO.setRequireLocation(configPhysicalTool.getRequireLocation()); + } + } + + // 辅助检查 + if (type.equals(3)){ + ConfigAncillaryItem configAncillaryItem = configAncillaryItemService.getById(actionId); + if (null != configAncillaryItem){ + talkResultResVO.setItemName(configAncillaryItem.getItemName()); + } + } + + } + }