代码优化

dev_2.0.0
liu 1 year ago
parent 680e07cc39
commit c78b90fe4a

@ -4,6 +4,7 @@ package com.supervision.controller;
import com.supervision.model.DiagnosisPrimary;
import com.supervision.model.Disease;
import com.supervision.pojo.vo.DiagnosticBasisForPrimaryReqVO;
import com.supervision.pojo.vo.RecordForPrimaryChooseVO;
import com.supervision.pojo.vo.SaveDiagnosisPrimaryReqVO;
import com.supervision.vo.ask.DiagnosticBasisForPrimaryResVO;
import com.supervision.service.AskPrimaryService;
@ -50,8 +51,8 @@ public class AskPrimaryController {
@ApiOperation("查询选择初步诊断关联的问诊记录")
@PostMapping("queryRecordForPrimaryChoose")
public void queryRecordForPrimaryChoose(String processId){
public RecordForPrimaryChooseVO queryRecordForPrimaryChoose(String processId){
return askPrimaryService.queryRecordForPrimaryChoose(processId);
}
@ApiOperation("确认诊断时,修改初步诊断的信息")

@ -0,0 +1,11 @@
package com.supervision.pojo.vo;
import lombok.Data;
@Data
public class ChooseNode {
private String nodeId;
private String name;
}

@ -0,0 +1,21 @@
package com.supervision.pojo.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
@ApiModel
public class RecordForPrimaryChooseVO {
@ApiModelProperty("问诊ID")
private List<ChooseNode> askList;
@ApiModelProperty("辅助检查ID")
private List<ChooseNode> ancillaryList;
@ApiModelProperty("体格检查ID")
private List<ChooseNode> physicalList;
}

@ -2,6 +2,8 @@ package com.supervision.pojo.vo;
import com.supervision.model.DiagnosisPrimary;
import com.supervision.model.DiagnosisPrimaryRelation;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
@ -9,10 +11,12 @@ import java.util.List;
@EqualsAndHashCode(callSuper = true)
@Data
@ApiModel(parent = DiagnosisPrimary.class)
public class SaveDiagnosisPrimaryReqVO extends DiagnosisPrimary {
// 关联的初步诊断列表
private List<DiagnosisPrimaryRelation> primaryRecordList;
@ApiModelProperty("关联的初步诊断列表")
private RecordForPrimaryChooseVO choose;
}

@ -3,11 +3,11 @@ package com.supervision.service;
import com.supervision.model.DiagnosisPrimary;
import com.supervision.model.Disease;
import com.supervision.pojo.vo.DiagnosticBasisForPrimaryReqVO;
import com.supervision.pojo.vo.RecordForPrimaryChooseVO;
import com.supervision.pojo.vo.SaveDiagnosisPrimaryReqVO;
import com.supervision.vo.ask.DiagnosticBasisForPrimaryResVO;
import com.supervision.vo.ask.DiagnosisPrimaryVO;
import com.supervision.vo.ask.ModifyPrimaryDiseaseInfoReqVO;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@ -21,6 +21,8 @@ public interface AskPrimaryService {
void savePrimary(SaveDiagnosisPrimaryReqVO reqVO);
RecordForPrimaryChooseVO queryRecordForPrimaryChoose(String processId);
void updatePrimaryByConfirm(DiagnosisPrimary reqVO);
void deletePrimary(String id);

@ -6,13 +6,13 @@ import cn.hutool.core.util.StrUtil;
import com.supervision.exception.BusinessException;
import com.supervision.model.*;
import com.supervision.model.Process;
import com.supervision.pojo.vo.ChooseNode;
import com.supervision.pojo.vo.DiagnosticBasisForPrimaryReqVO;
import com.supervision.pojo.vo.RecordForPrimaryChooseVO;
import com.supervision.pojo.vo.SaveDiagnosisPrimaryReqVO;
import com.supervision.vo.ask.DiagnosticBasisForPrimaryResVO;
import com.supervision.vo.ask.*;
import com.supervision.service.*;
import com.supervision.util.UserUtil;
import com.supervision.vo.ask.DiagnosisPrimaryVO;
import com.supervision.vo.ask.ModifyPrimaryDiseaseInfoReqVO;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -62,9 +62,81 @@ public class AskPrimaryServiceImpl implements AskPrimaryService {
diagnosisPrimary.setCreateUserId(UserUtil.getUser().getId());
diagnosisPrimaryService.save(diagnosisPrimary);
// 然后开始保存初步诊断关键的诊断
List<DiagnosisPrimaryRelation> primaryRecordList = reqVO.getPrimaryRecordList();
primaryRecordList.forEach(e -> e.setPrimaryId(diagnosisPrimary.getId()));
diagnosisPrimaryRelationService.saveBatch(primaryRecordList);
RecordForPrimaryChooseVO choose = reqVO.getChoose();
if (CollUtil.isNotEmpty(choose.getAskList())){
List<DiagnosisPrimaryRelation> askRelationList = choose.getAskList().stream().map(e -> {
DiagnosisPrimaryRelation relation = new DiagnosisPrimaryRelation();
relation.setProcessId(diagnosisPrimary.getProcessId());
relation.setPrimaryId(diagnosisPrimary.getId());
relation.setType(1);
relation.setRelationId(e.getNodeId());
relation.setCreateUserId(UserUtil.getUser().getId());
return relation;
}).collect(Collectors.toList());
diagnosisPrimaryRelationService.saveBatch(askRelationList);
}
if (CollUtil.isNotEmpty(choose.getPhysicalList())){
List<DiagnosisPrimaryRelation> physicalRelationList = choose.getPhysicalList().stream().map(e -> {
DiagnosisPrimaryRelation relation = new DiagnosisPrimaryRelation();
relation.setProcessId(diagnosisPrimary.getProcessId());
relation.setPrimaryId(diagnosisPrimary.getId());
relation.setType(2);
relation.setRelationId(e.getNodeId());
relation.setCreateUserId(UserUtil.getUser().getId());
return relation;
}).collect(Collectors.toList());
diagnosisPrimaryRelationService.saveBatch(physicalRelationList);
}
if (CollUtil.isNotEmpty(choose.getAncillaryList())){
List<DiagnosisPrimaryRelation> ancillaryRelationList = choose.getAncillaryList().stream().map(e -> {
DiagnosisPrimaryRelation relation = new DiagnosisPrimaryRelation();
relation.setProcessId(diagnosisPrimary.getProcessId());
relation.setPrimaryId(diagnosisPrimary.getId());
relation.setType(3);
relation.setRelationId(e.getNodeId());
relation.setCreateUserId(UserUtil.getUser().getId());
return relation;
}).collect(Collectors.toList());
diagnosisPrimaryRelationService.saveBatch(ancillaryRelationList);
}
}
@Override
public RecordForPrimaryChooseVO queryRecordForPrimaryChoose(String processId) {
RecordForPrimaryChooseVO resVO = new RecordForPrimaryChooseVO();
// 查询语音问诊记录
List<DiagnosisQaRecord> list = diagnosisQaRecordService.lambdaQuery().eq(DiagnosisQaRecord::getProcessId, processId).orderByAsc(DiagnosisQaRecord::getCreateTime).list();
List<ChooseNode> askRecordList = list.stream().map(e -> {
ChooseNode chooseNode = new ChooseNode();
chooseNode.setNodeId(e.getId());
chooseNode.setName(e.getQuestion());
return chooseNode;
}).collect(Collectors.toList());
resVO.setAskList(askRecordList);
// 查询体格检查记录
List<AskPhysicalHistoryResVO> physicalHistoryList = diagnosisPhysicalRecordService.queryAskPhysicalHistory(processId);
List<ChooseNode> physicalList = physicalHistoryList.stream().map(e -> {
ChooseNode chooseNode = new ChooseNode();
chooseNode.setNodeId(e.getId());
chooseNode.setName(StrUtil.join(" | ", e.getToolName(), e.getLocationName()));
return chooseNode;
}).collect(Collectors.toList());
resVO.setPhysicalList(physicalList);
List<AskAncillaryHistoryResVO> ancillaryHistoryList = diagnosisAncillaryRecordService.queryAncillaryRecord(processId);
List<ChooseNode> ancillaryList = ancillaryHistoryList.stream().map(e -> {
ChooseNode chooseNode = new ChooseNode();
chooseNode.setNodeId(e.getId());
chooseNode.setName(e.getItemName());
return chooseNode;
}).collect(Collectors.toList());
resVO.setAncillaryList(ancillaryList);
return resVO;
}
@Override

Loading…
Cancel
Save