非Dicom标记绑定

Test_IRC_Net8
he 2025-10-21 10:25:49 +08:00
parent e5e2a0394b
commit 58321c4c82
11 changed files with 20785 additions and 2 deletions

View File

@ -13209,7 +13209,7 @@
<param name="inDto"></param> <param name="inDto"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:IRaCIS.Core.Application.Service.ReadingImageTaskService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudy},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskInstance},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudyFile},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingNoneDicomMark},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.UserLog},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableQuestionAnswer},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingOncologyTaskInfo},IRaCIS.Core.Application.Service.IVisitTaskHelpeService,IRaCIS.Core.Application.Service.IVisitTaskService,IRaCIS.Core.Application.Contracts.IReadingClinicalDataService,IRaCIS.Core.Application.Service.IReadingCalculateService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.UserFeedBack},Microsoft.Extensions.Options.IOptionsMonitor{IRaCIS.Core.Domain.Share.ServiceVerifyConfigOption},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingGlobalTaskInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingCriterionPage},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTaskRelation},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingJudgeInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadModule},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.DicomInstance},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.OrganInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.OrganTrialInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialDocument},IRaCIS.Core.Application.Service.ReadingCalculate.Interface.ILuganoCalculateService,IRaCIS.Core.Application.Service.ReadingCalculate.Interface.ILuganoWithoutPETCalculateService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTaskQuestionMark},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTrialCriterionDictionary},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableAnswerRowInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableQuestionSystem},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableQuestionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTaskQuestionAnswer},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionSystem},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudyFile},IRaCIS.Core.Application.Service.IGeneralCalculateService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskStudy},IRaCIS.Core.Application.Service.ImageAndDoc.IDownloadAndUploadService,IRaCIS.Core.Application.Interfaces.ITrialEmailNoticeConfigService,AutoMapper.IMapper,IRaCIS.Core.Domain.Share.IUserInfo,Microsoft.Extensions.Localization.IStringLocalizer,ZiggyCreatures.Caching.Fusion.IFusionCache)"> <member name="M:IRaCIS.Core.Application.Service.ReadingImageTaskService.#ctor(IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudy},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.VisitTask},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Trial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskInstance},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudyFile},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingNoneDicomMark},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingNoneDicomMarkBinding},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.UserLog},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableQuestionAnswer},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingOncologyTaskInfo},IRaCIS.Core.Application.Service.IVisitTaskHelpeService,IRaCIS.Core.Application.Service.IVisitTaskService,IRaCIS.Core.Application.Contracts.IReadingClinicalDataService,IRaCIS.Core.Application.Service.IReadingCalculateService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.SubjectVisit},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.Subject},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.UserFeedBack},Microsoft.Extensions.Options.IOptionsMonitor{IRaCIS.Core.Domain.Share.ServiceVerifyConfigOption},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingGlobalTaskInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingCriterionPage},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTaskRelation},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingJudgeInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadModule},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.DicomInstance},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.OrganInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.OrganTrialInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TrialDocument},IRaCIS.Core.Application.Service.ReadingCalculate.Interface.ILuganoCalculateService,IRaCIS.Core.Application.Service.ReadingCalculate.Interface.ILuganoWithoutPETCalculateService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTaskQuestionMark},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTrialCriterionDictionary},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableAnswerRowInfo},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableQuestionSystem},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTableQuestionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingTaskQuestionAnswer},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionCriterionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionSystem},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.NoneDicomStudyFile},IRaCIS.Core.Application.Service.IGeneralCalculateService,IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.ReadingQuestionTrial},IRaCIS.Core.Infra.EFCore.IRepository{IRaCIS.Core.Domain.Models.TaskStudy},IRaCIS.Core.Application.Service.ImageAndDoc.IDownloadAndUploadService,IRaCIS.Core.Application.Interfaces.ITrialEmailNoticeConfigService,AutoMapper.IMapper,IRaCIS.Core.Domain.Share.IUserInfo,Microsoft.Extensions.Localization.IStringLocalizer,ZiggyCreatures.Caching.Fusion.IFusionCache)">
<summary> <summary>
IR影像阅片 IR影像阅片
</summary> </summary>
@ -13650,6 +13650,27 @@
<param name="inDto"></param> <param name="inDto"></param>
<returns></returns> <returns></returns>
</member> </member>
<member name="M:IRaCIS.Core.Application.Service.ReadingImageTaskService.AddNoneDicomMarkAndBinding(IRaCIS.Core.Application.Service.Reading.Dto.AddNoneDicomMarkAndBinding)">
<summary>
添加非Dicom标记并绑定
</summary>
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingImageTaskService.DeleteBinding(IRaCIS.Core.Application.Service.Reading.Dto.DeleteBindingInDto)">
<summary>
删除绑定关系
</summary>
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingImageTaskService.GetNoneDicomMarkAndBinding(IRaCIS.Core.Application.Service.Reading.Dto.GetNoneDicomMarkAndBindingInDto)">
<summary>
获取非Dicom标记和绑定关系
</summary>
<param name="inDto"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingImageTaskService.AddNoneDicomMark(IRaCIS.Core.Application.Service.Reading.Dto.AddNoneDicomMarkInDto)"> <member name="M:IRaCIS.Core.Application.Service.ReadingImageTaskService.AddNoneDicomMark(IRaCIS.Core.Application.Service.Reading.Dto.AddNoneDicomMarkInDto)">
<summary> <summary>
添加非Dicom标记 添加非Dicom标记

