修改设置重传完成 限制

Uat_Study
hang 2022-04-26 15:27:40 +08:00
parent 55d3ea2c75
commit 34a5532ee2
1 changed files with 25 additions and 13 deletions

View File

@ -1527,7 +1527,8 @@ namespace IRaCIS.Core.Application.Image.QA
// 删除序列
List<DataInspection> datas = new List<DataInspection>();
var DicomSeriesdata = await _repository.GetQueryable<DicomSeries>().Where(x => x.SubjectVisitId == subjectVisitId&&x.IsDeleted).Select(x => new {
var DicomSeriesdata = await _repository.GetQueryable<DicomSeries>().Where(x => x.SubjectVisitId == subjectVisitId && x.IsDeleted).Select(x => new
{
StudyCode = x.DicomStudy.StudyCode,
Modalities = x.DicomStudy.Modalities,
SeriesNumber = x.SeriesNumber,
@ -1724,14 +1725,27 @@ namespace IRaCIS.Core.Application.Image.QA
return ResponseOutput.NotOk("重传完成 只允许CRC 设置!");
}
var qcChallenge = await _repository.FirstOrDefaultAsync<QCChallenge>(t => t.Id == cRCReuploadFinishedCommand.QCChallengeId);
if (qcChallenge == null) return Null404NotFound(qcChallenge);
var subjectVisitId = qcChallenge.SubjectVisitId;
if (await _subjectVisitRepository.Where(t => t.Id == subjectVisitId).SelectMany(t => t.StudyList)
.CountAsync() == 0 &&
await _subjectVisitRepository.Where(t => t.Id == subjectVisitId)
.SelectMany(t => t.NoneDicomStudyList).SelectMany(u => u.NoneDicomFileList).CountAsync() == 0)
{
throw new BusinessValidationFailedException("当前没有影像,不允许设置重传完成");
}
var trialConfig = await _trialRepository
.Select(t => new { TrialId = t.Id, t.QCProcessEnum, t.IsImageConsistencyVerification, t.IsUrgent, t.IsHaveFirstGiveMedicineDate, t.ClinicalInformationTransmissionEnum })
.Where(t => t.TrialId == cRCReuploadFinishedCommand.TrialId).FirstOrDefaultAsync();
var qcChallenge = await _repository.FirstOrDefaultAsync<QCChallenge>(t => t.Id == cRCReuploadFinishedCommand.QCChallengeId);
if (qcChallenge == null) return Null404NotFound(qcChallenge);
qcChallenge.ReuploadEnum = QCChanllengeReuploadEnum.CRCReuploaded;
@ -1767,8 +1781,6 @@ namespace IRaCIS.Core.Application.Image.QA
dbSubjectVisit.IsConfirmedClinicalData = true;
var signSuccess = await _repository.BatchUpdateAsync<TrialSign>(t => t.Id == cRCReuploadFinishedCommand.SignId, u => new TrialSign() { IsCompleted = true });
}
var success = await _repository.SaveChangesAsync();