添加表和字段

Test_IRC_Net10
he 2026-08-11 17:20:10 +08:00
parent 9ee7dc78f5
commit bdef193304
9 changed files with 22917 additions and 3 deletions

View File

@ -3980,6 +3980,16 @@
<param name="visitTaskId"></param>
<returns></returns>
</member>
<member name="M:IRaCIS.Core.Application.Service.ReadingCalculate.GeneralCalculateService.IsSameCustomRowAnswer(IRaCIS.Core.Domain.Models.ReadingTableAnswerRowInfo,IRaCIS.Core.Domain.Models.ReadingTableAnswerRowInfo,System.Collections.Generic.List{IRaCIS.Core.Domain.Models.ReadingTableQuestionAnswer},System.Collections.Generic.List{IRaCIS.Core.Domain.Models.ReadingTableQuestionAnswer})">
<summary>
自定义病灶判断是否是同一个病灶 除了根据器官判断还需要根据复制前值的答案是否相等
</summary>
<param name="currentRow"></param>
<param name="historyRow"></param>
<param name="currentAnswerList"></param>
<param name="historyAnswerList"></param>
<returns></returns>
</member>
<member name="F:IRaCIS.Core.Application.Service.ReadingCalculate.ReadingCalculateService.CalculateServiceDic">
<summary>
标准和服务对应
@ -17687,17 +17697,17 @@
</member>
<member name="F:IRaCIS.Core.Application.ViewModel.AccessToDialogueEnum.Question">
<summary>
质疑
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
</summary>
</member>
<member name="F:IRaCIS.Core.Application.ViewModel.AccessToDialogueEnum.Consistency">
<summary>
一致性核查
һ<EFBFBD><EFBFBD><EFBFBD>Ժ˲<EFBFBD>
</summary>
</member>
<member name="T:IRaCIS.Core.Application.ViewModel.CopyFrontAuditConfigItemDto">
<summary>
复制
<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
</summary>
</member>
<member name="T:IRaCIS.Core.Application.ViewModel.SystemNoticeView">

View File

@ -3381,6 +3381,11 @@ namespace IRaCIS.Core.Domain.Share
/// </summary>
PercentageDifference = 5,
/// <summary>
/// 不适用
/// </summary>
NotApplicable = 6,
}

View File

@ -316,6 +316,11 @@ public class VisitTask : BaseFullAuditEntity
/// </summary>
public bool IsCopyLesionAnswer { get; set; } = false;
/// <summary>
/// 是否计算过裁判
/// </summary>
public bool IsCalculatedJudge { get; set; } = false;
#region 完全随机增加字段
[Comment("完全随机阅片号")]

View File

@ -196,6 +196,73 @@ public class ReadingQuestionCriterionTrial : BaseAddAuditEntity
/// 定圆工具默认半径
/// </summary>
public decimal CircleRadius { get; set; } = 10;
/// <summary>
/// 仲裁模式
/// </summary>
public JudgeMode JudgeModeEnum { get; set; } = JudgeMode.SelectOne;
/// <summary>
/// 裁判规则
/// </summary>
public JudgeRule JudgeRuleEnum { get; set; } = JudgeRule.Consistent;
/// <summary>
/// 裁判任务生成
/// </summary>
public JudgeGenerate JudgeGenerateEnum { get; set; } = JudgeGenerate.Instant;
}
/// <summary>
/// 裁判任务生成时间
/// </summary>
public enum JudgeGenerate
{
/// <summary>
/// 及时
/// </summary>
Instant = 0,
/// <summary>
/// 阶段性
/// </summary>
Phased = 1,
}
/// <summary>
/// 仲裁模式
/// </summary>
public enum JudgeMode
{
/// <summary>
/// 整体结果择一判定
/// </summary>
SelectOne = 0,
/// <summary>
/// 指标组合判定
/// </summary>
Combined = 1,
}
/// <summary>
/// 裁判规则
/// </summary>
public enum JudgeRule
{
/// <summary>
/// 跨访视一致规则
/// </summary>
Consistent = 0,
/// <summary>
/// 访视间差异规则
/// </summary>
Difference = 1,
}

View File

