From 14779c8d355f5ba858fe9047eeee174655460140 Mon Sep 17 00:00:00 2001 From: liu Date: Tue, 31 Oct 2023 17:56:14 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E7=BB=93=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DiagnosisAncillaryRecordMapper.java | 3 ++ .../mapper/DiagnosisPhysicalRecordMapper.java | 3 ++ .../supervision/model/ConfigPhysicalTool.java | 3 ++ .../DiagnosisAncillaryRecordService.java | 5 ++- .../DiagnosisPhysicalRecordService.java | 10 +++++- .../DiagnosisAncillaryRecordServiceImpl.java | 7 +++- .../DiagnosisPhysicalRecordServiceImpl.java | 8 ++++- .../vo/ask/AskAncillaryHistoryResVO.java | 30 ++++++++++++++++ .../vo/ask/AskPhysicalHistoryResVO.java | 36 +++++++++++++++++++ .../mapper/ConfigPhysicalToolMapper.xml | 3 +- .../mapper/DiagnosisAncillaryRecordMapper.xml | 12 +++++++ .../mapper/DiagnosisPhysicalRecordMapper.xml | 16 +++++++++ .../controller/AskAncillaryController.java | 16 +++++---- .../supervision/controller/AskController.java | 2 +- .../controller/AskPhysicalController.java | 10 +++++- .../pojo/vo/ConfigAncillaryItemResVO.java | 14 ++++++++ .../pojo/vo/ConfigPhysicalToolResVO.java | 14 ++++++++ .../service/AskAncillaryService.java | 9 ++--- .../service/AskPhysicalService.java | 6 +++- .../service/impl/AskAncillaryServiceImpl.java | 23 +++++++++--- .../service/impl/AskPhysicalServiceImpl.java | 22 ++++++++++-- .../service/impl/AskServiceImpl.java | 1 + 22 files changed, 227 insertions(+), 26 deletions(-) create mode 100644 virtual-patient-model/src/main/java/com/supervision/vo/ask/AskAncillaryHistoryResVO.java create mode 100644 virtual-patient-model/src/main/java/com/supervision/vo/ask/AskPhysicalHistoryResVO.java create mode 100644 virtual-patient-web/src/main/java/com/supervision/pojo/vo/ConfigAncillaryItemResVO.java create mode 100644 virtual-patient-web/src/main/java/com/supervision/pojo/vo/ConfigPhysicalToolResVO.java diff --git a/virtual-patient-model/src/main/java/com/supervision/mapper/DiagnosisAncillaryRecordMapper.java b/virtual-patient-model/src/main/java/com/supervision/mapper/DiagnosisAncillaryRecordMapper.java index c09bb2f6..f1945e65 100644 --- a/virtual-patient-model/src/main/java/com/supervision/mapper/DiagnosisAncillaryRecordMapper.java +++ b/virtual-patient-model/src/main/java/com/supervision/mapper/DiagnosisAncillaryRecordMapper.java @@ -2,6 +2,7 @@ package com.supervision.mapper; import com.supervision.model.DiagnosisAncillaryRecord; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.supervision.vo.ask.AskAncillaryHistoryResVO; import com.supervision.vo.result.AncillaryRecordByResultDAO; import org.apache.ibatis.annotations.Param; @@ -17,6 +18,8 @@ public interface DiagnosisAncillaryRecordMapper extends BaseMapper queryAncillaryResultByProcessId(@Param("processId") String processId); + List queryAncillaryRecord(@Param("processId") String processId); + } diff --git a/virtual-patient-model/src/main/java/com/supervision/mapper/DiagnosisPhysicalRecordMapper.java b/virtual-patient-model/src/main/java/com/supervision/mapper/DiagnosisPhysicalRecordMapper.java index 28aaebc8..dfd2b40b 100644 --- a/virtual-patient-model/src/main/java/com/supervision/mapper/DiagnosisPhysicalRecordMapper.java +++ b/virtual-patient-model/src/main/java/com/supervision/mapper/DiagnosisPhysicalRecordMapper.java @@ -2,6 +2,7 @@ package com.supervision.mapper; import com.supervision.model.DiagnosisPhysicalRecord; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.supervision.vo.ask.AskPhysicalHistoryResVO; import com.supervision.vo.result.PhysicalRecordByResultDAO; import org.apache.ibatis.annotations.Param; @@ -17,6 +18,8 @@ public interface DiagnosisPhysicalRecordMapper extends BaseMapper queryPhysicalResultByProcessId(@Param("processId") String processId); + List queryAskPhysicalHistory(@Param("processId") String processId); + } diff --git a/virtual-patient-model/src/main/java/com/supervision/model/ConfigPhysicalTool.java b/virtual-patient-model/src/main/java/com/supervision/model/ConfigPhysicalTool.java index 8d1981b5..2f204b74 100644 --- a/virtual-patient-model/src/main/java/com/supervision/model/ConfigPhysicalTool.java +++ b/virtual-patient-model/src/main/java/com/supervision/model/ConfigPhysicalTool.java @@ -45,6 +45,9 @@ public class ConfigPhysicalTool implements Serializable { @ApiModelProperty("体格检查工具名称") private String toolName; + @ApiModelProperty("体格检查工具图表的base64") + private String iconBase64; + /** * 是否需要具体部位(0否1是) */ diff --git a/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisAncillaryRecordService.java b/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisAncillaryRecordService.java index 14cc3ac7..cf49e31d 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisAncillaryRecordService.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisAncillaryRecordService.java @@ -2,6 +2,7 @@ package com.supervision.service; import com.supervision.model.DiagnosisAncillaryRecord; import com.baomidou.mybatisplus.extension.service.IService; +import com.supervision.vo.ask.AskAncillaryHistoryResVO; import com.supervision.vo.result.AncillaryRecordByResultDAO; import java.util.List; @@ -15,8 +16,10 @@ public interface DiagnosisAncillaryRecordService extends IService queryAncillaryResultByProcessId(String processId); + List queryAncillaryRecord(String processId); + } diff --git a/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisPhysicalRecordService.java b/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisPhysicalRecordService.java index 9d476413..ee22de7c 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisPhysicalRecordService.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/DiagnosisPhysicalRecordService.java @@ -2,6 +2,7 @@ package com.supervision.service; import com.supervision.model.DiagnosisPhysicalRecord; import com.baomidou.mybatisplus.extension.service.IService; +import com.supervision.vo.ask.AskPhysicalHistoryResVO; import com.supervision.vo.result.PhysicalRecordByResultDAO; import java.util.List; @@ -14,11 +15,18 @@ import java.util.List; public interface DiagnosisPhysicalRecordService extends IService { /** - * 体格检查记录 + * 最终诊断-体格检查记录 * @param processId 流程ID * @return list */ List queryPhysicalResultByProcessId(String processId); + /** + * 查询体格检查记录 + * @param processId 流程ID + * @return list + */ + List queryAskPhysicalHistory(String processId); + } diff --git a/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisAncillaryRecordServiceImpl.java b/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisAncillaryRecordServiceImpl.java index 3c5572ba..8d84c828 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisAncillaryRecordServiceImpl.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisAncillaryRecordServiceImpl.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.supervision.model.DiagnosisAncillaryRecord; import com.supervision.service.DiagnosisAncillaryRecordService; import com.supervision.mapper.DiagnosisAncillaryRecordMapper; +import com.supervision.vo.ask.AskAncillaryHistoryResVO; import com.supervision.vo.result.AncillaryRecordByResultDAO; import org.springframework.stereotype.Service; @@ -19,12 +20,16 @@ public class DiagnosisAncillaryRecordServiceImpl extends ServiceImpl queryAncillaryResultByProcessId(String processId){ return this.baseMapper.queryAncillaryResultByProcessId(processId); } + @Override + public List queryAncillaryRecord(String processId) { + return this.baseMapper.queryAncillaryRecord(processId); + } } diff --git a/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisPhysicalRecordServiceImpl.java b/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisPhysicalRecordServiceImpl.java index 0cebcee2..d60ba285 100644 --- a/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisPhysicalRecordServiceImpl.java +++ b/virtual-patient-model/src/main/java/com/supervision/service/impl/DiagnosisPhysicalRecordServiceImpl.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.supervision.model.DiagnosisPhysicalRecord; import com.supervision.service.DiagnosisPhysicalRecordService; import com.supervision.mapper.DiagnosisPhysicalRecordMapper; +import com.supervision.vo.ask.AskPhysicalHistoryResVO; import com.supervision.vo.result.PhysicalRecordByResultDAO; import org.springframework.stereotype.Service; @@ -19,12 +20,17 @@ public class DiagnosisPhysicalRecordServiceImpl extends ServiceImpl queryPhysicalResultByProcessId(String processId) { return this.baseMapper.queryPhysicalResultByProcessId(processId); } + + @Override + public List queryAskPhysicalHistory(String processId) { + return this.baseMapper.queryAskPhysicalHistory(processId); + } } diff --git a/virtual-patient-model/src/main/java/com/supervision/vo/ask/AskAncillaryHistoryResVO.java b/virtual-patient-model/src/main/java/com/supervision/vo/ask/AskAncillaryHistoryResVO.java new file mode 100644 index 00000000..caec6914 --- /dev/null +++ b/virtual-patient-model/src/main/java/com/supervision/vo/ask/AskAncillaryHistoryResVO.java @@ -0,0 +1,30 @@ +package com.supervision.vo.ask; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.time.LocalDateTime; + +@Data +@ApiModel +public class AskAncillaryHistoryResVO { + + @ApiModelProperty("辅助检查记录ID") + private String id; + + @ApiModelProperty("辅助检查项名称") + private String itemName; + + @ApiModelProperty("辅助检查项ID") + private String itemId; + + @ApiModelProperty("辅助检查项结果") + private String result; + + @ApiModelProperty("关联的初步诊断ID") + private String primaryId; + + @ApiModelProperty("检查时间") + private LocalDateTime createTime; +} diff --git a/virtual-patient-model/src/main/java/com/supervision/vo/ask/AskPhysicalHistoryResVO.java b/virtual-patient-model/src/main/java/com/supervision/vo/ask/AskPhysicalHistoryResVO.java new file mode 100644 index 00000000..0d35869d --- /dev/null +++ b/virtual-patient-model/src/main/java/com/supervision/vo/ask/AskPhysicalHistoryResVO.java @@ -0,0 +1,36 @@ +package com.supervision.vo.ask; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.time.LocalDateTime; + +@Data +@ApiModel +public class AskPhysicalHistoryResVO { + + @ApiModelProperty("体格检查记录ID") + private String id; + + @ApiModelProperty("体格检查工具名称") + private String toolName; + + @ApiModelProperty("体格检查工具ID") + private String toolId; + + @ApiModelProperty("体格检查位置ID") + private String locationId; + + @ApiModelProperty("体格检查位置名称") + private String locationName; + + @ApiModelProperty("体格检查结果") + private String result; + + @ApiModelProperty("关联的初步诊断ID") + private String primaryId; + + @ApiModelProperty("检查时间") + private LocalDateTime createTime; +} diff --git a/virtual-patient-model/src/main/resources/mapper/ConfigPhysicalToolMapper.xml b/virtual-patient-model/src/main/resources/mapper/ConfigPhysicalToolMapper.xml index 900b4747..131ecc9c 100644 --- a/virtual-patient-model/src/main/resources/mapper/ConfigPhysicalToolMapper.xml +++ b/virtual-patient-model/src/main/resources/mapper/ConfigPhysicalToolMapper.xml @@ -9,6 +9,7 @@ + @@ -20,7 +21,7 @@ id - ,type,code, + ,type,code,icon_base64 tool_name,require_location,create_user_id, create_time,update_user_id,update_time diff --git a/virtual-patient-model/src/main/resources/mapper/DiagnosisAncillaryRecordMapper.xml b/virtual-patient-model/src/main/resources/mapper/DiagnosisAncillaryRecordMapper.xml index 422c339a..dfe79957 100644 --- a/virtual-patient-model/src/main/resources/mapper/DiagnosisAncillaryRecordMapper.xml +++ b/virtual-patient-model/src/main/resources/mapper/DiagnosisAncillaryRecordMapper.xml @@ -36,4 +36,16 @@ left join vp_config_ancillary_item t3 on t2.item_id = t3.id where t1.process_id = #{processId} + + diff --git a/virtual-patient-model/src/main/resources/mapper/DiagnosisPhysicalRecordMapper.xml b/virtual-patient-model/src/main/resources/mapper/DiagnosisPhysicalRecordMapper.xml index c0167aa9..c25a2b49 100644 --- a/virtual-patient-model/src/main/resources/mapper/DiagnosisPhysicalRecordMapper.xml +++ b/virtual-patient-model/src/main/resources/mapper/DiagnosisPhysicalRecordMapper.xml @@ -38,4 +38,20 @@ left join vp_config_physical_location t4 on t2.location_id = t3.id where t1.process_id = #{processId} + + diff --git a/virtual-patient-web/src/main/java/com/supervision/controller/AskAncillaryController.java b/virtual-patient-web/src/main/java/com/supervision/controller/AskAncillaryController.java index 67a27982..6a18881c 100644 --- a/virtual-patient-web/src/main/java/com/supervision/controller/AskAncillaryController.java +++ b/virtual-patient-web/src/main/java/com/supervision/controller/AskAncillaryController.java @@ -1,9 +1,9 @@ package com.supervision.controller; -import com.supervision.model.ConfigAncillaryItem; -import com.supervision.model.ConfigPhysicalLocation; import com.supervision.model.DiagnosisAncillaryRecord; +import com.supervision.vo.ask.AskAncillaryHistoryResVO; import com.supervision.pojo.vo.AskAncillaryResultReqVO; +import com.supervision.pojo.vo.ConfigAncillaryItemResVO; import com.supervision.service.AskAncillaryService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -13,7 +13,6 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; -import java.util.Map; @Api(tags = "辅助检查") @RestController @@ -25,16 +24,21 @@ public class AskAncillaryController { @ApiOperation("查询辅助检查项目列表") @GetMapping("queryAncillaryItemList") - public Map> queryAncillaryItemList(){ + public List queryAncillaryItemList() { return askAncillaryService.queryAncillaryItemList(); } - @ApiOperation("进行辅助检查,并获取结果") @GetMapping("queryAskAncillaryResult") - public DiagnosisAncillaryRecord execAskAncillaryResult(AskAncillaryResultReqVO reqVO){ + public DiagnosisAncillaryRecord execAskAncillaryResult(AskAncillaryResultReqVO reqVO) { return askAncillaryService.execAskAncillaryResult(reqVO); } + @ApiOperation("查询辅助检查的历史记录") + @GetMapping("queryAskAncillaryHistory") + public List queryAskAncillaryHistory(String processId) { + return askAncillaryService.queryAskAncillaryHistory(processId); + } + } diff --git a/virtual-patient-web/src/main/java/com/supervision/controller/AskController.java b/virtual-patient-web/src/main/java/com/supervision/controller/AskController.java index 56ff0f1c..3b3a497d 100644 --- a/virtual-patient-web/src/main/java/com/supervision/controller/AskController.java +++ b/virtual-patient-web/src/main/java/com/supervision/controller/AskController.java @@ -29,7 +29,7 @@ public class AskController { session.sendMessage(new TextMessage(message)); } - @ApiOperation("接收页面的语音消息(暂时不用这个接口,主要使用websocket进行通信)") + @ApiOperation("接收页面的语音消息(这个接口使用京东数字人接口来做)") @PostMapping("/receiveVoiceFile") public String receiveVoiceFile(@RequestParam("file") MultipartFile file) throws IOException { return askService.receiveVoiceFile(file); diff --git a/virtual-patient-web/src/main/java/com/supervision/controller/AskPhysicalController.java b/virtual-patient-web/src/main/java/com/supervision/controller/AskPhysicalController.java index e6e3c51c..7b68e79d 100644 --- a/virtual-patient-web/src/main/java/com/supervision/controller/AskPhysicalController.java +++ b/virtual-patient-web/src/main/java/com/supervision/controller/AskPhysicalController.java @@ -3,7 +3,9 @@ package com.supervision.controller; import com.supervision.model.ConfigPhysicalTool; import com.supervision.model.DiagnosisPhysicalRecord; import com.supervision.pojo.vo.AskPhysicalResultReqVO; +import com.supervision.pojo.vo.ConfigPhysicalToolResVO; import com.supervision.service.AskPhysicalService; +import com.supervision.vo.ask.AskPhysicalHistoryResVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; @@ -26,7 +28,7 @@ public class AskPhysicalController { @ApiOperation(value = "查询体格检查的工具列表") @GetMapping("queryPhysicalToolList") - public Map> queryPhysicalToolList() { + public List queryPhysicalToolList() { return askPhysicalService.queryPhysicalToolList(); } @@ -35,4 +37,10 @@ public class AskPhysicalController { public DiagnosisPhysicalRecord queryAskPhysicalResult(AskPhysicalResultReqVO reqVO) { return askPhysicalService.queryAskPhysicalResult(reqVO); } + + @ApiOperation(value = "查询体格检查历史记录") + @GetMapping("queryAskPhysicalHistory") + public List queryAskPhysicalHistory(String processId){ + return askPhysicalService.queryAskPhysicalHistory(processId); + } } diff --git a/virtual-patient-web/src/main/java/com/supervision/pojo/vo/ConfigAncillaryItemResVO.java b/virtual-patient-web/src/main/java/com/supervision/pojo/vo/ConfigAncillaryItemResVO.java new file mode 100644 index 00000000..50d1987c --- /dev/null +++ b/virtual-patient-web/src/main/java/com/supervision/pojo/vo/ConfigAncillaryItemResVO.java @@ -0,0 +1,14 @@ +package com.supervision.pojo.vo; + +import com.supervision.model.ConfigAncillaryItem; +import lombok.Data; + +import java.util.List; + +@Data +public class ConfigAncillaryItemResVO { + + private String itemName; + + private List itemList; +} diff --git a/virtual-patient-web/src/main/java/com/supervision/pojo/vo/ConfigPhysicalToolResVO.java b/virtual-patient-web/src/main/java/com/supervision/pojo/vo/ConfigPhysicalToolResVO.java new file mode 100644 index 00000000..f824e3bc --- /dev/null +++ b/virtual-patient-web/src/main/java/com/supervision/pojo/vo/ConfigPhysicalToolResVO.java @@ -0,0 +1,14 @@ +package com.supervision.pojo.vo; + +import com.supervision.model.ConfigPhysicalTool; +import lombok.Data; + +import java.util.List; + +@Data +public class ConfigPhysicalToolResVO { + + private String toolType; + + private List toolList; +} diff --git a/virtual-patient-web/src/main/java/com/supervision/service/AskAncillaryService.java b/virtual-patient-web/src/main/java/com/supervision/service/AskAncillaryService.java index ec9c42d8..298c5985 100644 --- a/virtual-patient-web/src/main/java/com/supervision/service/AskAncillaryService.java +++ b/virtual-patient-web/src/main/java/com/supervision/service/AskAncillaryService.java @@ -1,17 +1,18 @@ package com.supervision.service; -import com.supervision.model.ConfigAncillaryItem; -import com.supervision.model.ConfigPhysicalLocation; import com.supervision.model.DiagnosisAncillaryRecord; +import com.supervision.vo.ask.AskAncillaryHistoryResVO; import com.supervision.pojo.vo.AskAncillaryResultReqVO; +import com.supervision.pojo.vo.ConfigAncillaryItemResVO; import java.util.List; -import java.util.Map; public interface AskAncillaryService { - Map> queryAncillaryItemList(); + List queryAncillaryItemList(); DiagnosisAncillaryRecord execAskAncillaryResult(AskAncillaryResultReqVO reqVO); + + List queryAskAncillaryHistory(String processId); } diff --git a/virtual-patient-web/src/main/java/com/supervision/service/AskPhysicalService.java b/virtual-patient-web/src/main/java/com/supervision/service/AskPhysicalService.java index f1c4d499..a37709d9 100644 --- a/virtual-patient-web/src/main/java/com/supervision/service/AskPhysicalService.java +++ b/virtual-patient-web/src/main/java/com/supervision/service/AskPhysicalService.java @@ -4,14 +4,18 @@ import com.supervision.model.ConfigPhysicalLocation; import com.supervision.model.ConfigPhysicalTool; import com.supervision.model.DiagnosisPhysicalRecord; import com.supervision.pojo.vo.AskPhysicalResultReqVO; +import com.supervision.pojo.vo.ConfigPhysicalToolResVO; +import com.supervision.vo.ask.AskPhysicalHistoryResVO; import java.util.List; import java.util.Map; public interface AskPhysicalService { - Map> queryPhysicalToolList(); + List queryPhysicalToolList(); DiagnosisPhysicalRecord queryAskPhysicalResult(AskPhysicalResultReqVO reqVO); + + List queryAskPhysicalHistory(String processId); } diff --git a/virtual-patient-web/src/main/java/com/supervision/service/impl/AskAncillaryServiceImpl.java b/virtual-patient-web/src/main/java/com/supervision/service/impl/AskAncillaryServiceImpl.java index 6a6708af..b89d8b29 100644 --- a/virtual-patient-web/src/main/java/com/supervision/service/impl/AskAncillaryServiceImpl.java +++ b/virtual-patient-web/src/main/java/com/supervision/service/impl/AskAncillaryServiceImpl.java @@ -1,14 +1,14 @@ package com.supervision.service.impl; -import cn.hutool.core.collection.CollUtil; import com.supervision.exception.BusinessException; import com.supervision.model.*; import com.supervision.model.Process; +import com.supervision.vo.ask.AskAncillaryHistoryResVO; import com.supervision.pojo.vo.AskAncillaryResultReqVO; +import com.supervision.pojo.vo.ConfigAncillaryItemResVO; import com.supervision.service.*; import com.supervision.util.UserUtil; import lombok.RequiredArgsConstructor; -import org.apache.commons.collections4.SetUtils; import org.springframework.stereotype.Service; import java.util.*; @@ -24,10 +24,17 @@ public class AskAncillaryServiceImpl implements AskAncillaryService { private final ConfigAncillaryItemService ancillaryItemService; + private final DiagnosisAncillaryRecordService diagnosisAncillaryRecordService; + @Override - public Map> queryAncillaryItemList() { + public List queryAncillaryItemList() { List list = ancillaryItemService.lambdaQuery().list(); - return list.stream().collect(Collectors.groupingBy(ConfigAncillaryItem::getType)); + return list.stream().collect(Collectors.groupingBy(ConfigAncillaryItem::getType)).entrySet().stream().map(e -> { + ConfigAncillaryItemResVO item = new ConfigAncillaryItemResVO(); + item.setItemName(e.getKey()); + item.setItemList(e.getValue()); + return item; + }).collect(Collectors.toList()); } @Override @@ -35,7 +42,6 @@ public class AskAncillaryServiceImpl implements AskAncillaryService { // 首先根据process_id查新到流程ID Process process = Optional.ofNullable(processService.getById(reqVO.getProcessId())).orElseThrow(() -> new BusinessException("未找到流程ID")); // 找到对应的项目的检查结果 - DiseaseAncillary diseaseAncillary = diseaseAncillaryService.lambdaQuery().eq(DiseaseAncillary::getPatientId, process.getPatientId()).eq(DiseaseAncillary::getItemId, reqVO.getItemId()) .oneOpt().orElseGet(() -> { DiseaseAncillary get = new DiseaseAncillary(); @@ -44,6 +50,7 @@ public class AskAncillaryServiceImpl implements AskAncillaryService { }); DiagnosisAncillaryRecord record = new DiagnosisAncillaryRecord(); record.setProcessId(process.getId()); + record.setAncillaryId(diseaseAncillary.getId()); record.setItemId(reqVO.getItemId()); record.setPrimaryId(reqVO.getPrimaryId()); record.setResult(diseaseAncillary.getResult()); @@ -51,4 +58,10 @@ public class AskAncillaryServiceImpl implements AskAncillaryService { record.setUpdateUserId(UserUtil.getUser().getId()); return record; } + + @Override + public List queryAskAncillaryHistory(String processId) { + return diagnosisAncillaryRecordService.queryAncillaryRecord(processId); + + } } diff --git a/virtual-patient-web/src/main/java/com/supervision/service/impl/AskPhysicalServiceImpl.java b/virtual-patient-web/src/main/java/com/supervision/service/impl/AskPhysicalServiceImpl.java index 8b975f7f..cc897a08 100644 --- a/virtual-patient-web/src/main/java/com/supervision/service/impl/AskPhysicalServiceImpl.java +++ b/virtual-patient-web/src/main/java/com/supervision/service/impl/AskPhysicalServiceImpl.java @@ -5,8 +5,10 @@ import com.supervision.exception.BusinessException; import com.supervision.model.*; import com.supervision.model.Process; import com.supervision.pojo.vo.AskPhysicalResultReqVO; +import com.supervision.pojo.vo.ConfigPhysicalToolResVO; import com.supervision.service.*; import com.supervision.util.UserUtil; +import com.supervision.vo.ask.AskPhysicalHistoryResVO; import lombok.RequiredArgsConstructor; import org.apache.commons.collections4.SetUtils; import org.springframework.stereotype.Service; @@ -26,12 +28,20 @@ public class AskPhysicalServiceImpl implements AskPhysicalService { private final DiseasePhysicalService diseasePhysicalService; + private final DiagnosisPhysicalRecordService diagnosisPhysicalRecordService; + private final ProcessService processService; @Override - public Map> queryPhysicalToolList() { + public List queryPhysicalToolList() { List list = toolService.lambdaQuery().list(); - return list.stream().collect(Collectors.groupingBy(ConfigPhysicalTool::getType)); + return list.stream().collect(Collectors.groupingBy(ConfigPhysicalTool::getType)).entrySet().stream().map(e ->{ + ConfigPhysicalToolResVO tool = new ConfigPhysicalToolResVO(); + tool.setToolType(e.getKey()); + tool.setToolList(e.getValue()); + return tool; + + }).collect(Collectors.toList()); } @Override @@ -41,7 +51,7 @@ public class AskPhysicalServiceImpl implements AskPhysicalService { ConfigPhysicalTool tool = Optional.ofNullable(toolService.getById(reqVO.getToolId())).orElseThrow(() -> new BusinessException("工具不支持")); // 是否需要具体的部位,0否1是 String locationId = null; - if (1 == tool.getRequireLocation()){ + if (1 == tool.getRequireLocation()) { ConfigPhysicalLocation location = locationService.lambdaQuery().eq(ConfigPhysicalLocation::getCode, reqVO.getLocationCode()).last("limit 1") .oneOpt().orElseThrow(() -> new BusinessException("为找到对应部位")); locationId = location.getId(); @@ -57,6 +67,7 @@ public class AskPhysicalServiceImpl implements AskPhysicalService { // 检查记录保存到数据库中 DiagnosisPhysicalRecord diagnosisPhysicalRecord = new DiagnosisPhysicalRecord(); diagnosisPhysicalRecord.setProcessId(process.getId()); + diagnosisPhysicalRecord.setPhysicalId(result.getId()); diagnosisPhysicalRecord.setToolId(tool.getId()); diagnosisPhysicalRecord.setLocationId(locationId); diagnosisPhysicalRecord.setPrimaryId(reqVO.getPrimaryId()); @@ -66,4 +77,9 @@ public class AskPhysicalServiceImpl implements AskPhysicalService { diagnosisPhysicalRecord.insert(); return diagnosisPhysicalRecord; } + + @Override + public List queryAskPhysicalHistory(String processId) { + return diagnosisPhysicalRecordService.queryAskPhysicalHistory(processId); + } } 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 c776479a..340d60b5 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 @@ -97,6 +97,7 @@ public class AskServiceImpl implements AskService { // 获取音频对应的文字 String askQuestion = AsrUtil.asrTransformByBytes(file.getBytes()); // 调用rasa获取文字内容 + throw new BusinessException("暂未实现"); }