问题修改
continuous-integration/drone/push Build is passing Details

IRC_NewDev
he 2024-11-25 16:11:06 +08:00
parent 8ebaface32
commit 27314a139d
6 changed files with 18354 additions and 1 deletions

View File

@ -124,9 +124,15 @@ namespace IRaCIS.Core.Application.Service
}
else
{
// 先添加
await GetTrialDoctorInfo(new GetTrialDoctorInfoInDto()
{
DoctorId = inDto.DoctorId,
TrialId = inDto.TrialId.Value,
});
// 当前项目没有则复制
if (!(await _trialExperienceRepository.AnyAsync(x => x.TrialId == inDto.TrialId&&x.DoctorId==inDto.DoctorId &&x.ExperienceDataType== ExperienceDataType.Trial))
&&!(await _doctorRepository.AnyAsync(x => x.TrialId == inDto.TrialId && x.DoctorId == inDto.DoctorId))
&&!(await _doctorRepository.AnyAsync(x => x.TrialId == inDto.TrialId && x.IsAddTrialExperienceToTrial==false && x.DoctorId == inDto.DoctorId))
)
{
var trialExperienceList = await _trialExperienceRepository.Where(o => o.DoctorId == inDto.DoctorId)
@ -151,6 +157,11 @@ namespace IRaCIS.Core.Application.Service
}
await _trialExperienceCriteriaRepository.AddRangeAsync(criteriaList);
await _trialExperienceRepository.AddRangeAsync(trialExperienceList);
await _doctorRepository.BatchUpdateNoTrackingAsync(x => x.DoctorId == inDto.DoctorId && x.TrialId == inDto.TrialId, x => new Doctor()
{
IsAddTrialExperienceToTrial=true
});
await _trialExperienceRepository.SaveChangesAsync();
}

View File

@ -825,6 +825,14 @@ namespace IRaCIS.Core.Application.Service
var baseId = await _subjectVisitRepository.Where(x => x.SubjectId == subjectVisit.SubjectId && x.IsBaseLine).Select(x => x.Id).FirstOrDefaultAsync();
readingIdList.Add(baseId);
}
var readModuleInfo = await _readModuleRepository.Where(x => x.Id == inDto.ReadingId.Value).FirstOrDefaultAsync();
if (readModuleInfo != null && readModuleInfo.ReadingSetType == ReadingSetType.ImageReading)
{
var baseId = await _subjectVisitRepository.Where(x => x.SubjectId == readModuleInfo.SubjectId && x.IsBaseLine).Select(x => x.Id).FirstOrDefaultAsync();
readingIdList.Add(baseId);
}
}
// 一致性分析

View File

@ -245,4 +245,9 @@ public class Doctor : BaseFullAuditEntity
/// ÏîÄ¿Id
/// </summary>
public Guid? TrialId { get; set; }
/// <summary>
/// 是否添加临床试验到项目
/// </summary>
public bool IsAddTrialExperienceToTrial { get; set; } = false;
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,92 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace IRaCIS.Core.Infra.EFCore.Migrations
{
/// <inheritdoc />
public partial class trialExperience : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<bool>(
name: "IsAddTrialExperienceToTrial",
table: "Doctor",
type: "bit",
nullable: false,
defaultValue: false);
migrationBuilder.CreateIndex(
name: "IX_PreviousSurgery_ClinicalDataTrialSetId",
table: "PreviousSurgery",
column: "ClinicalDataTrialSetId");
migrationBuilder.CreateIndex(
name: "IX_PreviousOther_ClinicalDataTrialSetId",
table: "PreviousOther",
column: "ClinicalDataTrialSetId");
migrationBuilder.CreateIndex(
name: "IX_PreviousHistory_ClinicalDataTrialSetId",
table: "PreviousHistory",
column: "ClinicalDataTrialSetId");
migrationBuilder.AddForeignKey(
name: "FK_PreviousHistory_ClinicalDataTrialSet_ClinicalDataTrialSetId",
table: "PreviousHistory",
column: "ClinicalDataTrialSetId",
principalTable: "ClinicalDataTrialSet",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
migrationBuilder.AddForeignKey(
name: "FK_PreviousOther_ClinicalDataTrialSet_ClinicalDataTrialSetId",
table: "PreviousOther",
column: "ClinicalDataTrialSetId",
principalTable: "ClinicalDataTrialSet",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
migrationBuilder.AddForeignKey(
name: "FK_PreviousSurgery_ClinicalDataTrialSet_ClinicalDataTrialSetId",
table: "PreviousSurgery",
column: "ClinicalDataTrialSetId",
principalTable: "ClinicalDataTrialSet",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_PreviousHistory_ClinicalDataTrialSet_ClinicalDataTrialSetId",
table: "PreviousHistory");
migrationBuilder.DropForeignKey(
name: "FK_PreviousOther_ClinicalDataTrialSet_ClinicalDataTrialSetId",
table: "PreviousOther");
migrationBuilder.DropForeignKey(
name: "FK_PreviousSurgery_ClinicalDataTrialSet_ClinicalDataTrialSetId",
table: "PreviousSurgery");
migrationBuilder.DropIndex(
name: "IX_PreviousSurgery_ClinicalDataTrialSetId",
table: "PreviousSurgery");
migrationBuilder.DropIndex(
name: "IX_PreviousOther_ClinicalDataTrialSetId",
table: "PreviousOther");
migrationBuilder.DropIndex(
name: "IX_PreviousHistory_ClinicalDataTrialSetId",
table: "PreviousHistory");
migrationBuilder.DropColumn(
name: "IsAddTrialExperienceToTrial",
table: "Doctor");
}
}
}