@ -0,0 +1,60 @@
using IRaCIS.Core.Domain.Share;
using System.Linq;
namespace IRaCIS.Core.Domain.Models;
[Comment("项目阅片访视裁判规则")]
[Table("ReadingQuestionVisitJudgeRule")]
public class ReadingQuestionVisitJudgeRule : BaseAddAuditEntity
{
#region 导航属性
[Comment("分页标准")]
[ForeignKey("ReadingQuestionId")]
[JsonIgnore]
public ReadingQuestionTrial ReadingQuestionTrial { get; set; }
#endregion
/// <summary>
/// 问题Id
/// </summary>
[Comment("问题Id")]
public Guid ReadingQuestionId { get; set; }
/// <summary>
/// 访视Num
/// </summary>
public decimal VisitNum { get; set; }
/// <summary>
/// 答案分组
/// </summary>
[MaxLength]
[Comment("答案分组")]
public List<string> AnswerGroup { get; set; } = new List<string>();
/// <summary>
/// 答案组合
/// </summary>
[Comment("答案组合")]
[MaxLength]
public List<string> AnswerCombination { get; set; } = new List<string>();
/// <summary>
/// 裁判类型
/// </summary>
[Comment("裁判类型")]
public JudgeTypeEnum JudgeType { get; set; } = JudgeTypeEnum.AnswerDisaffinity;
/// <summary>
/// 裁判百分比或绝对值的相差值
/// </summary>
[Comment("裁判百分比或绝对值的相差值")]
public decimal? JudgeDifferenceValue { get; set; } = 0;
/// <summary>
/// 裁判百分比或绝对值的相差值匹配规则
/// </summary>
[Comment("裁判百分比或绝对值的相差值匹配规则")]
public JudgeDifferenceType JudgeDifferenceType { get; set; }
}

View File

@ -421,6 +421,8 @@ public class IRaCISDBContext : DbContext
public virtual DbSet<ReadingQuestionTrial> ReadingQuestionTrial { get; set; }
public virtual DbSet<ReadingQuestionVisitJudgeRule> ReadingQuestionVisitJudgeRule { get; set; }
public virtual DbSet<ReadingClinicalDataPDF> ReadingClinicalDataPDF { get; set; }
public virtual DbSet<ReadingConsistentClinicalData> ReadingConsistentClinicalData { get; set; }

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,95 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace IRaCIS.Core.Infra.EFCore.Migrations
{
/// <inheritdoc />
public partial class JudgeRule : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<bool>(
name: "IsCalculatedJudge",
table: "VisitTask",
type: "bit",
nullable: false,
defaultValue: false);
migrationBuilder.AddColumn<int>(
name: "JudgeGenerateEnum",
table: "ReadingQuestionCriterionTrial",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.AddColumn<int>(
name: "JudgeModeEnum",
table: "ReadingQuestionCriterionTrial",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.AddColumn<int>(
name: "JudgeRuleEnum",
table: "ReadingQuestionCriterionTrial",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.CreateTable(
name: "ReadingQuestionVisitJudgeRule",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
ReadingQuestionId = table.Column<Guid>(type: "uniqueidentifier", nullable: false, comment: "问题Id"),
VisitNum = table.Column<decimal>(type: "decimal(18,2)", precision: 18, scale: 2, nullable: false),
AnswerGroup = table.Column<string>(type: "nvarchar(max)", nullable: false, comment: "答案分组"),
AnswerCombination = table.Column<string>(type: "nvarchar(max)", nullable: false, comment: "答案组合"),
JudgeType = table.Column<int>(type: "int", nullable: false, comment: "裁判类型"),
JudgeDifferenceValue = table.Column<decimal>(type: "decimal(18,2)", precision: 18, scale: 2, nullable: true, comment: "裁判百分比或绝对值的相差值"),
JudgeDifferenceType = table.Column<int>(type: "int", nullable: false, comment: "裁判百分比或绝对值的相差值匹配规则"),
CreateUserId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
CreateTime = table.Column<DateTime>(type: "datetime2", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_ReadingQuestionVisitJudgeRule", x => x.Id)
.Annotation("SqlServer:Clustered", false);
},
comment: "项目阅片访视裁判规则");
migrationBuilder.CreateIndex(
name: "IX_ReadingQuestionVisitJudgeRule_CreateTime",
table: "ReadingQuestionVisitJudgeRule",
column: "CreateTime")
.Annotation("SqlServer:Clustered", true);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "ReadingQuestionVisitJudgeRule");
migrationBuilder.DropColumn(
name: "IsCalculatedJudge",
table: "VisitTask");
migrationBuilder.DropColumn(
name: "JudgeGenerateEnum",
table: "ReadingQuestionCriterionTrial");
migrationBuilder.DropColumn(
name: "JudgeModeEnum",
table: "ReadingQuestionCriterionTrial");
migrationBuilder.DropColumn(
name: "JudgeRuleEnum",
table: "ReadingQuestionCriterionTrial");
}
}
}

