bugfix:修复电子病历不能正确保存的问题

dev_2.0.0
liu 1 year ago
parent a1da405d37
commit 3d741b282e

@ -35,6 +35,8 @@ public class AskPrimaryServiceImpl implements AskPrimaryService {
private final DiagnosisPrimaryRelationService diagnosisPrimaryRelationService;
private final ProcessMedicalService processMedicalService;
@Override
public List<DiagnosisPrimaryVO> queryAskPrimaryList(String processId) {
List<DiagnosisPrimaryVO> resVoList = diagnosisPrimaryService.queryAskPrimaryList(processId);
@ -154,6 +156,16 @@ public class AskPrimaryServiceImpl implements AskPrimaryService {
@Override
@Transactional(rollbackFor = Exception.class)
public void confirmPrimaryByAskEnd(List<PrimaryConfirmReqVO> reqVOList) {
Optional<PrimaryConfirmReqVO> any = reqVOList.stream().findAny();
if (!any.isPresent()) {
throw new BusinessException("初步诊断不能为空");
}
String processId = any.get().getProcessId();
// 校验,如果没有填写病历,那么就不允许诊毕
Integer count = processMedicalService.lambdaQuery().eq(ProcessMedical::getProcessId, processId).count();
if(count < 1){
throw new BusinessException("电子病历未填写,请填写电子病例后诊毕");
}
for (PrimaryConfirmReqVO reqVO : reqVOList) {
// 修改初步诊断是否被排除
diagnosisPrimaryService.lambdaUpdate().set(DiagnosisPrimary::getExcludeFlag, reqVO.getExcludeFlag())
@ -162,7 +174,7 @@ public class AskPrimaryServiceImpl implements AskPrimaryService {
saveDiagnosticBasis(reqVO.getDiagnosticBasisList());
}
// 然后将process的状态改为诊毕
processService.lambdaUpdate().set(Process::getStatus, 1).update();
processService.lambdaUpdate().set(Process::getStatus, 1).eq(Process::getId, processId).update();
}
private void saveDiagnosticBasis(List<DiagnosticBasisForPrimaryReqVO> diagnosticBasisList) {
@ -226,7 +238,7 @@ public class AskPrimaryServiceImpl implements AskPrimaryService {
List<DiagnosticBasisForPrimaryResVO> result = new ArrayList<>();
for (DiagnosticBasisForPrimaryResVO node : resList) {
List<DiagnosisPrimaryRelation> relationPrimaryList = relationMap.get(node.getId());
if (CollUtil.isEmpty(relationPrimaryList)){
if (CollUtil.isEmpty(relationPrimaryList)) {
continue;
}
Set<String> primarySet = relationPrimaryList.stream().map(DiagnosisPrimaryRelation::getPrimaryId).collect(Collectors.toSet());

@ -26,8 +26,6 @@ public class AskProcessServiceImpl implements AskProcessService {
private final MedicalRecService medicalRecService;
private final ProcessMedicalService processMedicalService;
@Override
@Transactional(rollbackFor = Exception.class)
public Process creatDiagnosisProcess(String patientId,String medicalId, User user) {
@ -43,15 +41,6 @@ public class AskProcessServiceImpl implements AskProcessService {
process.setProcessType(0);//默认学习类型
process.setProcessNo(SequenceUtil.getProcessNo());
processService.save(process);
// 还需要生成一个vp_process_medical
ProcessMedical processMedical = new ProcessMedical();
processMedical.setProcessId(process.getId());
processMedical.setMedicalRecId(medicalId);
processMedical.setPatientId(patientId);
processMedical.setDiseaseId(process.getDiseaseId());
processMedical.setCreateUserId(user.getId());
processMedical.setUpdateUserId(user.getId());
processMedicalService.save(processMedical);
return process;
}

Loading…
Cancel
Save