Merge remote-tracking branch 'origin/dev' into dev
commit
b9e66386a5
@ -0,0 +1,30 @@
|
|||||||
|
package com.supervision.controller;
|
||||||
|
|
||||||
|
import com.supervision.pojo.vo.DiagnosisResultResVO;
|
||||||
|
import com.supervision.pojo.vo.FinishAskReqVO;
|
||||||
|
import com.supervision.service.AskDiagnosisResultService;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
@Api(tags = "问诊结束")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/askDiagnosisResult")
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
public class AskDiagnosisResultController {
|
||||||
|
|
||||||
|
private final AskDiagnosisResultService askDiagnosisResultService;
|
||||||
|
|
||||||
|
@ApiOperation("结束问诊")
|
||||||
|
@PostMapping("finishAsk")
|
||||||
|
public void finishAsk(@RequestBody FinishAskReqVO reqVO){
|
||||||
|
askDiagnosisResultService.finishAsk(reqVO);
|
||||||
|
}
|
||||||
|
|
||||||
|
@ApiOperation("查询最终诊断结果")
|
||||||
|
@GetMapping("queryDiagnosisResult")
|
||||||
|
public DiagnosisResultResVO queryDiagnosisResult(String processId){
|
||||||
|
return askDiagnosisResultService.queryDiagnosisResult(processId);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,20 @@
|
|||||||
|
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 BasisConfirmResultResVO {
|
||||||
|
|
||||||
|
@ApiModelProperty("证实诊断依据")
|
||||||
|
private String confirmingDiagnosis;
|
||||||
|
|
||||||
|
@ApiModelProperty("证实诊断列表")
|
||||||
|
private List<BasisDiagnosisNodeResVO> nodeList;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
package com.supervision.pojo.vo;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class BasisDiagnosisNodeResVO {
|
||||||
|
|
||||||
|
@ApiModelProperty("初步诊断依据 0对话 1体格检查 2辅助检查")
|
||||||
|
private Integer type;
|
||||||
|
|
||||||
|
@ApiModelProperty("记录名称 对话就是对话内容,其他的就是对应的名称")
|
||||||
|
private String recordName;
|
||||||
|
|
||||||
|
@ApiModelProperty("对应的记录ID")
|
||||||
|
private String recordId;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否正确,1正确")
|
||||||
|
private Integer correct;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,9 @@
|
|||||||
|
package com.supervision.pojo.vo;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class BasisIdentificationResultResVO {
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,17 @@
|
|||||||
|
package com.supervision.pojo.vo;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class BasisPrimaryResultResVO {
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("初步诊断依据")
|
||||||
|
private String preliminaryDiagnosis;
|
||||||
|
|
||||||
|
@ApiModelProperty("初步诊断依据列表")
|
||||||
|
private List<BasisDiagnosisNodeResVO> nodeList;
|
||||||
|
}
|
@ -0,0 +1,7 @@
|
|||||||
|
package com.supervision.pojo.vo;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class DealPlanResVO {
|
||||||
|
}
|
@ -0,0 +1,21 @@
|
|||||||
|
package com.supervision.pojo.vo;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel
|
||||||
|
public class DiagnosisDiseaseResultNodeVO {
|
||||||
|
|
||||||
|
@ApiModelProperty("疾病名称")
|
||||||
|
private String diseaseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否正确,1正确")
|
||||||
|
private Integer correct;
|
||||||
|
|
||||||
|
@ApiModelProperty("疾病ID")
|
||||||
|
private Integer diseaseId;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,29 @@
|
|||||||
|
package com.supervision.pojo.vo;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class DiagnosisResultResVO {
|
||||||
|
|
||||||
|
private String id;
|
||||||
|
|
||||||
|
@ApiModelProperty("预期诊断结果")
|
||||||
|
private ExpertDiagnosisResultResVO expertDiagnosisResult;
|
||||||
|
|
||||||
|
@ApiModelProperty("初步诊断依据")
|
||||||
|
private BasisPrimaryResultResVO basisPrimaryResultResVO;
|
||||||
|
|
||||||
|
@ApiModelProperty("证实诊断依据")
|
||||||
|
private BasisConfirmResultResVO basisConfirmResultResVO;
|
||||||
|
|
||||||
|
@ApiModelProperty("鉴别诊断依据")
|
||||||
|
private BasisIdentificationResultResVO basisIdentificationResult;
|
||||||
|
|
||||||
|
@ApiModelProperty("全面检查")
|
||||||
|
private FullCheckResVO fullCheck;
|
||||||
|
|
||||||
|
@ApiModelProperty("处置方案")
|
||||||
|
private DealPlanResVO dealPlan;
|
||||||
|
|
||||||
|
}
|
@ -0,0 +1,24 @@
|
|||||||
|
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 ExpertDiagnosisResultResVO {
|
||||||
|
|
||||||
|
@ApiModelProperty("诊断")
|
||||||
|
private String diagnosis;
|
||||||
|
|
||||||
|
@ApiModelProperty("用户诊断结果")
|
||||||
|
private List<DiagnosisDiseaseResultNodeVO> userDiagnosisResult;
|
||||||
|
|
||||||
|
@ApiModelProperty("预期诊断结果")
|
||||||
|
private List<DiagnosisDiseaseResultNodeVO> expertDiagnosisResult;
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
package com.supervision.pojo.vo;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel
|
||||||
|
public class FinishAskReqVO {
|
||||||
|
|
||||||
|
private String processId;
|
||||||
|
|
||||||
|
@ApiModelProperty("治疗计划类型(0门诊 1住院)")
|
||||||
|
private Integer treatmentPlanType;
|
||||||
|
|
||||||
|
@ApiModelProperty("治疗计划")
|
||||||
|
private String treatmentPlan;
|
||||||
|
}
|
@ -0,0 +1,4 @@
|
|||||||
|
package com.supervision.pojo.vo;
|
||||||
|
|
||||||
|
public class FullCheckResVO {
|
||||||
|
}
|
@ -0,0 +1,12 @@
|
|||||||
|
package com.supervision.service;
|
||||||
|
|
||||||
|
import com.supervision.pojo.vo.DiagnosisResultResVO;
|
||||||
|
import com.supervision.pojo.vo.FinishAskReqVO;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
|
||||||
|
public interface AskDiagnosisResultService {
|
||||||
|
|
||||||
|
void finishAsk(FinishAskReqVO reqVO);
|
||||||
|
|
||||||
|
DiagnosisResultResVO queryDiagnosisResult(String processId);
|
||||||
|
}
|
@ -0,0 +1,48 @@
|
|||||||
|
package com.supervision.service.impl;
|
||||||
|
|
||||||
|
|
||||||
|
import com.supervision.model.DiagnosisPrimary;
|
||||||
|
import com.supervision.model.DiagnosisResult;
|
||||||
|
import com.supervision.pojo.vo.DiagnosisResultResVO;
|
||||||
|
import com.supervision.pojo.vo.FinishAskReqVO;
|
||||||
|
import com.supervision.service.AskDiagnosisResultService;
|
||||||
|
import com.supervision.service.DiagnosisPrimaryService;
|
||||||
|
import com.supervision.service.DiagnosisResultService;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService {
|
||||||
|
|
||||||
|
private final DiagnosisResultService diagnosisResultService;
|
||||||
|
|
||||||
|
private final DiagnosisPrimaryService diagnosisPrimaryService;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
public void finishAsk(FinishAskReqVO reqVO) {
|
||||||
|
// 首先保存诊断结果
|
||||||
|
DiagnosisResult diagnosisResult = new DiagnosisResult();
|
||||||
|
diagnosisResult.setProcessId(reqVO.getProcessId());
|
||||||
|
// 最终诊断结果,从初步诊断中获取
|
||||||
|
List<DiagnosisPrimary> list = diagnosisPrimaryService.lambdaQuery()
|
||||||
|
.eq(DiagnosisPrimary::getProcessId, reqVO.getProcessId())
|
||||||
|
.eq(DiagnosisPrimary::getDeleteFlag,0)
|
||||||
|
.list();
|
||||||
|
diagnosisResult.setFinalDiagnosis(list.stream().map(DiagnosisPrimary::getPrimaryDiagnosisId).collect(Collectors.toList()));
|
||||||
|
diagnosisResult.setTreatmentPlanType(reqVO.getTreatmentPlanType());
|
||||||
|
diagnosisResult.setTreatmentPlan(reqVO.getTreatmentPlan());
|
||||||
|
diagnosisResultService.save(diagnosisResult);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DiagnosisResultResVO queryDiagnosisResult(String processId) {
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue