|
|
@ -1,6 +1,7 @@
|
|
|
|
package com.supervision.service.impl;
|
|
|
|
package com.supervision.service.impl;
|
|
|
|
|
|
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
|
import com.supervision.dto.DiseaseAncillaryDto;
|
|
|
|
import com.supervision.dto.DiseaseAncillaryDto;
|
|
|
|
import com.supervision.exception.BusinessException;
|
|
|
|
import com.supervision.exception.BusinessException;
|
|
|
@ -56,10 +57,8 @@ public class AskAncillaryServiceImpl implements AskAncillaryService {
|
|
|
|
.orElseThrow(() -> new BusinessException("流程ID不能为空")).getProcessId()))
|
|
|
|
.orElseThrow(() -> new BusinessException("流程ID不能为空")).getProcessId()))
|
|
|
|
.orElseThrow(() -> new BusinessException("未找到流程ID"));
|
|
|
|
.orElseThrow(() -> new BusinessException("未找到流程ID"));
|
|
|
|
for (AskAncillaryBatchReqVO item : reqVO) {
|
|
|
|
for (AskAncillaryBatchReqVO item : reqVO) {
|
|
|
|
for (String primaryId : item.getPrimaryId()) {
|
|
|
|
|
|
|
|
// 执行并保存结果
|
|
|
|
// 执行并保存结果
|
|
|
|
execSaveDiagnosisAncillaryRecord(item.getAncillaryItemId(), primaryId, process);
|
|
|
|
execSaveDiagnosisAncillaryRecord(item.getAncillaryItemId(), item.getPrimaryId(), process);
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -68,14 +67,14 @@ public class AskAncillaryServiceImpl implements AskAncillaryService {
|
|
|
|
public DiagnosisAncillaryRecordVo execAskAncillaryResult(AskAncillaryResultReqVO reqVO) {
|
|
|
|
public DiagnosisAncillaryRecordVo execAskAncillaryResult(AskAncillaryResultReqVO reqVO) {
|
|
|
|
// 首先根据process_id查新到流程ID
|
|
|
|
// 首先根据process_id查新到流程ID
|
|
|
|
Process process = Optional.ofNullable(processService.getById(reqVO.getProcessId())).orElseThrow(() -> new BusinessException("未找到流程ID"));
|
|
|
|
Process process = Optional.ofNullable(processService.getById(reqVO.getProcessId())).orElseThrow(() -> new BusinessException("未找到流程ID"));
|
|
|
|
DiagnosisAncillaryRecord record = execSaveDiagnosisAncillaryRecord(reqVO.getItemId(), reqVO.getPrimaryId(), process);
|
|
|
|
DiagnosisAncillaryRecord record = execSaveDiagnosisAncillaryRecord(reqVO.getItemId(), CollUtil.newArrayList(reqVO.getPrimaryId()), process);
|
|
|
|
//重组返回结果
|
|
|
|
//重组返回结果
|
|
|
|
DiagnosisAncillaryRecordVo recordVo = BeanUtil.toBean(record, DiagnosisAncillaryRecordVo.class);
|
|
|
|
DiagnosisAncillaryRecordVo recordVo = BeanUtil.toBean(record, DiagnosisAncillaryRecordVo.class);
|
|
|
|
recordVo.setAncillaryName(record.getItemName());
|
|
|
|
recordVo.setAncillaryName(record.getItemName());
|
|
|
|
return recordVo;
|
|
|
|
return recordVo;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private DiagnosisAncillaryRecord execSaveDiagnosisAncillaryRecord(String itemId, String primaryId, Process process) {
|
|
|
|
private DiagnosisAncillaryRecord execSaveDiagnosisAncillaryRecord(String itemId, List<String> primaryIdList, Process process) {
|
|
|
|
// 找到对应的项目的检查结果
|
|
|
|
// 找到对应的项目的检查结果
|
|
|
|
DiseaseAncillary diseaseAncillaryQueryBean = new DiseaseAncillary();
|
|
|
|
DiseaseAncillary diseaseAncillaryQueryBean = new DiseaseAncillary();
|
|
|
|
diseaseAncillaryQueryBean.setItemId(itemId);
|
|
|
|
diseaseAncillaryQueryBean.setItemId(itemId);
|
|
|
@ -89,13 +88,25 @@ public class AskAncillaryServiceImpl implements AskAncillaryService {
|
|
|
|
DiagnosisAncillaryRecord record = new DiagnosisAncillaryRecord();
|
|
|
|
DiagnosisAncillaryRecord record = new DiagnosisAncillaryRecord();
|
|
|
|
record.setProcessId(process.getId());
|
|
|
|
record.setProcessId(process.getId());
|
|
|
|
record.setItemId(itemId);
|
|
|
|
record.setItemId(itemId);
|
|
|
|
record.setPrimaryId(primaryId);
|
|
|
|
|
|
|
|
record.setAncillaryId(diseaseAncillary.getId());
|
|
|
|
record.setAncillaryId(diseaseAncillary.getId());
|
|
|
|
record.setResult(diseaseAncillary.getResult());
|
|
|
|
record.setResult(diseaseAncillary.getResult());
|
|
|
|
record.setCreateUserId(UserUtil.getUser().getId());
|
|
|
|
record.setCreateUserId(UserUtil.getUser().getId());
|
|
|
|
record.setUpdateUserId(UserUtil.getUser().getId());
|
|
|
|
record.setUpdateUserId(UserUtil.getUser().getId());
|
|
|
|
record.insert();
|
|
|
|
record.insert();
|
|
|
|
record.setItemName(diseaseAncillary.getItemName());
|
|
|
|
record.setItemName(diseaseAncillary.getItemName());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 保存初步诊断的关联关系
|
|
|
|
|
|
|
|
for (String primaryId : primaryIdList) {
|
|
|
|
|
|
|
|
DiagnosisPrimaryRelation diagnosisPrimaryRelation = new DiagnosisPrimaryRelation();
|
|
|
|
|
|
|
|
diagnosisPrimaryRelation.setProcessId(process.getId());
|
|
|
|
|
|
|
|
diagnosisPrimaryRelation.setPrimaryId(primaryId);
|
|
|
|
|
|
|
|
diagnosisPrimaryRelation.setType(3);
|
|
|
|
|
|
|
|
diagnosisPrimaryRelation.setRelationId(record.getId());
|
|
|
|
|
|
|
|
diagnosisPrimaryRelation.insert();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return record;
|
|
|
|
return record;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|