View File

@ -2442,6 +2442,26 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public Guid VisitTaskId { get; set; } public Guid VisitTaskId { get; set; }
} }
public class GetNoneDicomMarkAndBindingInDto
{
public Guid VisitTaskId { get; set; }
}
public class GetNoneDicomMarkAndBindingOutDto
{
public List<AddNoneDicomMarkInDto> NoneDicomMarkList { get; set; }
public List<BindingData> BindingList { get; set; }
}
public class BindingData:BindingInfo
{
public Guid NoneDicomMarkId { get; set; }
public Guid? MarkId { get; set; }
public Guid VisitTaskId { get; set; }
}
public class AddNoneDicomMarkInDto public class AddNoneDicomMarkInDto
{ {
public Guid? Id { get; set; } public Guid? Id { get; set; }
@ -2449,6 +2469,8 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
public Guid VisitTaskId { get; set; } public Guid VisitTaskId { get; set; }
public Guid? StudyId { get; set; } public Guid? StudyId { get; set; }
public Guid? MarkId { get; set; }
public Guid? NoneDicomFileId { get; set; } public Guid? NoneDicomFileId { get; set; }
public string Path { get; set; } public string Path { get; set; }
@ -2457,6 +2479,28 @@ namespace IRaCIS.Core.Application.Service.Reading.Dto
} }
public class DeleteBindingInDto
{
public Guid BindingIdId { get; set; }
}
public class AddNoneDicomMarkAndBinding
{
public Guid VisitTaskId { get; set; }
public AddNoneDicomMarkInDto MarkInfo { get; set; }
public List<BindingInfo> BindingList { get; set; }
}
public class BindingInfo
{
public Guid? QuestionId { get; set; }
public Guid? RowId { get; set; }
public Guid? TableQuestionId { get; set; }
}
/// <summary> /// <summary>
/// ///
/// </summary> /// </summary>

View File

@ -38,6 +38,7 @@ namespace IRaCIS.Core.Application.Service
IRepository<TaskInstance> _taskInstanceRepository, IRepository<TaskInstance> _taskInstanceRepository,
IRepository<NoneDicomStudyFile> _noneDicomStudyFileRepository, IRepository<NoneDicomStudyFile> _noneDicomStudyFileRepository,
IRepository<ReadingNoneDicomMark> _readingNoneDicomMarkRepository, IRepository<ReadingNoneDicomMark> _readingNoneDicomMarkRepository,
IRepository<ReadingNoneDicomMarkBinding> _readingNoneDicomMarkBindingRepository,
IRepository<UserLog> _userLogRepository, IRepository<UserLog> _userLogRepository,
IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository, IRepository<ReadingTableQuestionAnswer> _readingTableQuestionAnswerRepository,
IRepository<ReadingOncologyTaskInfo> _readingOncologyTaskInfoRepository, IRepository<ReadingOncologyTaskInfo> _readingOncologyTaskInfoRepository,

View File

