diff --git a/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs b/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs index 596faf077..aae51c18c 100644 --- a/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs +++ b/IRaCIS.Core.Application/Service/ImageAndDoc/DownloadAndUploadService.cs @@ -649,14 +649,35 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc [HttpPost] public async Task> GetIRUploadTaskNoneDicomStudyList(IRUploadStudyQuery inQuery) { + var subjectCode = string.Empty; + var subjectId = inQuery.SubjectId; + var doctorUserId = _userInfo.Id; + + if (inQuery.VisitTaskId != null) + { + //考虑到一致性分析,必须要这个编号进行过滤 + //医学审核查看下载按钮,这个时候需要知道医生 + + var taskInfo = await _visitTaskRepository.Where(t => t.Id == inQuery.VisitTaskId).Select(t => new { + SubjectCode = t.IsAnalysisCreate ? t.BlindSubjectCode : t.Subject.Code, + SubjectId = t.SubjectId, + t.DoctorUserId, + t.IsAnalysisCreate + }).FirstNotNullAsync(); + + subjectId = taskInfo.SubjectId; + subjectCode = taskInfo.SubjectCode; + doctorUserId = (Guid)taskInfo.DoctorUserId!; + } + var info = await _readingQuestionCriterionTrialRepository.Where(t => t.Id == inQuery.TrialReadingCriterionId) .Select(t => new { t.IsImageFilter, t.CriterionModalitys, t.IsReadingTaskViewInOrder }).FirstNotNullAsync(); - var query = from u in _visitTaskRepository.Where(t => t.SubjectId == inQuery.SubjectId && t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId - && t.SourceSubjectVisitId != null && t.DoctorUserId == _userInfo.Id && t.TaskState == TaskState.Effect) + var query = from u in _visitTaskRepository.Where(t => t.SubjectId == subjectId && t.TrialReadingCriterionId == inQuery.TrialReadingCriterionId + && t.SourceSubjectVisitId != null && t.DoctorUserId == doctorUserId && t.TaskState == TaskState.Effect) //满足 有序,或者随机只看到当前任务的dicom 非dicom检查 .WhereIf(info.IsReadingTaskViewInOrder != ReadingOrder.SubjectRandom && inQuery.VisitTaskId != null, t => t.Id == inQuery.VisitTaskId) - join ns in _noneDicomStudyReposiotry.Where(t => t.SubjectId == inQuery.SubjectId).WhereIf(info.IsImageFilter, t => ("|" + info.CriterionModalitys + "|").Contains("|" + t.Modality + "|")) + join ns in _noneDicomStudyReposiotry.Where(t => t.SubjectId == subjectId).WhereIf(info.IsImageFilter, t => ("|" + info.CriterionModalitys + "|").Contains("|" + t.Modality + "|")) on u.SourceSubjectVisitId equals ns.SubjectVisitId select new TaskNoneDicomStudyDTO() @@ -686,7 +707,7 @@ namespace IRaCIS.Core.Application.Service.ImageAndDoc }; - var list = await query.Where(t => t.SubjectCode == inQuery.SubjectCode).SortToListAsync(inQuery); + var list = await query.Where(t => t.SubjectCode == subjectCode).SortToListAsync(inQuery); var noneDicomStudyTaskIdList = list.Select(t => t.VisitTaskId).ToList(); diff --git a/IRaCIS.Core.Application/Service/QC/DTO/NoneDicomStudyFileViewModel.cs b/IRaCIS.Core.Application/Service/QC/DTO/NoneDicomStudyFileViewModel.cs index 8dff5482d..203c910d7 100644 --- a/IRaCIS.Core.Application/Service/QC/DTO/NoneDicomStudyFileViewModel.cs +++ b/IRaCIS.Core.Application/Service/QC/DTO/NoneDicomStudyFileViewModel.cs @@ -15,6 +15,8 @@ namespace IRaCIS.Core.Application.Contracts public Guid CreateUserId { get; set; } public Guid NoneDicomStudyId { get; set; } + public long? FileSize { get; set; } + public string FullFilePath => Path; public string FileType { get; set; } diff --git a/IRaCIS.Core.Domain/Image/TaskStudy.cs b/IRaCIS.Core.Domain/Image/TaskStudy.cs index cf2c91c4e..c08f94a49 100644 --- a/IRaCIS.Core.Domain/Image/TaskStudy.cs +++ b/IRaCIS.Core.Domain/Image/TaskStudy.cs @@ -9,8 +9,6 @@ public class TaskStudy : BaseFullDeleteAuditEntity, IEntitySeqId [ForeignKey("VisitTaskId")] public VisitTask VisitTask { get; set; } - [JsonIgnore] - public List DicomStudyMonitorList { get; set; } = new List(); [JsonIgnore] public List InstanceList { get; set; } diff --git a/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContextFactory.cs b/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContextFactory.cs index 904df6596..2b93c9d5f 100644 --- a/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContextFactory.cs +++ b/IRaCIS.Core.Infra.EFCore/Context/IRaCISDBContextFactory.cs @@ -13,7 +13,7 @@ public class IRaCISDBContextFactory : IDesignTimeDbContextFactory(); - optionsBuilder.UseSqlServer("Server=106.14.89.110,1434;Database=Test_IRC_KEY;User ID=sa;Password=xc@123456;TrustServerCertificate=true", contextOptionsBuilder => contextOptionsBuilder.EnableRetryOnFailure()); + optionsBuilder.UseSqlServer("Server=106.14.89.110,1433;Database=Test_IRC_KEY;User ID=sa;Password=xc@123456;TrustServerCertificate=true", contextOptionsBuilder => contextOptionsBuilder.EnableRetryOnFailure()); //迁移的时候,不生成外键 optionsBuilder.ReplaceService(); return new IRaCISDBContext(optionsBuilder.Options); diff --git a/IRaCIS.Core.Infra.EFCore/EntityConfigration/ImageConfigration.cs b/IRaCIS.Core.Infra.EFCore/EntityConfigration/ImageConfigration.cs index 11082e54e..22cdb7da9 100644 --- a/IRaCIS.Core.Infra.EFCore/EntityConfigration/ImageConfigration.cs +++ b/IRaCIS.Core.Infra.EFCore/EntityConfigration/ImageConfigration.cs @@ -1,81 +1,97 @@ -//using IRaCIS.Core.Domain.Models; -//using Microsoft.EntityFrameworkCore.Metadata.Builders; +using IRaCIS.Core.Domain.Models; +using Microsoft.EntityFrameworkCore.Metadata.Builders; -//namespace IRaCIS.Core.Infra.EFCore.EntityConfigration; +namespace IRaCIS.Core.Infra.EFCore.EntityConfigration; -///// -///// 医学影像 数据量大,主键是 SeqId ,Id 是自己算的,也可以作为Id,但是不是有序的,数据量大,会导致性能很差,所以是逻辑主键 -///// +/// +/// 医学影像 数据量大,主键是 SeqId ,Id 是自己算的,也可以作为Id,但是不是有序的,数据量大,会导致性能很差,所以是逻辑主键 +/// -//public class DicomStudyConfigration : IEntityTypeConfiguration -//{ -// public void Configure(EntityTypeBuilder builder) -// { -// builder.HasKey(e => e.SeqId); -// } -//} +public class DicomStudyConfigration : IEntityTypeConfiguration +{ + public void Configure(EntityTypeBuilder builder) + { + builder.HasKey(e => e.SeqId); -//public class DicomSeriesConfigration : IEntityTypeConfiguration -//{ -// public void Configure(EntityTypeBuilder builder) -// { -// builder.HasKey(e => e.SeqId); -// } -//} + builder.HasMany(s => s.SeriesList).WithOne(se => se.DicomStudy).HasForeignKey(se => se.StudyId).HasPrincipalKey(st=>st.Id); -//public class DicomInstanceConfigration : IEntityTypeConfiguration -//{ -// public void Configure(EntityTypeBuilder builder) -// { -// builder.HasKey(e => e.SeqId); -// } -//} + builder.HasMany(s => s.DicomStudyMonitorList).WithOne(sm => sm.DicomStudy).HasForeignKey(sm => sm.StudyId).HasPrincipalKey(se => se.Id); + } +} -//public class TaskStudyConfigration : IEntityTypeConfiguration -//{ -// public void Configure(EntityTypeBuilder builder) -// { -// builder.HasKey(e => e.SeqId); -// } -//} +public class DicomSeriesConfigration : IEntityTypeConfiguration +{ + public void Configure(EntityTypeBuilder builder) + { + builder.HasKey(e => e.SeqId); -//public class TaskSeriesConfigration : IEntityTypeConfiguration -//{ -// public void Configure(EntityTypeBuilder builder) -// { -// builder.HasKey(e => e.SeqId); -// } -//} + builder.HasMany(s => s.DicomInstanceList).WithOne(di => di.DicomSerie).HasForeignKey(t => t.SeriesId).HasPrincipalKey(se => se.Id); -//public class TaskInstanceConfigration : IEntityTypeConfiguration -//{ -// public void Configure(EntityTypeBuilder builder) -// { -// builder.HasKey(e => e.SeqId); -// } -//} + } +} + +public class DicomInstanceConfigration : IEntityTypeConfiguration +{ + public void Configure(EntityTypeBuilder builder) + { + builder.HasKey(e => e.SeqId); + } +} + +public class TaskStudyConfigration : IEntityTypeConfiguration +{ + public void Configure(EntityTypeBuilder builder) + { + builder.HasKey(e => e.SeqId); + + builder.HasMany(s => s.SeriesList).WithOne(se => se.TaskStudy).HasForeignKey(se => se.StudyId).HasPrincipalKey(st => st.Id); + + } +} + +public class TaskSeriesConfigration : IEntityTypeConfiguration +{ + public void Configure(EntityTypeBuilder builder) + { + builder.HasKey(e => e.SeqId); + + builder.HasMany(s => s.InstanceList).WithOne(di => di.TaskSeries).HasForeignKey(t => t.SeriesId).HasPrincipalKey(se => se.Id); + } +} + +public class TaskInstanceConfigration : IEntityTypeConfiguration +{ + public void Configure(EntityTypeBuilder builder) + { + builder.HasKey(e => e.SeqId); + } +} -//public class SCPStudyConfigration : IEntityTypeConfiguration -//{ -// public void Configure(EntityTypeBuilder builder) -// { -// builder.HasKey(e => e.SeqId); -// } -//} +public class SCPStudyConfigration : IEntityTypeConfiguration +{ + public void Configure(EntityTypeBuilder builder) + { + builder.HasKey(e => e.SeqId); -//public class SCPSeriesConfigration : IEntityTypeConfiguration -//{ -// public void Configure(EntityTypeBuilder builder) -// { -// builder.HasKey(e => e.SeqId); -// } -//} + builder.HasMany(s => s.SeriesList).WithOne(se => se.SCPStudy).HasForeignKey(se => se.StudyId).HasPrincipalKey(st => st.Id); -//public class SCPInstanceConfigration : IEntityTypeConfiguration -//{ -// public void Configure(EntityTypeBuilder builder) -// { -// builder.HasKey(e => e.SeqId); -// } -//} + } +} + +public class SCPSeriesConfigration : IEntityTypeConfiguration +{ + public void Configure(EntityTypeBuilder builder) + { + builder.HasKey(e => e.SeqId); + builder.HasMany(s => s.SCPInstanceList).WithOne(di => di.SCPSeries).HasForeignKey(t => t.SeriesId).HasPrincipalKey(se => se.Id); + } +} + +public class SCPInstanceConfigration : IEntityTypeConfiguration +{ + public void Configure(EntityTypeBuilder builder) + { + builder.HasKey(e => e.SeqId); + } +} diff --git a/IRaCIS.Core.Infra.EFCore/Migrations/20240925064340_CodeFirst_Init.Designer.cs b/IRaCIS.Core.Infra.EFCore/Migrations/20240925064340_CodeFirst_Init.Designer.cs index d6cdd8457..472a9f77e 100644 --- a/IRaCIS.Core.Infra.EFCore/Migrations/20240925064340_CodeFirst_Init.Designer.cs +++ b/IRaCIS.Core.Infra.EFCore/Migrations/20240925064340_CodeFirst_Init.Designer.cs @@ -12,7 +12,7 @@ using Microsoft.EntityFrameworkCore.Storage.ValueConversion; namespace IRaCIS.Core.Infra.EFCore.Migrations { [DbContext(typeof(IRaCISDBContext))] - [Migration("20240926022902_CodeFirst_Init")] + [Migration("20240926034717_CodeFirst_Init")] partial class CodeFirst_Init { /// @@ -13688,6 +13688,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations b.HasOne("IRaCIS.Core.Domain.Models.DicomSeries", "DicomSerie") .WithMany("DicomInstanceList") .HasForeignKey("SeriesId") + .HasPrincipalKey("Id") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -13715,6 +13716,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations b.HasOne("IRaCIS.Core.Domain.Models.DicomStudy", "DicomStudy") .WithMany("SeriesList") .HasForeignKey("StudyId") + .HasPrincipalKey("Id") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -15266,6 +15268,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations b.HasOne("IRaCIS.Core.Domain.Models.SCPSeries", "SCPSeries") .WithMany("SCPInstanceList") .HasForeignKey("SeriesId") + .HasPrincipalKey("Id") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -15326,6 +15329,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations b.HasOne("IRaCIS.Core.Domain.Models.SCPStudy", "SCPStudy") .WithMany("SeriesList") .HasForeignKey("StudyId") + .HasPrincipalKey("Id") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -15422,20 +15426,21 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.HasOne("IRaCIS.Core.Domain.Models.DicomStudy", "DicomStudy") + .WithMany("DicomStudyMonitorList") + .HasForeignKey("StudyId") + .HasPrincipalKey("Id") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + b.HasOne("IRaCIS.Core.Domain.Models.NoneDicomStudy", "NoneDicomStudy") .WithMany() .HasForeignKey("StudyId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); - b.HasOne("IRaCIS.Core.Domain.Models.DicomStudy", "DicomStudy") - .WithMany("DicomStudyMonitorList") - .HasForeignKey("StudyId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - b.HasOne("IRaCIS.Core.Domain.Models.TaskStudy", "TaskStudy") - .WithMany("DicomStudyMonitorList") + .WithMany() .HasForeignKey("StudyId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -16062,6 +16067,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations b.HasOne("IRaCIS.Core.Domain.Models.TaskSeries", "TaskSeries") .WithMany("InstanceList") .HasForeignKey("SeriesId") + .HasPrincipalKey("Id") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -16147,6 +16153,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations b.HasOne("IRaCIS.Core.Domain.Models.TaskStudy", "TaskStudy") .WithMany("SeriesList") .HasForeignKey("StudyId") + .HasPrincipalKey("Id") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -17552,8 +17559,6 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations modelBuilder.Entity("IRaCIS.Core.Domain.Models.TaskStudy", b => { - b.Navigation("DicomStudyMonitorList"); - b.Navigation("InstanceList"); b.Navigation("SeriesList"); diff --git a/IRaCIS.Core.Infra.EFCore/Migrations/20240925064340_CodeFirst_Init.cs b/IRaCIS.Core.Infra.EFCore/Migrations/20240925064340_CodeFirst_Init.cs index 75b891504..d76c95a4b 100644 --- a/IRaCIS.Core.Infra.EFCore/Migrations/20240925064340_CodeFirst_Init.cs +++ b/IRaCIS.Core.Infra.EFCore/Migrations/20240925064340_CodeFirst_Init.cs @@ -537,6 +537,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations constraints: table => { table.PrimaryKey("PK_DicomSeries", x => x.SeqId); + table.UniqueConstraint("AK_DicomSeries_Id", x => x.Id); }, comment: "归档 - 序列表"); @@ -586,6 +587,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations constraints: table => { table.PrimaryKey("PK_DicomStudy", x => x.SeqId); + table.UniqueConstraint("AK_DicomStudy_Id", x => x.Id); }); migrationBuilder.CreateTable( @@ -5796,6 +5798,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations constraints: table => { table.PrimaryKey("PK_SCPSeries", x => x.SeqId); + table.UniqueConstraint("AK_SCPSeries_Id", x => x.Id); table.ForeignKey( name: "FK_SCPSeries_User_CreateUserId", column: x => x.CreateUserId, @@ -5849,6 +5852,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations constraints: table => { table.PrimaryKey("PK_SCPStudy", x => x.SeqId); + table.UniqueConstraint("AK_SCPStudy_Id", x => x.Id); table.ForeignKey( name: "FK_SCPStudy_SCPPatient_PatientId", column: x => x.PatientId, @@ -5908,7 +5912,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations name: "FK_StudyMonitor_DicomStudy_StudyId", column: x => x.StudyId, principalTable: "DicomStudy", - principalColumn: "SeqId", + principalColumn: "Id", onDelete: ReferentialAction.Cascade); table.ForeignKey( name: "FK_StudyMonitor_NoneDicomStudy_StudyId", @@ -6682,6 +6686,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations constraints: table => { table.PrimaryKey("PK_TaskStudy", x => x.SeqId); + table.UniqueConstraint("AK_TaskStudy_Id", x => x.Id); table.ForeignKey( name: "FK_TaskStudy_Subject_SubjectId", column: x => x.SubjectId, @@ -6868,11 +6873,12 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations constraints: table => { table.PrimaryKey("PK_TaskSeries", x => x.SeqId); + table.UniqueConstraint("AK_TaskSeries_Id", x => x.Id); table.ForeignKey( name: "FK_TaskSeries_TaskStudy_StudyId", column: x => x.StudyId, principalTable: "TaskStudy", - principalColumn: "SeqId", + principalColumn: "Id", onDelete: ReferentialAction.Cascade); table.ForeignKey( name: "FK_TaskSeries_User_CreateUserId", @@ -6926,7 +6932,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations name: "FK_TaskInstance_TaskSeries_SeriesId", column: x => x.SeriesId, principalTable: "TaskSeries", - principalColumn: "SeqId", + principalColumn: "Id", onDelete: ReferentialAction.Cascade); table.ForeignKey( name: "FK_TaskInstance_TaskStudy_StudyId", @@ -9293,7 +9299,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations table: "DicomInstance", column: "SeriesId", principalTable: "DicomSeries", - principalColumn: "SeqId", + principalColumn: "Id", onDelete: ReferentialAction.Cascade); migrationBuilder.AddForeignKey( @@ -9317,7 +9323,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations table: "DicomSeries", column: "StudyId", principalTable: "DicomStudy", - principalColumn: "SeqId", + principalColumn: "Id", onDelete: ReferentialAction.Cascade); migrationBuilder.AddForeignKey( @@ -9634,7 +9640,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations table: "SCPInstance", column: "SeriesId", principalTable: "SCPSeries", - principalColumn: "SeqId", + principalColumn: "Id", onDelete: ReferentialAction.Cascade); migrationBuilder.AddForeignKey( @@ -9657,7 +9663,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations table: "SCPSeries", column: "StudyId", principalTable: "SCPStudy", - principalColumn: "SeqId", + principalColumn: "Id", onDelete: ReferentialAction.Cascade); migrationBuilder.AddForeignKey( diff --git a/IRaCIS.Core.Infra.EFCore/Migrations/IRaCISDBContextModelSnapshot.cs b/IRaCIS.Core.Infra.EFCore/Migrations/IRaCISDBContextModelSnapshot.cs index 204befe2a..ec2b62984 100644 --- a/IRaCIS.Core.Infra.EFCore/Migrations/IRaCISDBContextModelSnapshot.cs +++ b/IRaCIS.Core.Infra.EFCore/Migrations/IRaCISDBContextModelSnapshot.cs @@ -13685,6 +13685,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations b.HasOne("IRaCIS.Core.Domain.Models.DicomSeries", "DicomSerie") .WithMany("DicomInstanceList") .HasForeignKey("SeriesId") + .HasPrincipalKey("Id") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -13712,6 +13713,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations b.HasOne("IRaCIS.Core.Domain.Models.DicomStudy", "DicomStudy") .WithMany("SeriesList") .HasForeignKey("StudyId") + .HasPrincipalKey("Id") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -15263,6 +15265,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations b.HasOne("IRaCIS.Core.Domain.Models.SCPSeries", "SCPSeries") .WithMany("SCPInstanceList") .HasForeignKey("SeriesId") + .HasPrincipalKey("Id") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -15323,6 +15326,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations b.HasOne("IRaCIS.Core.Domain.Models.SCPStudy", "SCPStudy") .WithMany("SeriesList") .HasForeignKey("StudyId") + .HasPrincipalKey("Id") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -15419,20 +15423,21 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations .OnDelete(DeleteBehavior.Cascade) .IsRequired(); + b.HasOne("IRaCIS.Core.Domain.Models.DicomStudy", "DicomStudy") + .WithMany("DicomStudyMonitorList") + .HasForeignKey("StudyId") + .HasPrincipalKey("Id") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + b.HasOne("IRaCIS.Core.Domain.Models.NoneDicomStudy", "NoneDicomStudy") .WithMany() .HasForeignKey("StudyId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); - b.HasOne("IRaCIS.Core.Domain.Models.DicomStudy", "DicomStudy") - .WithMany("DicomStudyMonitorList") - .HasForeignKey("StudyId") - .OnDelete(DeleteBehavior.Cascade) - .IsRequired(); - b.HasOne("IRaCIS.Core.Domain.Models.TaskStudy", "TaskStudy") - .WithMany("DicomStudyMonitorList") + .WithMany() .HasForeignKey("StudyId") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -16059,6 +16064,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations b.HasOne("IRaCIS.Core.Domain.Models.TaskSeries", "TaskSeries") .WithMany("InstanceList") .HasForeignKey("SeriesId") + .HasPrincipalKey("Id") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -16144,6 +16150,7 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations b.HasOne("IRaCIS.Core.Domain.Models.TaskStudy", "TaskStudy") .WithMany("SeriesList") .HasForeignKey("StudyId") + .HasPrincipalKey("Id") .OnDelete(DeleteBehavior.Cascade) .IsRequired(); @@ -17549,8 +17556,6 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations modelBuilder.Entity("IRaCIS.Core.Domain.Models.TaskStudy", b => { - b.Navigation("DicomStudyMonitorList"); - b.Navigation("InstanceList"); b.Navigation("SeriesList");