View File

@ -1430,6 +1430,9 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
.IsRequired()
.HasColumnType("nvarchar(max)");
b.Property<bool>("IsAddTrialExperienceToTrial")
.HasColumnType("bit");
b.Property<bool>("IsVirtual")
.HasColumnType("bit");
@ -3631,6 +3634,8 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
b.HasKey("Id");
b.HasIndex("ClinicalDataTrialSetId");
b.HasIndex("CreateUserId");
b.HasIndex("SubjectVisitId");
@ -3688,6 +3693,8 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
b.HasKey("Id");
b.HasIndex("ClinicalDataTrialSetId");
b.HasIndex("CreateUserId");
b.HasIndex("SubjectVisitId");
@ -3796,6 +3803,8 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
b.HasKey("Id");
b.HasIndex("ClinicalDataTrialSetId");
b.HasIndex("CreateUserId");
b.HasIndex("SubjectVisitId");
@ -14598,6 +14607,12 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
modelBuilder.Entity("IRaCIS.Core.Domain.Models.PreviousHistory", b =>
{
b.HasOne("IRaCIS.Core.Domain.Models.ClinicalDataTrialSet", "ClinicalDataTrialSet")
.WithMany()
.HasForeignKey("ClinicalDataTrialSetId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("IRaCIS.Core.Domain.Models.User", "CreateUser")
.WithMany()
.HasForeignKey("CreateUserId")
@ -14610,6 +14625,8 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("ClinicalDataTrialSet");
b.Navigation("CreateUser");
b.Navigation("SubjectVisit");
@ -14617,6 +14634,12 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
modelBuilder.Entity("IRaCIS.Core.Domain.Models.PreviousOther", b =>
{
b.HasOne("IRaCIS.Core.Domain.Models.ClinicalDataTrialSet", "ClinicalDataTrialSet")
.WithMany()
.HasForeignKey("ClinicalDataTrialSetId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("IRaCIS.Core.Domain.Models.User", "CreateUser")
.WithMany()
.HasForeignKey("CreateUserId")
@ -14629,6 +14652,8 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("ClinicalDataTrialSet");
b.Navigation("CreateUser");
b.Navigation("SubjectVisit");
@ -14655,6 +14680,12 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
modelBuilder.Entity("IRaCIS.Core.Domain.Models.PreviousSurgery", b =>
{
b.HasOne("IRaCIS.Core.Domain.Models.ClinicalDataTrialSet", "ClinicalDataTrialSet")
.WithMany()
.HasForeignKey("ClinicalDataTrialSetId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("IRaCIS.Core.Domain.Models.User", "CreateUser")
.WithMany()
.HasForeignKey("CreateUserId")
@ -14667,6 +14698,8 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("ClinicalDataTrialSet");
b.Navigation("CreateUser");
});