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 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; } }