Merge branch 'Test_IRC_Net8' of https://gitea.frp.extimaging.com/XCKJ/irc-netcore-api into Test_IRC_Net8
continuous-integration/drone/push Build is passing Details

IRC_NewDev
he 2024-09-29 17:44:59 +08:00
commit c69c139e00
6 changed files with 647 additions and 631 deletions

View File

@ -113,6 +113,11 @@ builder.Services.AddAutoMapper(automapper =>
//EF ORM QueryWithNoLock
builder.Services.AddEFSetup(_configuration);
builder.Services.AddMediator(cfg =>
{
});
//转发头设置 获取真实IP
builder.Services.Configure<ForwardedHeadersOptions>(options =>

File diff suppressed because it is too large Load Diff

View File

@ -456,7 +456,9 @@ namespace IRaCIS.Core.Application.Services
if (taskInfo.TaskStudyCount > 0)
{
var taskStudyList = await _taskStudyRepository.Where(t => t.TrialId == indto.TrialId && t.VisitTaskId == indto.VisitTaskId).ProjectTo<VisitStudyDTO>(_mapper.ConfigurationProvider).ToListAsync();
var taskStudyList = await _taskStudyRepository.Where(t => t.TrialId == indto.TrialId && t.VisitTaskId == indto.VisitTaskId)
.WhereIf(taskInfo.IsImageFilter == true, t => ("|" + taskInfo.CriterionModalitys + "|").Contains("|" + t.ModalityForEdit + "|"))
.ProjectTo<VisitStudyDTO>(_mapper.ConfigurationProvider).ToListAsync();
foreach (var study in taskStudyList)
{
@ -484,7 +486,7 @@ namespace IRaCIS.Core.Application.Services
var isManualGenerate = await _trialReadingCriterionRepository.AnyAsync(t => t.Id == taskInfo.TrialReadingCriterionId && t.IsAutoCreate == false);
var dicomStudyList = await _dicomStudyRepository.Where(t => t.TrialId == indto.TrialId && t.SubjectVisitId == indto.SujectVisitId)
.WhereIf(taskInfo.IsImageFilter == true, t => taskInfo.CriterionModalitys.Contains(t.ModalityForEdit))
.WhereIf(taskInfo.IsImageFilter == true, t => ("|" + taskInfo.CriterionModalitys + "|").Contains("|" + t.ModalityForEdit + "|"))
.WhereIf(isManualGenerate, t => t.SubjectCriteriaEvaluationVisitStudyFilterList.Any(t => t.TrialReadingCriterionId == taskInfo.TrialReadingCriterionId && t.IsConfirmed && t.IsReading))
.Select(k => new VisitStudyDTO()
{

View File

@ -12,6 +12,9 @@ public class DicomInstance : BaseFullAuditEntity, IEntitySeqId
[JsonIgnore]
[ForeignKey("StudyId")]
public DicomStudy DicomStudy { get; set; }
[JsonIgnore]
public List<ReadingTableAnswerRowInfo> ReadingTableAnswerRowInfoList { get; set; }
#endregion
public bool Anonymize { get; set; }

View File

@ -15,6 +15,7 @@ public class SubjectCriteriaEvaluationVisitStudyFilter : BaseFullAuditEntity
[ForeignKey("SeriesId")]
[JsonIgnore]
public DicomSeries Series { get; set; }
[ForeignKey("StudyId")]
[JsonIgnore]
public DicomStudy Study { get; set; }

View File

@ -13,9 +13,11 @@ public class DicomStudyConfigration : IEntityTypeConfiguration<DicomStudy>
{
builder.HasKey(e => e.SeqId);
builder.HasMany(s => s.SeriesList).WithOne(se => se.DicomStudy).HasForeignKey(se => se.StudyId).HasPrincipalKey(st=>st.Id);
builder.HasMany(s => s.SeriesList).WithOne(se => se.DicomStudy).HasForeignKey(se => se.StudyId).HasPrincipalKey(st => st.Id);
builder.HasMany(s => s.DicomStudyMonitorList).WithOne(sm => sm.DicomStudy).HasForeignKey(sm => sm.StudyId).HasPrincipalKey(se => se.Id);
builder.HasMany(s => s.SubjectCriteriaEvaluationVisitStudyFilterList).WithOne(sm => sm.Study).HasForeignKey(sm => sm.StudyId).HasPrincipalKey(se => se.Id);
}
}
@ -27,6 +29,8 @@ public class DicomSeriesConfigration : IEntityTypeConfiguration<DicomSeries>
builder.HasMany(s => s.DicomInstanceList).WithOne(di => di.DicomSerie).HasForeignKey(t => t.SeriesId).HasPrincipalKey(se => se.Id);
builder.HasMany(s => s.SubjectCriteriaEvaluationVisitStudyFilterList).WithOne(di => di.Series).HasForeignKey(t => t.SeriesId).HasPrincipalKey(se => se.Id);
}
}
@ -35,6 +39,9 @@ public class DicomInstanceConfigration : IEntityTypeConfiguration<DicomInstance>
public void Configure(EntityTypeBuilder<DicomInstance> builder)
{
builder.HasKey(e => e.SeqId);
builder.HasMany(s => s.ReadingTableAnswerRowInfoList).WithOne(di => di.Instance).HasForeignKey(t => t.InstanceId).HasPrincipalKey(se => se.Id);
}
}
@ -95,3 +102,8 @@ public class SCPInstanceConfigration : IEntityTypeConfiguration<SCPInstance>
builder.HasKey(e => e.SeqId);
}
}