修改非dicom 阅片
continuous-integration/drone/push Build is passing

This commit is contained in:
2025-02-26 13:25:56 +08:00
parent 2a9c1ec45c
commit 56170b73ed
11 changed files with 19328 additions and 20 deletions
@@ -18,6 +18,9 @@ namespace IRaCIS.Core.Application.Contracts
public List<NoneDicomStudyFileView> NoneDicomStudyFileList { get; set; } = new List<NoneDicomStudyFileView>();
public bool IsReading { get; set; }
public bool IsDeleted { get; set; }
}
public class TaskDicomStudyView : NoneDicomStudyView
@@ -53,9 +56,10 @@ namespace IRaCIS.Core.Application.Contracts
public DateTime ImageDate { get; set; }
public string Description { get; set; } = string.Empty;
public int Code { get; set; }
public int Code { get; set; }
public string VideoName { get; set; } = string.Empty;
public string VideoObjectName { get; set; } = string.Empty;
@@ -33,6 +33,8 @@ namespace IRaCIS.Core.Application.Image.QA
IRepository<ReadModule> _readModuleRepository,
IRepository<DicomInstance> _dicomInstanceRepository,
IRepository<TrialQCQuestionAnswer> _trialQCQuestionAnswerRepository,
IRepository<NoneDicomStudy> _noneDicomStudyRepository,
IRepository<NoneDicomStudyFile> _noneDicomStudyFileRepository,
IRepository<ReadingQuestionCriterionTrial> _readingQuestionCriterionTrialRepository,
IDistributedLockProvider _distributedLockProvider, IReadingClinicalDataService _readingClinicalDataService,
IOSSService _oSSService,
@@ -698,13 +700,6 @@ namespace IRaCIS.Core.Application.Image.QA
study.InstanceCount = study.InstanceCount - 1;
////删除到最后一个instance
//if (series.InstanceCount == 0)
//{
// series.IsDeleted = true;
//}
}
else if (state == 5)
@@ -726,7 +721,73 @@ namespace IRaCIS.Core.Application.Image.QA
}
/// <summary>
/// 1、设置为不读片,2 设置为读片(取消 先前设置为不读片) 4 设置为删除(数据库记录软删除) 5 恢复为未删除
/// </summary>
/// <param name="subjectVisitId"></param>
/// <param name="noneDicomStudyId"></param>
/// <param name="noneDicomStudyFileId"></param>
/// <param name="state"></param>
/// <returns></returns>
[HttpPut]
[TrialGlobalLimit("AfterStopCannNotOpt")]
public async Task<IResponseOutput> SetNodicomStudyState(Guid subjectVisitId, Guid noneDicomStudyId, Guid? noneDicomStudyFileId, int state)
{
await VerifyIsCanQCAsync(null, subjectVisitId);
//设置检查
if (noneDicomStudyFileId == null)
{
var noneDicomStudy = (await _noneDicomStudyRepository.Where(t => t.Id == noneDicomStudyId, true).IgnoreQueryFilters().FirstOrDefaultAsync()).IfNullThrowException();
if (state == 1)
{
noneDicomStudy.IsReading = false;
}
else if (state == 2)
{
noneDicomStudy.IsReading = true;
}
else if (state == 4)
{
noneDicomStudy.IsDeleted = true;
}
else if (state == 5)
{
noneDicomStudy.IsDeleted = false;
}
}
//设置检查下面的文件
else
{
var noneDicomStudyFile = (await _noneDicomStudyFileRepository.Where(t => t.Id == noneDicomStudyFileId, true).IgnoreQueryFilters().FirstOrDefaultAsync()).IfNullThrowException();
if (state == 1)
{
noneDicomStudyFile.IsReading = false;
}
else if (state == 2)
{
noneDicomStudyFile.IsReading = true;
}
else if (state == 4)
{
noneDicomStudyFile.IsDeleted = true;
}
else if (state == 5)
{
noneDicomStudyFile.IsDeleted = false;
}
}
await _noneDicomStudyRepository.SaveChangesAsync();
return ResponseOutput.Ok();
}
/// <summary>
///type 1 :study 2: series 3:非dicom QC修改检查部位和 拍片类型
@@ -401,6 +401,8 @@ namespace IRaCIS.Core.Application.Service
bool isFilterZip = false;
bool isIgnoreDelete = false;
string token = string.Empty;
//一致性核查