修改非dicom dicom 质控完修改检查信息

This commit is contained in:
2025-07-31 15:07:40 +08:00
parent f32a66a89b
commit 7fc643bae1
14 changed files with 20004 additions and 10 deletions
@@ -50,10 +50,10 @@ namespace IRaCIS.Core.Application.Contracts
//质控过程中,需要忽略过滤质控设置删除的检查,以及设置删除的文件,质控通过后才
noneDicomStudyQueryable = _noneDicomStudyRepository.Where(t => t.SubjectVisitId == subjectVisitId, ignoreQueryFilters: isViewDelete)
.WhereIf(nonedicomStudyId != null, t => t.Id == nonedicomStudyId)
.WhereIf(isReading, t => t.IsReading && t.IsDeleted==false)
.WhereIf(isReading, t => t.IsReading && t.IsDeleted == false)
.ProjectTo<NoneDicomStudyView>(_mapper.ConfigurationProvider, new { isFilterZip = isFilterZip, isReading= isReading });
.ProjectTo<NoneDicomStudyView>(_mapper.ConfigurationProvider, new { isFilterZip = isFilterZip, isReading = isReading });
}
else
{
@@ -75,6 +75,19 @@ namespace IRaCIS.Core.Application.Contracts
}
[HttpPut]
public async Task<IResponseOutput> UpdateNoneDicomStudy(NoneDicomEdit noneDicomEdit)
{
if (_subjectVisitRepository.Any(t => t.Id == noneDicomEdit.Id && (t.PreliminaryAuditUserId == _userInfo.UserRoleId || t.ReviewAuditUserId == _userInfo.UserRoleId)))
{
await _noneDicomStudyRepository.UpdateFromDTOAsync(noneDicomEdit);
await _noneDicomStudyRepository.SaveChangesAsync();
}
return ResponseOutput.Ok();
}
[UnitOfWork]
[TrialGlobalLimit("AfterStopCannNotOpt")]
public async Task<IResponseOutput<NoneDicomStudyAddReturnDto>> AddOrUpdateNoneDicomStudy(NoneDicomStudyAddOrEdit addOrEditNoneDicomStudy)
@@ -137,7 +150,7 @@ namespace IRaCIS.Core.Application.Contracts
await _qCCommon.VerifyIsCRCSubmmitAsync(_subjectVisitRepository, _userInfo, subjectVisitId);
await _noneDicomStudyRepository.DeleteFromQueryAsync(noneDicomStudyId,ignoreQueryFilter:true);
await _noneDicomStudyRepository.DeleteFromQueryAsync(noneDicomStudyId, ignoreQueryFilter: true);
await _noneDicomStudyFileRepository.DeleteFromQueryAsync(t => t.NoneDicomStudyId == noneDicomStudyId, ignoreQueryFilter: true);
@@ -159,11 +172,11 @@ namespace IRaCIS.Core.Application.Contracts
var noneDicomStudyFile = await _noneDicomStudyFileRepository.FirstOrDefaultAsync(t => t.Id == noneDicomStudyFileId, true);
var success = await _noneDicomStudyFileRepository.DeleteAsync(noneDicomStudyFile,true);
var success = await _noneDicomStudyFileRepository.DeleteAsync(noneDicomStudyFile, true);
//维护文件数量数字
var noneDicomStudy = await _noneDicomStudyRepository.FirstOrDefaultAsync(t => t.Id == noneDicomStudyFile.NoneDicomStudyId,true);
noneDicomStudy.FileCount = await _noneDicomStudyFileRepository.CountAsync(t => t.NoneDicomStudyId == noneDicomStudyFile.NoneDicomStudyId,true);
var noneDicomStudy = await _noneDicomStudyRepository.FirstOrDefaultAsync(t => t.Id == noneDicomStudyFile.NoneDicomStudyId, true);
noneDicomStudy.FileCount = await _noneDicomStudyFileRepository.CountAsync(t => t.NoneDicomStudyId == noneDicomStudyFile.NoneDicomStudyId, true);
await _noneDicomStudyRepository.SaveChangesAsync();
return ResponseOutput.Ok();
@@ -157,8 +157,8 @@ namespace IRaCIS.Core.Application.Service
CreateMap<SCPStudy, DicomStudyDTO>();
CreateMap<SCPSeries, DicomSeriesDTO>();
CreateMap<NoneDicomEdit, NoneDicomStudy>();
}
}