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()); + } + } + + } + }