修改仓储
continuous-integration/drone/push Build is passing

This commit is contained in:
2024-08-23 11:19:24 +08:00
parent 45b14abe63
commit e81e270d69
51 changed files with 349 additions and 470 deletions
@@ -7,18 +7,14 @@ namespace IRaCIS.Core.Application.Triggers
/// <summary>
/// 处理 访视 1、提交状态 2、执行状态 3、最早最晚 拍片日期
/// </summary>
public class SubjectVisitTrigger : IAfterSaveTrigger<NoneDicomStudy>, IAfterSaveTrigger<DicomStudy>, IAfterSaveTrigger<NoneDicomStudyFile>
public class SubjectVisitTrigger(
IRepository<SubjectVisit> _subjectVisitRepository,
IClinicalAnswerService _iClinicalAnswerService,
IRepository<DicomSeries> _dicomSeriesRepository,
IRepository<NoneDicomStudy> _noneDicomStudyRepository,
IRepository _repository) : IAfterSaveTrigger<NoneDicomStudy>, IAfterSaveTrigger<DicomStudy>, IAfterSaveTrigger<NoneDicomStudyFile>
{
private readonly IRepository<SubjectVisit> _subjectVisitRepository;
private readonly IClinicalAnswerService _iClinicalAnswerService;
private readonly IRepository _repository;
public SubjectVisitTrigger(IRepository<SubjectVisit> subjectVisitRepository, IClinicalAnswerService iClinicalAnswerService,IRepository repository)
{
_subjectVisitRepository = subjectVisitRepository;
this._iClinicalAnswerService = iClinicalAnswerService;
_repository = repository;
}
//注意删除不能用扩展方法,必须用EF跟踪的实体 否则不能取到 SubjectVisitId
public async Task AfterSave(ITriggerContext<NoneDicomStudy> context, CancellationToken cancellationToken)
@@ -54,7 +50,7 @@ namespace IRaCIS.Core.Application.Triggers
var studyId = context.Entity.Id;
//处理Modality
var seriesModalityList = _repository.Where<DicomSeries>(t => t.StudyId == studyId).Select(u => u.Modality).Distinct();
var seriesModalityList = _dicomSeriesRepository.Where(t => t.StudyId == studyId).Select(u => u.Modality).Distinct();
string ModaliyStr = string.Join('、', seriesModalityList.ToList());
@@ -101,7 +97,7 @@ namespace IRaCIS.Core.Application.Triggers
public async Task AfterSave(ITriggerContext<NoneDicomStudyFile> context, CancellationToken cancellationToken)
{
var subjectVisitId =await _repository.Where<NoneDicomStudy>(x=>x.Id== context.Entity.NoneDicomStudyId).Select(x=>x.SubjectVisitId).FirstOrDefaultAsync();
var subjectVisitId =await _noneDicomStudyRepository.Where(x=>x.Id== context.Entity.NoneDicomStudyId).Select(x=>x.SubjectVisitId).FirstOrDefaultAsync();
if (context.ChangeType == ChangeType.Deleted || context.ChangeType == ChangeType.Added)
{