@ -32,6 +32,72 @@ namespace IRaCIS.Core.Application.Service
return ResponseOutput.Ok(true); return ResponseOutput.Ok(true);
} }
/// <summary>
/// 添加非Dicom标记并绑定
/// </summary>
/// <param name="inDto"></param>
/// <returns></returns>
[HttpPost]
public async Task<IResponseOutput> AddNoneDicomMarkAndBinding(AddNoneDicomMarkAndBinding inDto)
{
ReadingNoneDicomMark? mark = await _readingNoneDicomMarkRepository.Where(x => x.MarkId == inDto.MarkInfo.MarkId).FirstOrDefaultAsync();
if (mark == null)
{
mark = await _readingNoneDicomMarkRepository.InsertOrUpdateAsync(new AddNoneDicomMarkInDto()
{
MarkId = inDto.MarkInfo.MarkId,
MeasureData = inDto.MarkInfo.MeasureData,
NoneDicomFileId = inDto.MarkInfo.NoneDicomFileId,
Path = inDto.MarkInfo.Path,
StudyId = inDto.MarkInfo.StudyId,
VisitTaskId = inDto.VisitTaskId
}, true);
}
List<ReadingNoneDicomMarkBinding> markBindings = inDto.BindingList.Select(x => new ReadingNoneDicomMarkBinding()
{
MarkId = mark.MarkId,
VisitTaskId = inDto.VisitTaskId,
QuestionId = x.QuestionId,
RowId = x.RowId,
TableQuestionId = x.TableQuestionId,
NoneDicomMarkId = mark.Id
}).ToList();
await _readingNoneDicomMarkBindingRepository.AddRangeAsync(markBindings);
await _readingNoneDicomMarkBindingRepository.SaveChangesAsync();
return ResponseOutput.Ok(mark.Id);
}
/// <summary>
/// 删除绑定关系
/// </summary>
/// <param name="inDto"></param>
/// <returns></returns>
[HttpPost]
public async Task<IResponseOutput> DeleteBinding(DeleteBindingInDto inDto)
{
await _readingNoneDicomMarkBindingRepository.DeleteFromQueryAsync(x =>x.Id==inDto.BindingIdId, true);
return ResponseOutput.Ok();
}
/// <summary>
/// 获取非Dicom标记和绑定关系
/// </summary>
/// <param name="inDto"></param>
/// <returns></returns>
public async Task<GetNoneDicomMarkAndBindingOutDto> GetNoneDicomMarkAndBinding(GetNoneDicomMarkAndBindingInDto inDto)
{
GetNoneDicomMarkAndBindingOutDto result=new GetNoneDicomMarkAndBindingOutDto ();
result.NoneDicomMarkList = await _readingNoneDicomMarkRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId)
.ProjectTo<AddNoneDicomMarkInDto>(_mapper.ConfigurationProvider)
.ToListAsync();
result.BindingList = await _readingNoneDicomMarkBindingRepository.Where(x => x.VisitTaskId == inDto.VisitTaskId)
.ProjectTo<BindingData>(_mapper.ConfigurationProvider)
.ToListAsync();
return result;
}
/// <summary> /// <summary>
/// 添加非Dicom标记 /// 添加非Dicom标记

View File

@ -67,6 +67,7 @@ namespace IRaCIS.Core.Application.Service
CreateMap<TableMarkInfo, ReadingTaskQuestionMark>(); CreateMap<TableMarkInfo, ReadingTaskQuestionMark>();
CreateMap<AddNoneDicomMarkInDto, ReadingNoneDicomMark>(); CreateMap<AddNoneDicomMarkInDto, ReadingNoneDicomMark>();
CreateMap<ReadingNoneDicomMark, AddNoneDicomMarkInDto>(); CreateMap<ReadingNoneDicomMark, AddNoneDicomMarkInDto>();
CreateMap<AddNoneDicomMarkAndBinding, BindingData>();
CreateMap<ReadingTaskQuestionMark, TableMarkInfo>(); CreateMap<ReadingTaskQuestionMark, TableMarkInfo>();
CreateMap<VisitTask, VisitTaskDto>(); CreateMap<VisitTask, VisitTaskDto>();
CreateMap<SaveTableQuestionMarkInDto, ReadingTaskQuestionMark>(); CreateMap<SaveTableQuestionMarkInDto, ReadingTaskQuestionMark>();

View File

@ -20,5 +20,8 @@ public class ReadingNoneDicomMark : BaseAddAuditEntity
[MaxLength] [MaxLength]
public string MeasureData { get; set; } = string.Empty; public string MeasureData { get; set; } = string.Empty;
/// <summary>
/// 标记的唯一标识符
/// </summary>
public Guid? MarkId { get; set; }
} }

View File

@ -0,0 +1,24 @@
namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片 - 非Dicom标记绑定")]
[Table("ReadingNoneDicomMarkBinding")]
public class ReadingNoneDicomMarkBinding : BaseAddAuditEntity
{
[JsonIgnore]
[ForeignKey("NoneDicomMarkId")]
public NoneDicomStudy NoneDicomStudy { get; set; }
public Guid VisitTaskId { get; set; }
public Guid? QuestionId { get; set; }
public Guid? RowId { get; set; }
public Guid? TableQuestionId { get; set; }
public Guid NoneDicomMarkId { get; set; }
public Guid? MarkId { get; set; }
}

View File

