bugfix:修复初步诊断依据不正确的问题

dev_2.0.0
liu 1 year ago
parent 518192984c
commit 7a68456ef7

@ -3,7 +3,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 com.supervision.vo.result.AncillaryRecordByResultDTO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -16,7 +16,7 @@ import java.util.List;
*/
public interface DiagnosisAncillaryRecordMapper extends BaseMapper<DiagnosisAncillaryRecord> {
List<AncillaryRecordByResultDAO> queryAncillaryResultByProcessId(@Param("processId") String processId);
List<AncillaryRecordByResultDTO> queryAncillaryResultByProcessId(@Param("processId") String processId);
List<AskAncillaryHistoryResVO> queryAncillaryRecord(@Param("processId") String processId);

@ -3,7 +3,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 com.supervision.vo.result.PhysicalRecordByResultDTO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -16,7 +16,7 @@ import java.util.List;
*/
public interface DiagnosisPhysicalRecordMapper extends BaseMapper<DiagnosisPhysicalRecord> {
List<PhysicalRecordByResultDAO> queryPhysicalResultByProcessId(@Param("processId") String processId);
List<PhysicalRecordByResultDTO> queryPhysicalResultByProcessId(@Param("processId") String processId);
List<AskPhysicalHistoryResVO> queryAskPhysicalHistory(@Param("processId") String processId);

@ -3,7 +3,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 com.supervision.vo.result.AncillaryRecordByResultDTO;
import java.util.List;
@ -18,7 +18,7 @@ public interface DiagnosisAncillaryRecordService extends IService<DiagnosisAncil
/**
* -
*/
List<AncillaryRecordByResultDAO> queryAncillaryResultByProcessId(String processId);
List<AncillaryRecordByResultDTO> queryAncillaryResultByProcessId(String processId);
List<AskAncillaryHistoryResVO> queryAncillaryRecord(String processId);

@ -3,7 +3,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 com.supervision.vo.result.PhysicalRecordByResultDTO;
import java.util.List;
@ -19,7 +19,7 @@ public interface DiagnosisPhysicalRecordService extends IService<DiagnosisPhysic
* @param processId ID
* @return list
*/
List<PhysicalRecordByResultDAO> queryPhysicalResultByProcessId(String processId);
List<PhysicalRecordByResultDTO> queryPhysicalResultByProcessId(String processId);
/**
*

@ -5,7 +5,7 @@ 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 com.supervision.vo.result.AncillaryRecordByResultDTO;
import org.springframework.stereotype.Service;
import java.util.List;
@ -22,7 +22,7 @@ public class DiagnosisAncillaryRecordServiceImpl extends ServiceImpl<DiagnosisAn
/**
* -
*/
public List<AncillaryRecordByResultDAO> queryAncillaryResultByProcessId(String processId){
public List<AncillaryRecordByResultDTO> queryAncillaryResultByProcessId(String processId){
return this.baseMapper.queryAncillaryResultByProcessId(processId);
}

@ -5,7 +5,7 @@ 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 com.supervision.vo.result.PhysicalRecordByResultDTO;
import org.springframework.stereotype.Service;
import java.util.List;
@ -23,7 +23,7 @@ public class DiagnosisPhysicalRecordServiceImpl extends ServiceImpl<DiagnosisPhy
* -
*/
@Override
public List<PhysicalRecordByResultDAO> queryPhysicalResultByProcessId(String processId) {
public List<PhysicalRecordByResultDTO> queryPhysicalResultByProcessId(String processId) {
return this.baseMapper.queryPhysicalResultByProcessId(processId);
}

@ -3,16 +3,16 @@ package com.supervision.vo.result;
import lombok.Data;
@Data
public class AncillaryRecordByResultDAO {
public class AncillaryRecordByResultDTO {
private String itemName;
private String recordId;
/**
*
* (01)
*/
private Integer requireCheck;
private Integer primarilyDiagnosisCriteriaFlag;
/**
*

@ -3,16 +3,16 @@ package com.supervision.vo.result;
import lombok.Data;
@Data
public class PhysicalRecordByResultDAO {
public class PhysicalRecordByResultDTO {
private String toolLocationName;
private String recordId;
/**
*
* (01)
*/
private Integer requireCheck;
private Integer primarilyDiagnosisCriteriaFlag;
/**
*

@ -24,9 +24,10 @@
update_user_id,update_time
</sql>
<select id="queryAncillaryResultByProcessId"
resultType="com.supervision.vo.result.AncillaryRecordByResultDAO">
resultType="com.supervision.vo.result.AncillaryRecordByResultDTO">
select t3.item_name as itemName,
t2.require_check_flag as requireCheck,
t2.primarily_diagnosis_criteria_flag as primarilyDiagnosisCriteriaFlag,
t2.basis_confirm_flag as basisConfirm,
t2.basis_identification_flag as basisIdentification,
t1.basis_confirm_flag as recordBasisConfirmFlag,

@ -27,12 +27,14 @@
create_time,update_user_id,update_time
</sql>
<select id="queryPhysicalResultByProcessId"
resultType="com.supervision.vo.result.PhysicalRecordByResultDAO">
resultType="com.supervision.vo.result.PhysicalRecordByResultDTO">
select (IF(t4.location_name IS NULL, t3.tool_name,
CONCAT_WS(' | ', t3.tool_name, t4.location_name))) AS toolLocationName,
t1.id as recordId,
t1.basis_confirm_flag as recordBasisConfirmFlag,
t1.basis_identification_flag as recordBasisIdentificationFlag,
t2.primarily_diagnosis_criteria_flag as primarilyDiagnosisCriteriaFlag,
t2.basis_confirm_flag as basisConfirm,
t2.basis_identification_flag as basisIdentification,
t3.id as toolId,

@ -15,7 +15,7 @@ public class BasisDiagnosisNodeResVO {
@ApiModelProperty("对应的记录ID")
private String recordId;
@ApiModelProperty("是否正确,0不正确 1正确 2重复项")
@ApiModelProperty("是否正确,0不正确 1正确")
private Integer correct;

@ -11,8 +11,8 @@ import com.supervision.pojo.vo.*;
import com.supervision.service.*;
import com.supervision.vo.ask.TreatmentPlanRecordVo;
import com.supervision.vo.manage.DiseaseTreatmentPlanResVo;
import com.supervision.vo.result.AncillaryRecordByResultDAO;
import com.supervision.vo.result.PhysicalRecordByResultDAO;
import com.supervision.vo.result.AncillaryRecordByResultDTO;
import com.supervision.vo.result.PhysicalRecordByResultDTO;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@ -118,9 +118,9 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
// 鉴别诊断依据,来自于medicalRec的DifferentialDiagnosisCriteria
basisIdentificationResultResVO.setIdentificationDiagnosis(medicalRec.getDifferentialDiagnosisCriteria());
// 2.2 获取体格检查
List<PhysicalRecordByResultDAO> physicalRecordList = diagnosisPhysicalRecordService.queryPhysicalResultByProcessId(processId);
List<PhysicalRecordByResultDTO> physicalRecordList = diagnosisPhysicalRecordService.queryPhysicalResultByProcessId(processId);
List<BasisDiagnosisNodeResVO> nodeList = physicalRecordList.stream()
.filter(distinctPredicateNotNull(PhysicalRecordByResultDAO::getToolLocationName)).map(e -> {
.filter(distinctPredicateNotNull(PhysicalRecordByResultDTO::getToolLocationName)).map(e -> {
BasisDiagnosisNodeResVO nodeResVO = new BasisDiagnosisNodeResVO();
nodeResVO.setType(1);
nodeResVO.setRecordName(e.getToolLocationName());
@ -130,9 +130,9 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
return nodeResVO;
}).collect(Collectors.toList());
// 2.3 获取辅助检查
List<AncillaryRecordByResultDAO> ancillaryRecordList = diagnosisAncillaryRecordService.queryAncillaryResultByProcessId(processId);
List<AncillaryRecordByResultDTO> ancillaryRecordList = diagnosisAncillaryRecordService.queryAncillaryResultByProcessId(processId);
List<BasisDiagnosisNodeResVO> collect = ancillaryRecordList.stream()
.filter(distinctPredicateNotNull(AncillaryRecordByResultDAO::getItemName)).map(e -> {
.filter(distinctPredicateNotNull(AncillaryRecordByResultDTO::getItemName)).map(e -> {
BasisDiagnosisNodeResVO nodeResVO = new BasisDiagnosisNodeResVO();
nodeResVO.setCorrect(Objects.equals(e.getBasisIdentification(), e.getRecordBasisIdentificationFlag()) ? 1 : 0);
nodeResVO.setRecordId(e.getRecordId());
@ -151,9 +151,9 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
// 证实诊断依据,来自于medicalRec的ConfirmDiagnosisCriteria
basisConfirmResultResVO.setConfirmingDiagnosis(medicalRec.getConfirmDiagnosisCriteria());
// 2.2 获取体格检查的证实诊断依据
List<PhysicalRecordByResultDAO> physicalRecordList = diagnosisPhysicalRecordService.queryPhysicalResultByProcessId(processId);
List<PhysicalRecordByResultDTO> physicalRecordList = diagnosisPhysicalRecordService.queryPhysicalResultByProcessId(processId);
List<BasisDiagnosisNodeResVO> nodeList = physicalRecordList.stream()
.filter(distinctPredicateNotNull(PhysicalRecordByResultDAO::getToolLocationName)).map(e -> {
.filter(distinctPredicateNotNull(PhysicalRecordByResultDTO::getToolLocationName)).map(e -> {
BasisDiagnosisNodeResVO nodeResVO = new BasisDiagnosisNodeResVO();
nodeResVO.setType(1);
nodeResVO.setRecordName(e.getToolLocationName());
@ -163,9 +163,9 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
}).collect(Collectors.toList());
// 2.3 获取辅助检查
List<AncillaryRecordByResultDAO> ancillaryRecordList = diagnosisAncillaryRecordService.queryAncillaryResultByProcessId(processId);
List<AncillaryRecordByResultDTO> ancillaryRecordList = diagnosisAncillaryRecordService.queryAncillaryResultByProcessId(processId);
List<BasisDiagnosisNodeResVO> collect = ancillaryRecordList.stream()
.filter(distinctPredicateNotNull(AncillaryRecordByResultDAO::getItemName)).map(e -> {
.filter(distinctPredicateNotNull(AncillaryRecordByResultDTO::getItemName)).map(e -> {
BasisDiagnosisNodeResVO nodeResVO = new BasisDiagnosisNodeResVO();
nodeResVO.setCorrect(Objects.equals(e.getBasisConfirm(), e.getRecordBasisConfirmFlag()) ? 1 : 0);
nodeResVO.setRecordId(e.getRecordId());
@ -204,24 +204,24 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
basisDiagnosisNodeResVOS.addAll(qaList);
}
// 2.2 获取体格检查
List<PhysicalRecordByResultDAO> physicalRecordList = diagnosisPhysicalRecordService.queryPhysicalResultByProcessId(process.getId());
List<PhysicalRecordByResultDTO> physicalRecordList = diagnosisPhysicalRecordService.queryPhysicalResultByProcessId(process.getId());
List<BasisDiagnosisNodeResVO> physicalList = physicalRecordList.stream()
.filter(distinctPredicateNotNull(PhysicalRecordByResultDAO::getToolLocationName)).map(e -> {
.filter(distinctPredicateNotNull(PhysicalRecordByResultDTO::getToolLocationName)).map(e -> {
BasisDiagnosisNodeResVO nodeResVO = new BasisDiagnosisNodeResVO();
nodeResVO.setType(1);
nodeResVO.setRecordName(e.getToolLocationName());
nodeResVO.setRecordId(e.getRecordId());
// 如果是必做的,则是正确
nodeResVO.setCorrect(null == e.getRequireCheck() ? Integer.valueOf(0) : e.getRequireCheck());
// 如果是初步诊断依据
nodeResVO.setCorrect(e.getPrimarilyDiagnosisCriteriaFlag());
return nodeResVO;
}).collect(Collectors.toList());
basisDiagnosisNodeResVOS.addAll(physicalList);
// 2.3 获取辅助检查
List<AncillaryRecordByResultDAO> ancillaryRecordList = diagnosisAncillaryRecordService.queryAncillaryResultByProcessId(process.getId());
List<AncillaryRecordByResultDTO> ancillaryRecordList = diagnosisAncillaryRecordService.queryAncillaryResultByProcessId(process.getId());
List<BasisDiagnosisNodeResVO> collect = ancillaryRecordList.stream()
.filter(distinctPredicateNotNull(AncillaryRecordByResultDAO::getItemName)).map(e -> {
.filter(distinctPredicateNotNull(AncillaryRecordByResultDTO::getItemName)).map(e -> {
BasisDiagnosisNodeResVO nodeResVO = new BasisDiagnosisNodeResVO();
nodeResVO.setCorrect(null == e.getRequireCheck() ? Integer.valueOf(0) : e.getRequireCheck());
nodeResVO.setCorrect(e.getPrimarilyDiagnosisCriteriaFlag());
nodeResVO.setRecordId(e.getRecordId());
nodeResVO.setRecordName(e.getItemName());
nodeResVO.setType(2);
@ -272,7 +272,7 @@ public class AskDiagnosisResultServiceImpl implements AskDiagnosisResultService
public static <K> Predicate<K> distinctPredicateNotNull(Function<K, Object> function) {
ConcurrentHashMap<Object, Boolean> map = new ConcurrentHashMap<>();
// 根据key进行去重,并排除为null的数据
return t -> null != function.apply(t) && null == map.putIfAbsent(function.apply(t), true);
}

Loading…
Cancel
Save