修复bug
parent
febc651f61
commit
caab71f1a3
|
@ -73,7 +73,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
[TypeFilter(typeof(TrialResourceFilter))]
|
||||
public async Task<IResponseOutput> VerifyQCCanAddChallenge(Guid subjectVisitId, [FromRoute] CurrentQC currentQCType)
|
||||
{
|
||||
VerifyIsCanQC(null, subjectVisitId);
|
||||
await VerifyIsCanQCAsync(null, subjectVisitId);
|
||||
if (!await _repository.AnyAsync<TrialQCQuestionAnswer>(t => t.SubjectVisitId == subjectVisitId && t.CurrentQCEnum == currentQCType))
|
||||
{
|
||||
return ResponseOutput.NotOk("请先核查图像,保存审核问题后,再发质疑。");
|
||||
|
@ -95,7 +95,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
[Authorize(Policy = "ImageQCPolicy")]
|
||||
public async Task<QCChallenge> AddOrUpdateQCChallenge(QCChallengeCommand qaQuestionCommand, Guid trialId, [FromRoute] TrialQCProcess trialQCProcess, [FromRoute] CurrentQC currentQCType)
|
||||
{
|
||||
VerifyIsCanQC(null, qaQuestionCommand.SubjectVisitId);
|
||||
await VerifyIsCanQCAsync(null, qaQuestionCommand.SubjectVisitId);
|
||||
|
||||
if (qaQuestionCommand.Id == null)
|
||||
{
|
||||
|
@ -156,7 +156,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
|
||||
if (_userInfo.UserTypeEnumInt == (int)UserTypeEnum.IQC)
|
||||
{
|
||||
VerifyIsCanQC(null, subjectVisitId);
|
||||
await VerifyIsCanQCAsync(null, subjectVisitId);
|
||||
}
|
||||
|
||||
var dbQCChallenge = (await _qcChallengeRepository.FirstOrDefaultAsync(t => t.Id == qcChallengeId)).IfNullThrowException();
|
||||
|
@ -692,7 +692,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
public async Task<IResponseOutput> AddOrUpdateQCQuestionAnswerList(QCQuestionAnswerCommand[] qcQuestionAnswerCommands, Guid trialId, Guid subjectVisitId, [FromRoute] TrialQCProcess trialQCProcess, [FromRoute] CurrentQC currentQCType)
|
||||
{
|
||||
//验证是否能操作
|
||||
VerifyIsCanQC(null, subjectVisitId);
|
||||
await VerifyIsCanQCAsync(null, subjectVisitId);
|
||||
|
||||
//更新
|
||||
if (qcQuestionAnswerCommands.Any(t => t.Id != null))
|
||||
|
@ -762,7 +762,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
public async Task<IResponseOutput> SetSeriesState(Guid subjectVisitId, Guid studyId, Guid seriesId, int state)
|
||||
{
|
||||
|
||||
VerifyIsCanQC(null, subjectVisitId);
|
||||
await VerifyIsCanQCAsync(null, subjectVisitId);
|
||||
|
||||
|
||||
var series = await _repository.Where<DicomSeries>(t => t.Id == seriesId, true).IgnoreQueryFilters().FirstOrDefaultAsync();
|
||||
|
@ -838,7 +838,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
public async Task<IResponseOutput> UpdateModality(Guid id, Guid subjectVisitId, int type, [FromQuery] string modality, [FromQuery] string bodyPart)
|
||||
{
|
||||
|
||||
VerifyIsCanQC(null, subjectVisitId);
|
||||
await VerifyIsCanQCAsync(null, subjectVisitId);
|
||||
|
||||
var DicomSeriesdata = await _repository.GetQueryable<DicomSeries>().Where(x => x.StudyId == id).ToListAsync();
|
||||
var study = await _repository.FirstOrDefaultAsync<DicomStudy>(t => t.Id == id);
|
||||
|
@ -931,7 +931,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
[HttpGet("{subjectVisitId:guid}")]
|
||||
public async Task<IResponseOutput> VerifyCanQCPassedOrFailed(Guid subjectVisitId)
|
||||
{
|
||||
VerifyIsCanQC(null, subjectVisitId);
|
||||
await VerifyIsCanQCAsync(null, subjectVisitId);
|
||||
|
||||
if (await _repository.AnyAsync<QCChallenge>(t => t.SubjectVisitId == subjectVisitId && t.IsClosed == false))
|
||||
{
|
||||
|
@ -965,13 +965,13 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
}
|
||||
var waitDeleteStudyList = await _dicomStudyRepository.Where(x => ids.Contains(x.Id)).ToListAsync();
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
foreach (var study in waitDeleteStudyList)
|
||||
{
|
||||
|
||||
|
@ -997,7 +997,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
|
||||
}).ToListAsync();
|
||||
|
||||
|
||||
|
||||
|
||||
var success3 = await _repository.BatchDeleteAsync<DicomSeries>(t => t.StudyId == id);
|
||||
var success4 = await _repository.BatchDeleteAsync<StudyMonitor>(t => t.StudyId == id);
|
||||
|
@ -1029,7 +1029,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
#endregion
|
||||
|
||||
|
||||
public async void VerifyIsCanQC(SubjectVisit? subjectVisit, Guid? sujectVisitId = null)
|
||||
public async Task VerifyIsCanQCAsync(SubjectVisit? subjectVisit, Guid? sujectVisitId = null)
|
||||
{
|
||||
if (sujectVisitId != null)
|
||||
{
|
||||
|
@ -1406,7 +1406,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
|
||||
var dbSubjectVisit = (await _subjectVisitRepository.FirstOrDefaultAsync(t => t.Id == subjectVisitId)).IfNullThrowException();
|
||||
|
||||
VerifyIsCanQC(dbSubjectVisit);
|
||||
await VerifyIsCanQCAsync(dbSubjectVisit);
|
||||
|
||||
//有人QC Passed
|
||||
if (auditState == AuditStateEnum.QCPassed)
|
||||
|
@ -1534,7 +1534,7 @@ namespace IRaCIS.Core.Application.Image.QA
|
|||
var instanceIdList = await _repository.Where<DicomInstance>(t => t.DicomSerie.IsDeleted && t.SubjectVisitId == subjectVisitId)
|
||||
.Select(t => new { InstanceId = t.Id, t.SeriesId, t.StudyId, t.SubjectId, t.SiteId }).ToListAsync();
|
||||
|
||||
|
||||
|
||||
instanceIdList.ForEach(t =>
|
||||
{
|
||||
var path = _dicomFileStoreHelper.GetInstanceFilePath(new DicomStudy() { Id = t.StudyId, SubjectId = t.SubjectId, TrialId = trialId, SiteId = t.SiteId, SubjectVisitId = subjectVisitId }, t.SeriesId, t.InstanceId.ToString());
|
||||
|
|
|
@ -104,11 +104,7 @@ namespace IRaCIS.Application.Services
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
[HttpDelete("{id:guid}/{trialId:guid}")]
|
||||
|
||||
[TrialAudit(AuditType.SubjectAudit, AuditOptType.DeleteSubject)]
|
||||
[TypeFilter(typeof(TrialResourceFilter))]
|
||||
public async Task<IResponseOutput> DeleteSubject(Guid id)
|
||||
|
|
Loading…
Reference in New Issue