View File

@ -6834,6 +6834,15 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
.HasColumnType("bit")
.HasComment("eCRF报告是否显示在图像页面");
b.Property<int>("JudgeGenerateEnum")
.HasColumnType("int");
b.Property<int>("JudgeModeEnum")
.HasColumnType("int");
b.Property<int>("JudgeRuleEnum")
.HasColumnType("int");
b.Property<DateTime?>("ReadingInfoSignTime")
.HasColumnType("datetime2")
.HasComment("阅片信息签名时间");
@ -7466,6 +7475,62 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
});
});
modelBuilder.Entity("IRaCIS.Core.Domain.Models.ReadingQuestionVisitJudgeRule", b =>
{
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.PrimitiveCollection<string>("AnswerCombination")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasComment("答案组合");
b.PrimitiveCollection<string>("AnswerGroup")
.IsRequired()
.HasColumnType("nvarchar(max)")
.HasComment("答案分组");
b.Property<DateTime>("CreateTime")
.HasColumnType("datetime2");
b.Property<Guid>("CreateUserId")
.HasColumnType("uniqueidentifier");
b.Property<int>("JudgeDifferenceType")
.HasColumnType("int")
.HasComment("裁判百分比或绝对值的相差值匹配规则");
b.Property<decimal?>("JudgeDifferenceValue")
.HasPrecision(18, 2)
.HasColumnType("decimal(18,2)")
.HasComment("裁判百分比或绝对值的相差值");
b.Property<int>("JudgeType")
.HasColumnType("int")
.HasComment("裁判类型");
b.Property<Guid>("ReadingQuestionId")
.HasColumnType("uniqueidentifier")
.HasComment("问题Id");
b.Property<decimal>("VisitNum")
.HasPrecision(18, 2)
.HasColumnType("decimal(18,2)");
b.HasKey("Id");
SqlServerKeyBuilderExtensions.IsClustered(b.HasKey("Id"), false);
b.HasIndex("CreateTime");
SqlServerIndexBuilderExtensions.IsClustered(b.HasIndex("CreateTime"));
b.ToTable("ReadingQuestionVisitJudgeRule", t =>
{
t.HasComment("项目阅片访视裁判规则");
});
});
modelBuilder.Entity("IRaCIS.Core.Domain.Models.ReadingSystemCriterionDictionary", b =>
{
b.Property<Guid>("Id")
@ -16682,6 +16747,9 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
.HasColumnType("bit")
.HasComment("阅片结果是否和原数据有差异");
b.Property<bool>("IsCalculatedJudge")
.HasColumnType("bit");
b.Property<bool>("IsCanEditUrgentState")
.HasColumnType("bit")
.HasComment("是否和编辑加急状态");
@ -19027,6 +19095,25 @@ namespace IRaCIS.Core.Infra.EFCore.Migrations
b.Navigation("RelevanceReadingQuestionTrial");
});
modelBuilder.Entity("IRaCIS.Core.Domain.Models.ReadingQuestionVisitJudgeRule", b =>
{
b.HasOne("IRaCIS.Core.Domain.Models.UserRole", "CreateUserRole")
.WithMany()
.HasForeignKey("CreateUserId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("IRaCIS.Core.Domain.Models.ReadingQuestionTrial", "ReadingQuestionTrial")
.WithMany()
.HasForeignKey("ReadingQuestionId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("CreateUserRole");
b.Navigation("ReadingQuestionTrial");
});
modelBuilder.Entity("IRaCIS.Core.Domain.Models.ReadingSystemCriterionDictionary", b =>
{
b.HasOne("IRaCIS.Core.Domain.Models.UserRole", "CreateUserRole")