@ -363,6 +363,8 @@ public class IRaCISDBContext : DbContext
public virtual DbSet<ReadingNoneDicomMark> ReadingNoneDicomMark { get; set; } public virtual DbSet<ReadingNoneDicomMark> ReadingNoneDicomMark { get; set; }
public virtual DbSet<ReadingNoneDicomMarkBinding> ReadingNoneDicomMarkBinding { get; set; }
public virtual DbSet<ReadModule> ReadModule { get; set; } public virtual DbSet<ReadModule> ReadModule { get; set; }

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,74 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace IRaCIS.Core.Infra.EFCore.Migrations
{
/// <inheritdoc />
public partial class Binding : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<Guid>(
name: "MarkId",
table: "ReadingNoneDicomMark",
type: "uniqueidentifier",
nullable: true);
migrationBuilder.CreateTable(
name: "ReadingNoneDicomMarkBinding",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
VisitTaskId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
QuestionId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
RowId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
TableQuestionId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
NoneDicomMarkId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
MarkId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
CreateUserId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
CreateTime = table.Column<DateTime>(type: "datetime2", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_ReadingNoneDicomMarkBinding", x => x.Id);
table.ForeignKey(
name: "FK_ReadingNoneDicomMarkBinding_NoneDicomStudy_NoneDicomMarkId",
column: x => x.NoneDicomMarkId,
principalTable: "NoneDicomStudy",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ReadingNoneDicomMarkBinding_User_CreateUserId",
column: x => x.CreateUserId,
principalTable: "User",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
},
comment: "项目阅片 - 非Dicom标记绑定");
migrationBuilder.CreateIndex(
name: "IX_ReadingNoneDicomMarkBinding_CreateUserId",
table: "ReadingNoneDicomMarkBinding",
column: "CreateUserId");
migrationBuilder.CreateIndex(
name: "IX_ReadingNoneDicomMarkBinding_NoneDicomMarkId",
table: "ReadingNoneDicomMarkBinding",
column: "NoneDicomMarkId");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "ReadingNoneDicomMarkBinding");
migrationBuilder.DropColumn(
name: "MarkId",
table: "ReadingNoneDicomMark");
}
}
}

View File

@ -5606,6 +5606,9 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
b.Property<Guid>("CreateUserId") b.Property<Guid>("CreateUserId")
.HasColumnType("uniqueidentifier"); .HasColumnType("uniqueidentifier");
b.Property<Guid?>("MarkId")
.HasColumnType("uniqueidentifier");
b.Property<string>("MeasureData") b.Property<string>("MeasureData")
.IsRequired() .IsRequired()
.HasColumnType("nvarchar(max)"); .HasColumnType("nvarchar(max)");
@ -5638,6 +5641,47 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
}); });
}); });
modelBuilder.Entity("IRaCIS.Core.Domain.Models.ReadingNoneDicomMarkBinding", b =>
{
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("CreateTime")
.HasColumnType("datetime2");
b.Property<Guid>("CreateUserId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("MarkId")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("NoneDicomMarkId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("QuestionId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("RowId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("TableQuestionId")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("VisitTaskId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("CreateUserId");
b.HasIndex("NoneDicomMarkId");
b.ToTable("ReadingNoneDicomMarkBinding", t =>
{
t.HasComment("项目阅片 - 非Dicom标记绑定");
});
});
modelBuilder.Entity("IRaCIS.Core.Domain.Models.ReadingOncologyTaskInfo", b => modelBuilder.Entity("IRaCIS.Core.Domain.Models.ReadingOncologyTaskInfo", b =>
{ {
b.Property<Guid>("Id") b.Property<Guid>("Id")
@ -16975,6 +17019,25 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
b.Navigation("NoneDicomStudy"); b.Navigation("NoneDicomStudy");
}); });
modelBuilder.Entity("IRaCIS.Core.Domain.Models.ReadingNoneDicomMarkBinding", b =>
{
b.HasOne("IRaCIS.Core.Domain.Models.UserRole", "CreateUserRole")
.WithMany()
.HasForeignKey("CreateUserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("IRaCIS.Core.Domain.Models.NoneDicomStudy", "NoneDicomStudy")
.WithMany()
.HasForeignKey("NoneDicomMarkId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("CreateUserRole");
b.Navigation("NoneDicomStudy");
});
modelBuilder.Entity("IRaCIS.Core.Domain.Models.ReadingOncologyTaskInfo", b => modelBuilder.Entity("IRaCIS.Core.Domain.Models.ReadingOncologyTaskInfo", b =>
{ {
b.HasOne("IRaCIS.Core.Domain.Models.UserRole", "CreateUserRole") b.HasOne("IRaCIS.Core.Domain.Models.UserRole", "CreateUserRole")